PhpStorm Changelog

What's new in PhpStorm 2024.1 Build 241.14494.237

Apr 6, 2024
  • Full line code completion with local AI:
  • You can now utilize per-line autocompletion for PHP code, as well as JavaScript, TypeScript, and HTML, even when you don’t have access to the internet. With full line code completion, the local LLM processes and analyzes data directly on your device, resulting in ultra-fast offline code completion with minimal latency.
  • With this approach, not only will your generated code never contain non-existent variables or methods, it will also remain compliant with your data privacy policies, as it doesn’t require a connection to external servers. This feature is included in your paid PhpStorm subscription plan, so no additional license is necessary.
  • Did you know that you can use JetBrains AI Assistant to autocomplete entire blocks of code? In addition to expansive code completion capabilities, it provides AI chat, AI-generated documentation, error explanations directly in the console, and more.
  • Support for Symfony’s AssetMapper:
  • You can now quickly install missing modules and packages via importmap.php and utilize full autocompletion for their classes and methods.
  • New terminal (Beta):
  • The new terminal is now available for you to try. You can switch between the old and new terminal in Settings | Tools | Terminal | Enable New Terminal.
  • Currently, it only supports Bash, Zsh, and PowerShell, with other shells still under development.
  • Sticky lines in the editor:
  • This feature keeps key structural elements, like the beginnings of classes or methods, pinned to the top of the editor as you scroll. This way, scopes always remain in view, and you can promptly navigate through the code by clicking on a pinned line.
  • Pest improvements:
  • We’ve improved navigation between tests and methods in the Go to action menu, and through duplicate tests and custom expectations when using quick-fixes. Additionally, we’ve also fixed the navigation issues that used to occur when opening the test’s source code from the Run tool window.
  • Also new is the ability to generate Pest tests for PHP classes and methods and create new Pest tests from the Intention actions menu.
  • We’ve also added a new inspection to simplify calls to some Pest assert methods.
  • PHPUnit 11.0 support:
  • PhpStorm now supports running tests with PHPUnit 11. If the IDE detects deprecated attributes in the configuration file, it will now display corresponding notifications to users and provide a quick-fix, automatically migrating the configuration file to the new version.
  • Furthermore, a new inspection and quick-fix have been added for deprecated TestCase methods when creating return stub configuration objects.
  • Additionally, we’ve made changes to the Deprecated usage of data providers inspection so that it will now issue a warning when PHPUnit 11 is used, and we’ve also removed the –cache-result-file option when starting tests.
  • Improvements to dd, var_dump, and symfony/var-dumper:
  • You can now open class and file links directly in the editor and fold/unfold structures in the console output.
  • Checks for vulnerable PHP packages in composer.json:
  • PhpStorm now cross-checks your project’s PHP packages against the Checkmarx database and highlights vulnerable ones with an inspection in the composer.json file.
  • Rsync: support in WSL:
  • You can now utilize the WSL distribution path for the rsync tool, which will be employed during deployment.
  • Frontend updates:
  • Component usages for Vue, Svelte, and Astro:
  • PhpStorm now offers in-editor hints for component usages in Vue, Svelte, and Astro files. This will help you quickly locate all usages of a specific component anywhere in the project.
  • Language Services widget:
  • You’ll find the new Language Services widget on the status bar, providing insights into the active language services for the current file and project. You can restart services or navigate to their settings directly from this widget.
  • Other improvements:
  • Option to scale down the entire IDE:
  • You can now scale the IDE down to 90%, 80%, or 70%, giving you the flexibility to adjust the size of IDE elements both upward and downward.
  • Better support for the class-string type:
  • PhpStorm now offers a static method completion for entities with the class-string type.
  • In-editor code review:
  • PhpStorm 2024.1 introduces an enhanced code review experience for both GitHub and GitLab users with the implementation of a new review mode. Integrated within the editor, this feature facilitates direct interaction between authors and reviewers. Upon checking the pull/merge request branch, review mode activates automatically and pink markers appear in the gutter, indicating that code changes are available for review. Clicking on these markers reveals a popup displaying the original code so you can quickly identify what has been changed. Gutter icons help you swiftly initiate new discussions, as well as view and hide existing ones. They also provide easy access to comments, making it easy to review, reply, and react to them.
  • Local filtering in the data editor:
  • This release introduces the long-awaited local filtering feature in the data editor. You can now swiftly filter rows by column values without sending queries to the database. This local approach only impacts the current page, though you can adjust the page size or fetch all the data if you need to extend the scope. To disable all local filters, deselect the designated Enable Local Filter icon.

New in PhpStorm 2024.1 Build 241.8102.119 EAP (Jan 22, 2024)

  • New: Deployment: upload into a temporary file first if remote file exists [WI-20248]
  • Fix: External Formatter breaks indentation for PHPDoc blocks and method generation [WI-73767]
  • New: Support array shapes inference when iterating over array elements [WI-67555]
  • New: Suport for Laravel 9 Component Short Slot Tags [WI-66784]
  • New: Option to only apply External Formatter on Reformat Code, or a separate action to trigger it [WI-71860]
  • New: PHPUnit: add ability to "Rerun Failed Tests" for debug [WI-30464]
  • New: Add support for parsing of expanded unsealed array declaration [WI-73627]
  • Fix: object shape isn't inferred in advanced array declaration [WI-72917]
  • Fix: AI Assistant generates PhpUnit tests when only Pest configurations are available in the project [WI-75442]
  • New: Support PHP_IDE_CONFIG in web debugging [WI-74990]
  • Fix: Pest: Test name case inspection leaks into dataset [WI-75044]
  • New: Add an option to create Pest test from "Create new test" intention [WI-75106]
  • New: New inspection: Pest assertion can be simplified [WI-75230]
  • New: Support "go to failed data set" for tests with #[DataProvider(...)] attribute [WI-75241]
  • Fix: Pest version isn't displayed in Test Frameworks for local configuration [WI-75473]
  • Fix: Make Pest plugin dynamic [WI-75651]
  • Fix: Pest: Exception when invoke context menu on test directory [WI-75675]
  • Fix: IAE when open successful data set in PhpUnit result tool window [WI-75676]
  • New: $Prompt$ macro: add a label / text to give the user a hint what to enter in the prompt [IDEA-89869]
  • New: Create Global Copyright Profiles [IDEA-136468]
  • Fix: IDE shows "Corresponding file is not included in tsconfig.json" error for Astro files with installed typescript [WEB-59503]
  • New: Full IDE zoom below 100% [IDEA-316986]
  • Fix: Hard wrap with actual line breaks in the built-in terminal on Windows 10 [IDEA-228796]
  • Fix: GitHub plugin: Can no longer pull request files mark as read [IDEA-338906]
  • Fix: Cannot run the specified Pandoc executable [IDEA-290970]
  • Fix: Can't change visual guides since updating to 2023.3 [IDEA-339976]
  • Fix: SSH Agent Docker connection doesn't work after upgrading to 2023.3 [IDEA-339946]
  • Fix: Spellchecker works wrong for literals "Kyiv" and "Lviv" [IDEA-259080]
  • Fix: Not working search emoji after upgrade to version 2023.2 [IDEA-327171]
  • Fix: Vue+Vuetify: boolean attributes cause "attribute requires value" warning [WEB-61631]

New in PhpStorm 2023.3 Build 233.11799.232 (Dec 8, 2023)

  • AI Assistant is out of preview:
  • JetBrains AI Assistant is now generally available with a number of new and improved features to increase your productivity in JetBrains IDEs.
  • LLM-based code completion:
  • AI Assistant can now generate multi-line blocks of code for you. Simply start typing on a new line, and if an LLM suggestion is available, a grayed-out code snippet will appear. Press Tab to accept the suggestion.
  • Currently, such suggestions are available within class contexts or inside function definitions.
  • Test-code generation:
  • AI Assistant can also generate tests for class methods. With the caret placed on the class method you wish to cover with unit tests, just press Alt+Enter, select AI Assistant, and choose Generate Unit Tests.
  • In-editor code generation:
  • Previously, you could use AI chat to generate code snippets. Now there is an AI Assistant | Generate code… action that opens a prompt right inside the editor. You will be asked to enter a description of the code you wish to generate. Once you do, AI Assistant will provide suggestions, and you can accept part or all of them.
  • AI-based error explanations in the console:
  • Sometimes, when you execute a PHP script or run configuration, or run a Composer action, the job fails for some reason. AI Assistant can help you determine the root cause of the issue. Click the Explain with AI button in a stack trace or error message to get an AI-generated explanation.
  • Pest updates:
  • PhpStorm now supports the Pest test framework out of the box. We recently agreed with the original author of the Pest plugin to take over its development and bundle it in PhpStorm. You can read the details in our recent blog post.
  • Just like PHPUnit tests, Pest tests can now be run directly from PhpStorm. When you place your caret inside a test and trigger the run window, a run configuration will be created for that specific test. You can place the caret in the file but not inside any particular test to trigger all the tests in that file.
  • With this new Pest support, you can write assertions by calling functions or methods on $this. It also improves autocompletion in test functions, so you can see what assertions are available as you type.
  • In Pest, you can write custom expectations to reduce boilerplate checks in your tests. PhpStorm can help you find usages of custom expectations and help you rename them.
  • PHP 8.3 support:
  • PhpStorm 2023.3 comes with full support for PHP 8.3. Most of the changes in the IDE will be integrated organically into your PhpStorm workflow without you even noticing them, so we’ll only mention the new features you’ll need to know about in order to benefit from them.
  • #[Override] attribute:
  • PHP 8.3 introduces the new #[Override] attribute. It can be used to explicitly show your intent when overriding a method. The PHP engine is able to check whether a method marked with #[Override] actually overrides the parent method, throwing an exception if this is not the case. PhpStorm 2023.3 gives you a warning about such cases in advance.
  • PhpStorm also suggests adding the #[Override] attribute when applicable.
  • New json_validate() function:
  • PHP 8.3 adds the new json_validate() function to the standard library. Previously, the only way to validate whether a string was valid JSON was to decode it and detect whether any errors were thrown. PhpStorm can detect these patterns and suggest replacing them with a json_validate() function call. This can be beneficial if you only need to know whether the input is valid JSON, since it uses less memory compared to decoding the string.
  • Typed class constants:
  • In PHP 8.3, you can declare types for class constants. All type declarations can be used except for void, callable, and never.
  • For typed class constants, PhpStorm provides:
  • Suggestions to insert the appropriate types
  • Type hint completion
  • Compatibility checks with the default value’s type
  • Type redeclaration checks when overriding a constant in a child class
  • Deprecations:
  • PHP 8.3 introduces a few deprecations, and PhpStorm has you covered with corresponding inspections to spot them.
  • Symfony support:
  • PhpStorm 2023.3 brings various improvements for Symfony developers.
  • New Project wizard:
  • A new built-in project initializer for Symfony allows you to create new Symfony projects with the desired types and versions right from the Welcome screen.
  • Doctrine Query Language support in QueryBuilder:
  • You can now enjoy full IDE support for DQL inside QueryBuilder method calls. Features include highlighting, field completion, the ability to resolve to the target model class, and more.
  • Conversion of annotations to attributes for Symfony and Doctrine:
  • Following the introduction of attributes in PHP 8.0, Doctrine annotations are being deprecated and will soon be removed. In order to help you make the switch, PhpStorm 2023.3 includes functionality for converting Doctrine annotations to attributes.
  • PhpStorm also supports the conversion of Symfony annotations to their corresponding attributes, like #[Required], #[Route], and so on.
  • Other updates for PHP:
  • Option to exclude external library files from your project:
  • As an experimental new feature, we’ve also added the ability to exclude directories that come from indexed libraries. Excluding such files from your project will help you avoid multiple-definition problems and improve indexing performance.
  • Dedicated styling of generic types:
  • We continue to work on improving the experience of using generics. In PhpStorm 2023.3, it is now possible to set up color-coding for generics, making it easier to distinguish between generic types.
  • Ability to fold multiline PHP attributes:
  • With the adoption of attributes increasing, it can sometimes be hard to read code that is annotated with long multiline attributes from a given framework. In PhpStorm 2023.3, this should no longer be an issue, since you can now fold multiline attributes.
  • PHPUnit metadata conversion from PHPDoc to attributes:
  • PHPUnit 10 introduced support for attributes for adding metadata to test classes and test methods, as well as tested code units. We’ve implemented an inspection and a quick-fix that will help you migrate to this new style from the old PHPDoc annotations.
  • Version control systems:
  • The all-in-one diff viewer:
  • PhpStorm 2023.3 introduces a revamped way to review changes. Now, instead of going through each file one by one, you can see all of the modified files from a changeset in a single, scrollable frame. This new diff viewer is accessible from the Git Log tool window and currently works with JetBrains Space reviews. We’re working on making it compatible with GitLab and GitHub.
  • Debugger:
  • PhpStorm 2023.3’s new Run to Cursor inlay option allows you to quickly execute up to a specific line of code while debugging. Once your program is suspended, you can hover over the line of code you want to execute up to and use the Run to Cursor popup. The same can be achieved by invoking the keyboard shortcut ⌥F9 after placing the caret on the desired line.
  • User interface:
  • Option to hide the main toolbar in the default viewing mode:
  • In response to your feedback about the new UI, we’ve made it possible to hide the main toolbar when using the IDE’s default viewing mode, just like in the old UI. To remove the toolbar, select View | Appearance and uncheck the Toolbar option.
  • Option to revert to the default tool window layout:
  • With the release of PhpStorm 2023.1, we introduced the ability to save multiple tool window layouts and switch between them, enhancing the customizability of your workspace. In PhpStorm 2023.3, we’re expanding this functionality by introducing the Default layout option, which provides a quick way to revert your workspace’s appearance to its default state. This layout is not customizable and can be accessed via Window | Layouts.
  • Color-coded editor tabs by default:
  • To make it easier to work with a variety of file types in the editor at the same time, we’ve introduced color-coding for editor tabs by default, mirroring their appearance in the Project tool window.
  • TypeScript improvements:
  • Packed with WebStorm features, PhpStorm now addresses some of the frustrating inconsistencies that occur when adding import type statements, and it makes working with verbatimModuleSyntax easier. We’ve added the option to configure the kind of TypeScript import type statement. We’ve also improved the behavior for the exports field of package.json for TypeScript files.
  • HTML to JSX single tag closing:
  • Now, when you paste HTML code into a JSX file, not only will PhpStorm convert attributes, but it will also automatically close single tags for you. You can configure this option under Settings | Editor | General | Smart Keys | JavaScript.
  • CSS custom @property support:
  • To support the new @property API for creating custom CSS properties, PhpStorm 2023.3 now offers inspections and completion features for explicitly defining CSS custom properties, allowing you to check and restrict property types, establish default values, and determine inheritance possibilities for custom properties.
  • Improvements for Vue 3:
  • We’ve added support for defineSlots, providing completion and navigation for the slot name, as well as the Rename refactoring. We’ve also introduced completion support for properties with defineExpose. In PhpStorm 2023.3, required imports for components will be added based on the name specified by the defineOptions function.

New in PhpStorm 2023.3 Build 233.11799.55 Beta 2 (Nov 25, 2023)

  • Fix: PHPUnit tests in Docker running in WSL without Docker Desktop don’t work with namespaced –filter because of non-escaped slashes [WI-73742]
  • Fix: Files don’t get saved automatically when running PHP tests [WI-74757]
  • Fix: Disable ‘Listening for PHP debug connections’ from the multiple projects’ Incoming Connection dialog [WI-74698]
  • Fix: Symfony live templates are suggested as function names and inside PHPDocs [WI-74637]
  • Fix: Coding standards/Ruleset are not loaded for PHPCS and PHP_CS_Fixer [WI-74753]
  • Fix: java.lang.AssertionError is thrown after click on the “Disable Debug Listening” button if you didn’t choose a project [WI-74857]
  • Fix: Indents settings do not work for typescript/js files [IDEA-327617]
  • Fix: Infinity spinner is shown instead of the toolbar in the Diff called from the Push window [IDEA-337550]

New in PhpStorm 2023.2.4 Build 232.10227.13 (Nov 21, 2023)

  • As of today, PhpStorm provides full support for all of the improvements in PHP 8.3.
  • [Override] attribute:
  • With PHP 8.3, you can explicitly signal method overrides with the new #[Override] attribute.
  • New json_validate() function:
  • PHP 8.3 introduces the json_validate() function for efficient JSON validation.
  • Typed class constants:
  • With PHP 8.3, you can declare types for class constants. PhpStorm supports this feature with intelligent suggestions, type hint completion, and checks for compatibility and redeclaration.
  • Deprecations:
  • Stay ahead of PHP 8.3 deprecations with PhpStorm’s inspections, ensuring your codebase remains up to date.

New in PhpStorm 2023.3 Build 233.11799.21 Beta (Nov 14, 2023)

  • New: Add ability to exclude files/directories from External Libraries [WI-22564]
  • Fix: When renaming a file select only file name part for files with double extensions [WI-27593]
  • Fix: False positive notification about missed vendor directory when it exists [WI-74762]
  • Fix: Network shared disks shouldn’t be displayed in include path tree [WI-74837]
  • Fix: Incorrect code reformatting for dynamic class constant fetch [WI-74817]
  • Fix: No error highlight after code reformatting when you try to fetch class constant in a wrong way [WI-74809]
  • New: Support `json_validate` function [WI-73720]
  • Fix: docker-compose deploy incorrectly prepares ssh environment [IDEA-308217]
  • Fix: When searching for many usages, main time is spent in ShowUsagesAction.setPopupSize [IDEA-321513]

New in PhpStorm 2023.3 Build 233.10527.23 EAP 4 (Oct 24, 2023)

  • New: Go to data set on failed test [WI-43811]
  • Fix: Select opened file in Remote Host doesn't work if the file in remote host if the target node with the file wasn't expanded before [WI-72971]
  • Fix: Unexpected, funny file encoding in completely blank files [WI-72288]
  • Fix: Pasting a PHPDoc line that includes trailing line break doesn't insert the line break [WI-74545]
  • Fix: VFS doesn't get refreshed on 'Sync with Deployed to' causing File Cache Conflict [WI-68996]
  • New: Show invalid paths in PHP Include [WI-74655]
  • Fix: Property can be promoted: NPE when call QF when constructor calls parent constructor [WI-74621]
  • Fix: Symfony Live Templates should not be suggested where they are not applicable [WI-74571]
  • New: [LLM] Support "Explain with AI" feature for log console [WI-74523]
  • New: [LLM] Support "Explain with AI" feature for PHP tests console [WI-74521]
  • New: [LLM] Support "Explain with AI" feature for PHP scripts [WI-74520]
  • Fix: Switch php runtime libraries support to the workspace model [WI-74253]
  • Fix: Editor tabs: Highlight active / non-focused tab more noticeably [IDEA-295046]
  • Fix: Toolwindow border color shouldn't be equal to editor background color [IDEA-282484]
  • Fix: Legal linear-gradient declaration marked as "Error: Mismatched Parameters" [WEB-43098]
  • Fix: Navigation doesn't work in the import statement between workspaces when using yarn pnp [WEB-60790]
  • Fix: Can't open some projects in 2023.2 due to "Access is allowed from Event Dispatch Thread (EDT) only" error [IDEA-327168]
  • Fix: Type hinting doesn't work for Inferred interfaces or types [WEB-59485]
  • New: Angular Standalone Components: additional inspections [WEB-56235]
  • Fix: Run Configuration. $MODULE_WORKING_DIR$ does not always expand [IDEA-215553]

New in PhpStorm 2023.3 Build 233.9102.195 EAP 2 (Oct 9, 2023)

  • Fix: Support parsing of new call site generic variance from PHPStan [WI-74517]
  • Fix: Code analysis got stuck in specific git project files [WI-73517]
  • Fix: "Use code style based on Prettier for this project" question has no effect [WEB-41888]
  • Fix: Svelte: modules exported from a 'context="module"' script block of the other component not resolved [WEB-54714]
  • Fix: Several problems with IntelliJ plugins page and screen readers [IDEA-202916]
  • Fix: Improve "Cannot connect to already running IDE instance" Exception: Process is still running" detection [IDEA-330531]
  • Fix: org.eclipse.jgit.api.errors.JGitInternalException: Cannot lock /home/user/.config/JetBrains/IntelliJIdea2023.1/settingsSync/.git/index [IDEA-305967]
  • Fix: IntelliJ automatically leaving full screen in tiling WM [IDEA-330605]
  • Fix: Expected actions are missing from search when semantic search is enabled [IDEA-332724]
  • Fix: IllegalArgumentException: Must pass FS root path, but got: 'D:///', which has a parent 'D:' [IDEA-327881]
  • Fix: macOS command-line launcher emits diagnostic output [IDEA-312922]
  • Fix: Angular: Component out of scope inspection on HTML "tr"/"td" tags when using @angular/cdk [WEB-62508]
  • Fix: Classic UI: icons in trees and popups are colored incorrectly on selection [IDEA-332186]

New in PhpStorm 2023.3 Build 233.8264.9 EAP (Oct 5, 2023)

  • New: Ability to fold/collapse/minimize multiline PHP attributes [WI-67444]
  • New: Support generics for array access type inference (via ArrayAccess::offsetGet) [WI-61439]
  • Fix: Object like array in psalm-type/phpstan-type isn't parsed properly if type is declared without assignment sign [WI-70218]
  • Fix: Docker mappings for scratches break remote Docker support [WI-70271]
  • Fix: not typed non-empty-array is marked as undefined class [WI-69615]
  • New: Dedicated styling of generic types [WI-63801]
  • Fix: Exception never thrown in block: False positive when exception is thrown in constructor [WI-70899]
  • New: Do not report 'Void method result used' for PhpSpec & Prophecy test calls [WI-68395]
  • New: Show the actual type (array, iterable, Collection) instead of generalized type[] in Quick Documentation [WI-59357]
  • New: Support lowercase-string type [WI-56043]
  • Fix: 'Remove all redundant PHPDoc tags' removes array type[] annotation [WI-73843]
  • New: Psalm support: Add support for unsealed array shapes syntax [WI-70497]
  • New: Psalm: support 'non-falsy-string' [WI-63250]
  • Fix: Use port 9003 by default when sending xdebug.client_port and not xdebug.remote_port [WI-64944]
  • New: Laravel Pint: auto-configuration after composer install/update [WI-73180]
  • New: Render TODO and FIXME from PhpDoc as a separate entities in Rendered view [WI-73216]
  • New: New inspection: PhpUnit metadata from PHPDoc can be converted to attribute [WI-71183]
  • Fix: Symfony live templates [WI-74425]
  • Fix: Exception never thrown in block: False-positive when exception is thrown in anonymous class constructor [WI-74346]
  • Fix: Can't run tests using remote interpeter if related test framework configuration doesn't exist [WI-74327]
  • Fix: IllegalArgumentException in QualityToolAnnotator [WI-74298]
  • Fix: False-positive error when we try to fetch class constant via other class constant [WI-74288]
  • Fix: #[Override] attribute isn't added when invoke "Implement method" in child class [WI-74238]
  • Fix: False-positive "The parameter's value is not used anywhere" [WI-74235]
  • Fix: Annotation "@ORMDiscriminatorMap" incorrectly suggested to be converted to Symfony attribute [WI-74220]
  • Fix: Bitwise shift left operator is displayed incorrectly in constant's quick doc [WI-74215]
  • Fix: Extensive highlighting: Doctrine annotation can be replaced with attribute [WI-74211]
  • Fix: PHPUnit's QF to convert annotation to attribute leaves part of multiline PHPDoc with test data for testWith annotation [WI-74198]
  • Fix: PHPUnit's annotation can be converted to attribute: QF incorrectly converts TestWith annotation [WI-74197]
  • Fix: PHPUnit's testdox annotation doesn't have QF to convert to attribute [WI-74196]
  • Fix: PHPUnit's annotation "requires" with method reference incorrectly converted by QF to attribute [WI-74195]
  • Fix: AIOOBE is thrown when convert PHPUnit's requires annotation to attribute [WI-74194]
  • Fix: PHPUnit backupStaticAttributes annotation doesn't have QF to convert it to attribute [WI-74193]
  • New: New Project Initlaizer for Symfony [WI-74179]
  • Fix: AIOOB Exception is thrown when invoke "Open terminal here" on not existing node [WI-74178]
  • New: New Inspection: Symfony annotation can be converted to attribute [WI-74154]
  • New: New Inspection: Doctrine annotation can be converted to attribute [WI-74153]
  • Fix: Composer log is always red when composer from remote interpreter is used [WI-74133]
  • Fix: #[Override] doesn't have super method: false negative if parent class declares method via @method annotation [WI-74130]
  • Fix: #[Override] on constructor should be highlighted with error [WI-74104]
  • New: Add #[Override] attribute when user explicitly invoke "Implement interface"/"Override method" action [WI-74103]
  • Fix: PHP Parser: Some PHP Explicit octal integers are not supported [WI-74038]
  • Fix: Non-'readonly' class cannot extend readonly class: There is no QF to make anonymous class readonly [WI-73975]
  • Fix: Class can be readonly: Highlight anonymous class that contains only readonly properties [WI-73973]
  • Fix: Property type does not match: Change "property" to "constant" in case inspection is applied for class constant [WI-73960]
  • Fix: Property type does not match: QF to change type of constant does nothing [WI-73959]
  • Fix: Introduce constant: Add typehint for constant if language level is >=8.3 [WI-73953]
  • Fix: Type of typed class constant is lost after pull up of constant [WI-73951]
  • Fix: Class constant can be final: QF removes type hint from class constant [WI-73950]
  • New: Inspection to add #[Override] to method [WI-73948]
  • Fix: False-positive error when you assign constant with type ?array to some other constant with type array [WI-73883]
  • Fix: phpstorm-stubs: T_BAD_CHARACTER has incorrect annotation "@removed 7.0" [WI-73896]
  • New: New inspection: Child method marked with #[Override] doesn't have super method [WI-73947]
  • New: Inspection to add #[Override] to method [WI-73948]
  • Fix: Class constant can be final: QF removes type hint from class constant [WI-73950]
  • Fix: Type of typed class constant is lost after pull up of constant [WI-73951]
  • Fix: Introduce constant: Add typehint for constant if language level is >=8.3 [WI-73953]
  • Fix: Property type does not match: QF to change type of constant does nothing [WI-73959]
  • Fix: Property type does not match: Change "property" to "constant" in case inspection is applied for class constant [WI-73960]
  • Fix: Class can be readonly: Highlight anonymous class that contains only readonly properties [WI-73973]
  • Fix: Non-'readonly' class cannot extend readonly class: There is no QF to make anonymous class readonly [WI-73975]
  • Fix: PHP Parser: Some PHP Explicit octal integers are not supported [WI-74038]
  • New: Add #[Override] attribute when user explicitly invoke "Implement interface"/"Override method" action [WI-74103]
  • Fix: #[Override] on constructor should be highlighted with error [WI-74104]
  • Fix: #[Override] doesn't have super method: false negative if parent class declares method via @method annotation [WI-74130]
  • Fix: Composer log is always red when composer from remote interpreter is used [WI-74133]
  • New: New Inspection: Doctrine annotation can be converted to attribute [WI-74153]
  • New: New Inspection: Symfony annotation can be converted to attribute [WI-74154]
  • Fix: AIOOB Exception is thrown when invoke "Open terminal here" on not existing node [WI-74178]
  • New: New Project Initlaizer for Symfony [WI-74179]
  • Fix: PHPUnit backupStaticAttributes annotation doesn't have QF to convert it to attribute [WI-74193]
  • Fix: AIOOBE is thrown when convert PHPUnit's requires annotation to attribute [WI-74194]
  • Fix: PHPUnit's annotation "requires" with method reference incorrectly converted by QF to attribute [WI-74195]
  • Fix: PHPUnit's testdox annotation doesn't have QF to convert to attribute [WI-74196]
  • Fix: PHPUnit's annotation can be converted to attribute: QF incorrectly converts TestWith annotation [WI-74197]
  • Fix: PHPUnit's QF to convert annotation to attribute leaves part of multiline PHPDoc with test data for testWith annotation [WI-74198]
  • Fix: Extensive highlighting: Doctrine annotation can be replaced with attribute [WI-74211]
  • Fix: Bitwise shift left operator is displayed incorrectly in constant's quick doc [WI-74215]
  • Fix: Annotation "@ORMDiscriminatorMap" incorrectly suggested to be converted to Symfony attribute [WI-74220]
  • Fix: False-positive "The parameter's value is not used anywhere" [WI-74235]
  • Fix: #[Override] attribute isn't added when invoke "Implement method" in child class [WI-74238]
  • Fix: False-positive error when we try to fetch class constant via other class constant [WI-74288]
  • Fix: IllegalArgumentException in QualityToolAnnotator [WI-74298]
  • Fix: Can't run tests using remote interpeter if related test framework configuration doesn't exist [WI-74327]
  • Fix: Exception never thrown in block: False-positive when exception is thrown in anonymous class constructor [WI-74346]
  • Fix: Symfony live templates [WI-74425]
  • Fix: No new icon in the design language of the macOS Big Sur for Macs [IDEA-256202]
  • New: auto import type when in TypeScript [WEB-47235]
  • New: Allow hiding the main toolbar in normal view mode [IDEA-303413]
  • New: Allow options for caret/cursor height and width [IDEA-164303]
  • Fix: Editor tabs: Enable file colors by default [IDEA-295115]
  • New: Create GitLab snippet like Gist [IDEA-201207]
  • Fix: Find in files does not remember last selected scope [IDEA-268476]
  • New: Support GitLab 14.x and older 15.x [IDEA-326663]
  • Fix: Do not disturb the position of side-effect imports when sorting imports. [WEB-37235]
  • Fix: incorrect highlighting of variable occurrences in case of object property value shorthands [WEB-38140]
  • New: "Find in files" for multiple selected folders [IDEA-92340]
  • Fix: Splash screen doesn't disappear after Idea start [IDEA-326273]
  • New: Support --mount command line option [IDEA-181108]
  • Fix: Markdown's Code Folding settings are reset after restart [IDEA-326693]
  • New: Support for YAML Schema using yaml-language-server comment [IDEA-323117]
  • Fix: No Main Menu on mac when native menu is switched off [IDEA-319939]
  • New: jest.mock file path declartion [WEB-34620]
  • Fix: "Import type" isn't added when copying or moving code with an imported element via "import type" [WEB-57058]
  • Fix: Run tab gets stuck when dropped to a different tool window [IDEA-293177]
  • New: Code completion for @ts-ignore and @ts-expect-error comments [WEB-33029]
  • New: Automatically close single tags when pasting html to jsx [WEB-31414]
  • Fix: Github: push to github fails [IDEA-332146]
  • Fix: The menu doesn't open after clicking on the buttons in Menu Bar on MacOS [master] [IDEA-326208]
  • Fix: File is not displayed in the Editor after closing IDE with Diff tab open [IDEA-325874]
  • Fix: CSS body "background-color" is not respected in the built-in preview [WEB-61285]
  • Fix: Cannot resize Markdown Editor if it's opened side by side with Preview [IDEA-316391]
  • Fix: Make the new ssh -G parser default [IDEA-297988]
  • Fix: Find usages doesn't work on module exported with module.exports [WEB-55383]
  • Fix: React functional component that returns primitive value causes WebStorm warning [WEB-31329]

New in PhpStorm 2023.2.2 Build 232.9921.55 (Sep 19, 2023)

  • Fix: Test Framework configuration by remote interpreter automatically removes after restart [WI-73784]
  • Fix: Open terminal in remote host: can’t open folder if root path differs from home directory [WI-72268]
  • Fix: Test run using remote interpreter fails if phar file from docker is used and it isn’t mapped to phar file in project [WI-74141]
  • New: Do not automatically add test configurations if sync with composer is disabled [WI-74184]
  • Fix: Start SSH session in Directory hasnt start slash, and directory not found [WI-73865]
  • Fix: Allow disabling “Recent” branches view [IDEA-326901]
  • New: Better structure view for HTTP Client files [IDEA-218487]
  • Fix: Markdown with tables has bad performance [IDEA-326905]
  • Fix: IDEA 2023.2 hangs on splash screen due to `Exception in thread “AWT-EventQueue-1” com.intellij.openapi.diagnostic.RuntimeExceptionWithAttachments: Access is allowed from Event Dispatch Thread` error [IDEA-314813]
  • Fix: Editorconfig settings are forgotten after a while [IDEA-326450]
  • Fix: The Project view directory list cannot be loaded [IDEA-326394]
  • Fix: Svelte Language Server: “Svelte: File ‘path/to/file’ is not a module.”error shown when importing a `.ts` file in `.svelte` [WEB-62710]
  • Fix: Searching for additional intention actions & quick-fi… [WEB-62071]
  • Fix: shift+enter for opening a file in the right split no longer works on search anywhere / file picker [IDEA-326670]
  • Fix: GitLab integration: Irrelevant pipelines are displayed for merge request [IDEA-326509]
  • Fix: Incorrect completion suggestions from Volar in .ts files for optional properties [WEB-61886]
  • New: add support for custom css property unit [WEB-34460]
  • Fix: Changing python module settings gets stuck with “Checking home path validity” [IDEA-328222]
  • Fix: Exception from getRelativePathNameMatchingFeatures [IDEA-323681]
  • New: Local variables in HTTP Client [IDEA-240300]
  • Fix: Optimize CSS lexer (extremely long highlighting of CSS file with long selector list) [WEB-62197]
  • Fix: Type error popover is not scrollable [WEB-61953]
  • Fix: Export to HTML fails at com.intellij.codeEditor.printing.FileSeparatorProvider.getFileSeparators [IDEA-329872]
  • Fix: WebStorm 2023.2 RC doesn’t keep CRLF line endings if Prettier’s endOfLine option is set to auto [WEB-62072]
  • Fix: Settings Sync silently disables plugins if they become incompatible with other IDE instance [IDEA-305325]
  • Fix: “RuntimeException: Index is corrupted” on opening a new project [IDEA-297820]
  • Fix: 2023.2 Webstorm – Open on github does not open the commit URL [IDEA-326244]

New in PhpStorm 2023.2.1 Build 232.9559.64 (Aug 28, 2023)

  • Fix: Import is never used: False positive for Symfony annotations added to PHPDoc [WI-73212]
  • Fix: Import is never used: false positive for a PHP Annotation [WI-73945]
  • Fix: AlreadyDisposedException: at com.jetbrains.php.composer.configData.ComposerConfigManager is thrown sometimes [WI-73662]
  • Fix: Exclude/Include patterns based on file path in quality tools configs are not applied when run a tool based on stdin [WI-73310]
  • Fix: SOE in generics completion [WI-73663]
  • Fix: PHPUnit: Too many line breaks / empty space in output after running a test [WI-73483]
  • New: Bundle New UI onboarding in PhpStorm [WI-73543]
  • Fix: PHPUnit configuration file from main project isn’t passed to PHPUnit execution command for subproject [WI-73715]
  • Fix: “Jump to source” on failed tests broken for (at least) Laravel-based test cases after updating to 2023.2 [WI-73764]
  • Fix: Replacing PHPDoc with another PHPDoc using Copy-paste removes the code that contained inserted PHPDOc [WI-73770]
  • Fix: Run of PHPUnit test using remote interpreter fail if subproject has phpunit.xml but phpunit binary from main project (or Phar file) is used [WI-73786]
  • Fix: Cannot save composer.json path in Settings | PHP | Composer [WI-73596]
  • Fix: Limit the number of PHP process that can be spawned for Composer updates check [WI-73645]
  • Fix: Freeze during composer configs detection on a big project [WI-73709]
  • Fix: Test configuration names are “Main” for submodules on Windows [WI-73864]
  • New: Svelte: support type checking for props [WEB-55638]
  • Fix: Menu bar missing on all windows except one on tiling WM / under WSLg [IDEA-323700]
  • Fix: Run configuration macros (like $FilePath$) do not work [IDEA-326733]
  • Fix: Cannot change themes on linux after settings sync from windows if ‘Sync with OS’ enabled [IDEA-283945]
  • Fix: Typescript: “Unreachable ‘case’ branch” false positive for Enums [WEB-61572]
  • Fix: Database console takes focus in Services panel [IDEA-219699]
  • Fix: Cannot open Merge Request on GitLab Community Edition [IDEA-325905]
  • Fix: External CSS stylesheet for Bootstrap is downloaded as a javascipt file. [WEB-60873]
  • Fix: Add an option to display line numbers near the code left margin in distraction-free mode [IDEA-243735]
  • Fix: IDE goes to full screen after several restarts if it was initially opened on secondary monitor and native header is switched off [IDEA-326021]
  • Fix: Open multiple files doesn’t work anymore in results (CTRL + SHIFT + N) [IDEA-326262]
  • New: Tailwind CSS plugin and support for PUG [WEB-48583]
  • Fix: TypeScript service doesn’t work with yarn pnp when typescript version is 5.x or higher [WEB-62221]
  • Fix: Jest 27: Output not nested under test [WEB-53839]
  • New: Angular 15: support hostDirectives [WEB-58269]
  • Fix: can’t exit full screen mode [IDEA-323706]
  • Fix: Center line numbers and gutter in distraction free mode in new UI [IDEA-295551]
  • New: Missing Angular context(s) for Live Templates [WEB-50199]
  • New: Tailwind: add an option to only show Tailwind classes in completion, or show them on the top of the list [WEB-57951]
  • Fix: duplicated source entry is created when creating source folder manually via `CreateDirectoryCompletionContributor` [IDEA-310739]
  • New: CSS Level 4 system colours not supported [WEB-59994]
  • Fix: Vue: don’t report “value is possibly undefined” if it’s set in ‘withDefaults’ [WEB-60438]
  • Fix: Printing fails (File | Print) [IDEA-323747]
  • Fix: Custom html attribute is added with losing case [WEB-15620]
  • Fix: Cannot include relative file in HTTP client files under a module [IDEA-227400]
  • Fix: Intellij hangs while editing xhtml files if schema can’t be fetched quickly (ValidateXmlActionHandler.doParse) [IDEA-238917]
  • Fix: Update quick doc for angular structure directives [WEB-48319]
  • Fix: Jest: special characters in tests path are not escaped, no tests are found [WEB-61581]
  • Fix: Updating bundled plugins removes the plugin files in the IDE’s installation folder which also break patch update [IDEA-326800]
  • Fix: IDE fails to connect to network due to “modulus value out of range” error [IDEA-326919]

New in PhpStorm 2023.2 Build 232.8660.60 Beta (Jul 17, 2023)

  • Inspections for PHP assertions
  • Improvements for quality tools

New in PhpStorm 2023.1.4 Build 231.9225.18 (Jul 17, 2023)

  • Custom Code Style settings are accidentally lost (IDEA-318457).
  • IDE start fails with “CannotActivateException: Address already in use: bind” (IDEA-323836).
  • File Cache Conflict when using an external formatter since 2023.1.1 (WI-72733)

New in PhpStorm 2023.2 Build 232.8453.129 EAP 6 (Jul 6, 2023)

  • Improvements for the generation of PHPDocs
  • A single point of access to all PHP framework plugins
  • Line granularity for Git commits
  • An alternative light theme for the new UI

New in PhpStorm 2023.2 Build 232.8296.18 EAP 5 (Jun 26, 2023)

  • AI Assistant
  • AI Actions
  • Code documentation
  • Rename suggestions
  • Commit message generation
  • Support @mixin with template

New in PhpStorm 2023.1.3 Build 231.9161.47 (Jun 26, 2023)

  • Fix: Test root imported from phpunit.xml located in a subdirectory overwrites the correct one [WI-72035]
  • Fix: TypeScript parsing incorrectly identifies function exports from Redux Toolkit [WEB-42559]
  • Fix: IDEA crashes on using “navigation” raycast feature [IDEA-317346]
  • Introduce Volar support for Vue to fix a problem with Typescript 5.0 in Vue SFC [WEB-60063]
  • Fix: Showing “combineLatest” function from rxjs as deprecated [WEB-51889]
  • Fix: Vue+Typescript: enum key is not resolved in template [WEB-60418]
  • Fix: CSS color preview in gutter looks faded since 2023.1 [WEB-60930]
  • Add option to enable/disable automatic interpolation of string literals [WEB-60546]

New in PhpStorm 2023.2 Build 232.7754.72 EAP 4 (Jun 21, 2023)

  • Pin Run configurations
  • Sort files by modification time in the Project view

New in PhpStorm 2023.2 Build 232.6734.11 EAP 2 (Jun 6, 2023)

  • GitLab Merge Requests support

New in PhpStorm 2023.2 Build 232.6095.6 EAP (May 21, 2023)

  • The first PhpStorm 2023.1 EAP build brings the Rename refactoring for generics in PHP and a few more improvements.

New in PhpStorm 2023.1.2 Build 231.9011.38 (May 18, 2023)

  • Fix: Editor tabs scroll very slowly [IDEA-318576]
  • Fix: Project on an NFS mounted drive is considered read-only [IDEA-315865]
  • Fix: Crazy long ‘Type annotation’ inlay hints in JavaScript [WEB-59322]
  • Fix: Angular: Incorrect type evaluation for pipes with transform property with indirect function instead of method [WEB-50918]
  • Fix: Improve documentation for Angular related symbols [WEB-33153]
  • Fix: CSS Custom Properties: Whitespace is marked as incorrect value [WEB-20700]
  • Fix: Stop Debug button is missing from the main toolbar during web debugging since 2023.1.1 [WI-72524]
  • Fix: IDE ignores indentation settings that are specified for general SQL dialect [DBE-17878]
  • Fix: EXPLAIN ANALYSE disappears from context menu for MySQL after first run [DBE-17813]
  • Fix: PHPUnit 10: –whitelist option for coverage is no longer supported [WI-71423]

New in PhpStorm 2023.1.1 Build 231.8770.68 (May 2, 2023)

  • Fix: [macOS Ventura] Screen flickering after OS update when IDE is full screen [JBR-4959]
  • Fix: IDE flicker with two monitors [JBR-5417]
  • Fix: VCS widget: branch name truncated too much [IDEA-294594]
  • Fix: Docker desktop for linux create docker.sock in other folder instead of /var/run/docker.sock [IDEA-294871]
  • Fix: Vue Lifecycle Events are marked as unused [WEB-38671]
  • Fix: New UI: window header is hard to resize on the top edge, top/right corner [JBR-5384]
  • Fix: “Commit checks” settings are not saved [IDEA-315281]
  • Fix: Wrong large IDE scaling on 4k Screen [JBR-5316]
  • New: Support import() of typedef’s in JSDoc from other modules/packages [WEB-52385]
  • New: Generics: Infer the “@template T of Type” in the generic class itself [WI-65460]
  • New: Generics: Support wrapping T into T[] [WI-62769]
  • Fix: Generic autocomplete does not work with class properties. [WI-63845]

New in PhpStorm 2023.1 Build 231.8109.199 (Apr 27, 2023)

  • New UI Beta:
  • Compact Mode:
  • Visible file name pane when tabs are hidden in the new UI
  • Vertical split for tool windows
  • Project tabs in the new UI on macOS
  • Redesigned Run widget for the new UI
  • Run PHP Scratch Files on 3v4l.org
  • Performance Improvements:
  • Shared indexes for popular PHP packages
  • Highlighting during indexing
  • Faster inspections
  • Blade templates
  • Go to Class action available during indexing
  • Earlier availability of IDE features on project opening
  • A new IDE suggestion to reconfigure Microsoft Defender settings for better performance
  • Support for multi-composer and multi-vendor projects
  • Debugger With Data Flow Analysis:
  • Turn off DFA during debugging
  • Limitations
  • Custom Regexp-based search and replace inspections
  • Quality-of-Life Improvements for PHP:
  • Clickable paths and class references for var_dump() / dd() output in the terminal
  • Descriptions for file open modes in the completion popup
  • More live templates
  • Support for all PHPStan and Psalm tags
  • Generics support improvements
  • User Experience:
  • Full IDE zoom
  • Option to save multiple tool window layouts
  • Setting to configure Actions on Save for new projects
  • Editor:
  • Fill Paragraph for Markdown files
  • New Smart Keys settings page for Markdown
  • Option to show whitespaces only in selected code
  • VCS / Git / GitHub:
  • VCS status color hints in the Structure tool window
  • Improved Branches popup
  • Autocompletion in the Create New Branch popup
  • Background pre-commit checks
  • Improved code review workflow for GitHub
  • Docker Improvements:
  • Merged log from all Docker-compose containers
  • Support for Azure Container Registry
  • New setting to apply the :z mount option to bind volumes on SELinux
  • Web:
  • Astro support
  • Support for TypeScript in Vue templates
  • Tailwind CSS configuration

New in PhpStorm 2023.1 Build 231.8109.149 RC 2 (Mar 28, 2023)

  • Fixed: Using "Copy value as..." in debugger gives: "Cannot get property" [WI-71283]
  • Fixed: Debug: variables are shown twice everywhere with Xdebug 3.2 [WI-71780]
  • Fixed: File Structure View: "Copy" action omits all extended information (parameter, return types, visibility) [WI-62858]
  • Workaround for PHP Toolbox plugin to avoid freezes [WI-71859]
  • Detect test frameworks roots for composer.json in subdirectories [WI-71512]

New in PhpStorm 2023.1 Build 231.8109.51 RC (Mar 21, 2023)

  • 3v4l.org integration
  • New UI (Beta)
  • Performance improvements
  • Data Flow Analysis in the PHP debugger
  • Custom Reg-exp based inspections
  • Full IDE Zoom
  • Clickable paths and class references for var_dump() / dd() output in the terminal
  • Improvements for Docker support
  • And much more

New in PhpStorm 2023.1 Build 231.8109.51 Beta 2 (Mar 14, 2023)

  • Option to show whitespaces only in selected (highlighted code) [IDEA-94918]
  • Psalm / PhpStan: support parsing for tags with `psalm` / `phpStan` prefix [WI-70674]
  • Psalm / PhpStan: support all unsupported tags in phpDoc [WI-70673]
  • PHPUnit 10 detect tests marked with attribute #[Test] [WI-71455]
  • DFA Debugger: don't show inlays in unreachable conditions [WI-71570]
  • Structure View: show information about inner functions [WI-71098]

New in PhpStorm 2023.1 Build 231.7864.85 Beta (Mar 13, 2023)

  • In this build, you can find additions to the PHP debugger that allow you to see conditional values ahead of time and dim out runtime-unreachable code.

New in PhpStorm 2022.3.3 Build 223.8836.28 RC 2 (Mar 7, 2023)

  • Fixed: High CPU usage on EDT: ActionUpdater.cancelOnUserActivity [IDEA-312313]

New in PhpStorm 2023.1 Build 231.7665.36 EAP 6 (Mar 7, 2023)

  • In this build, you can find several quality-of-life improvements across the various subsystems including redesigned Run widget for the new UI, option to show whitespaces only in selected code, improved code review workflow for GitHub, and other.

New in PhpStorm 2022.3.3 Build 223.8836.19 RC (Feb 28, 2023)

  • Fixed: slow Tailwind CSS completion [WEB-58840]
  • Fixed: ‘box-shadow’ CSS property: false ‘negative value is not allowed’ error [WEB-23000]
  • Fixed: webp image not loaded [IDEA-312769]

New in PhpStorm 2022.3.2 Build 223.8617.59 (Feb 21, 2023)

  • Settings Sync: plugins will not be synced between IDEs by default [IDEA-307136]
  • Support ‘JavaScript Standard Style’ version 17 (https://standardjs.com/) [WEB-55664]
  • Fixed: Angular 14: High CPU usage when using instanceof FormGroup [WEB-56411]
  • Fixed: Close icon become visible for the wrong tab [IDEA-272466]
  • Fixed: Running Behat feature steps from gutter creates Cucumber.js run configuration instead of Behat [WI-70062]
  • Fixed: Method call isn’t resolved to related trait if the same method included in class using mixin [WI-65196]
  • Fixed: Quick Documentation: Doesn’t show the constant value [WI-70107]
  • Fixed: PHP_CodeSniffer validation Inspections don’t apply custom severity highlighting [WI-54652]
  • Fixed: Quality Tools: Changing custom severity in `Show warning as` breaks saving of all subsequent changes in PHPCS settings [WI-70156]
  • Fixed: ParaTest: Helpers bootstrap overrides bootstrap from phpunit.xml [WI-70273]
  • Fixed: ParaTest doesn’t work when PhpUnit configuration file is being used as test scope [WI-70496]

New in PhpStorm 2023.1 Build 231.4840.331 EAP (Jan 26, 2023)

  • 3v4l.org integration
  • Full IDE zoom
  • Improvements for Markdown files
  • Enhancements for VCS
  • Downloadable shared indexes for top PHP packages
  • Availability of the Go to Class action during indexing

New in PhpStorm 2022.3.2 Build 223.8617.12 Preview (Jan 16, 2023)

  • PhpStorm “Add method” for multiple classes case (WI-62677)
  • Quick Documentation doesn’t show constant values (WI-70107) 
  • Incorrect formatting inspection doesn’t work as intended (WI-70096)
  • Broken “move class” refactoring (WI-70329) 
  • Customize config sharing between IDEs (IDEA-233535)
  • Settings Sync: plugins shouldn’t be synced between IDEs by default (IDEA-307136)
  • Remote Host files: toolbar icons partially hidden in the new UI (IDEA-299612)   

New in PhpStorm 2022.3.1 Build 223.8214.18 Preview (Dec 14, 2022)

  • Fixed: Vue 3 Setup: Vue TypeScript Service false errors not suppressed in Problems > Project Errors tab WEB-56403
  • Fixed: Actions on Save sometimes don’t work in IDE version 2022.3 IDEA-307368
  • Fixed: Vue.js: support type inference for v-slot scope variable WEB-41084
  • Fixed: Navigation Bar: ugly icons for the test methods with increased UI font IDEA-302213
  • Fixed: Angular: image paths are incorrectly resolved in CSS file WEB-46365
  • Fixed: “Hide” Button on Debugger not functioning when the “Debugger Console” tab is focused WEB-56864
  • Fixed: UI hangs when calling a context menu IDEA-306642
  • Fixed: Issue with Angular component automatic module import WEB-50069
  • Fixed: Run widget: long-running task gets automatically selected after the short-running has finished, would expect the last started there IDEA-295775
  • Fixed: Accessibility errors reported for custom components with names similar to HTML tags WEB-52091
  • Added: Support parsing of PhpStan’s conditional return types WI-66465
  • Fixed: Incorrect import statement placement in Vue component WEB-47509
  • Fixed: Green balloon for Code With Me and Merge dialog has incorrect colors IDEA-291913
  • Fixed: Cannot copy classes between projects WI-69928
  • Fixed: PHPDoc rendering: one-line PhpDoc rendered as empty line WI-69504
  • Fixed: Exception when invoke action “Start listening for PHP Debug connections” WI-69507

New in PhpStorm 2022.3 Build 223.7571.212 (Dec 14, 2022)

  • New UI (Preview):
  • The brand new UI is now available for everyone to try. It is turned off by default because it’s still in the Beta stage. You can switch to the new UI in Settings/Preferences | Appearance & Behavior | New UI Preview.
  • The new UI allows you to perform most tasks the same as before while offering a cleaner and faster interface with fewer distractions.
  • User Experience:
  • In this release, you will find many additional visual improvements. Here are some of the most notable ones.
  • Code Vision:
  • Some meta information about PHP symbols is now shown right next to the PHP code in the editor:
  • The number of usages of a certain class, trait, interface, method, or function. You no longer have to click on a symbol to find this out.
  • The number of implementations for interfaces.
  • Info from Git about who made the most changes to a certain piece of code. This person may be a code owner or someone who has the most expert knowledge about that part of the code.
  • You can configure the position of Code Vision text, either above a piece of code or to the right-hand side of it. To change this, right-click on a piece of Code Vision text and choose Configure – this will take you to Preferences / Settings | Editor | Inlay Hints | Code vision.
  • You can also disable Code Vision insights by right-clicking on one of them and choosing Hide All Code Vision Inlay Hints.
  • By the way, Code Vision in PhpStorm works for JavaScript and TypeScript files too!
  • Quick-fix preview:
  • You can fix some code problems automatically by pressing Alt+Enter. Now you will be able to preview the proposed quick-fix or intention action before you apply it, so you can see how your code will be altered once you accept PhpStorm’s suggestions.
  • The preview appears when you open the list of available intention actions and hover over one of the options.
  • You can disable the preview feature by pressing F1 / Ctrl+Q while the list of intention actions is open.
  • Reader mode for PHPDoc blocks:
  • When coding, it is crucial that you can read your code easily. You can now change the appearance of PHPDoc blocks in PhpStorm 2022.3 with an option that provides better looking rendering and support for HTML formatting.
  • Improved Quick Documentation:
  • If you press F1 / Ctrl+Q on any function, class, or method, PhpStorm will show the documentation right in the editor.
  • This popup has been significantly reworked. You no longer need to switch to the browser and search for documentation, because everything is right above your code.
  • Datetime format preview:
  • Date formats that are passed to date() or similar functions can be confusing and more complex than just Y-m-d. But even in this case, do you know the output by heart? You don’t have to. PhpStorm 2022.3 shows a tooltip with an example date when hovering on a date format string.
  • The datetime preview synergizes well with the quick-fix preview, as you’ll see the formatted date preview in the Alt+Enter quick-fix menu.
  • Also, when editing a date format string, you’ll get autocompletion with hints for all characters that are recognized as format parameters.
  • PHP 8.2:
  • PhpStorm 2022.3 comes with full support for PHP 8.2. Most of the changes in the IDE will fit organically into your PhpStorm workflow, so we’ll only mention the new features that you need to know about.
  • As usual, you can try new features by setting the project language level to PHP 8.2. You can make this switch from the toolbar or by specifying the requirement in composer.json.
  • Readonly classes:
  • A readonly class is a quick way to declare a class that has only readonly properties. You can use these classes for additional data integrity.
  • For readonly classes, PhpStorm provides:
  • A quick-fix to convert a class with readonly properties to a readonly class.
  • An inspection to make sure that readonly classes can only have readonly children.
  • The ability to detect redundant readonly properties in readonly classes.
  • Checks for prohibited static and dynamic properties in readonly classes.
  • Deprecated dynamic properties:
  • Accessing non-existent properties in PHP 8.2 will cause a deprecation notice. PhpStorm highlights these usages and provides quick-fixes for the errors, either by adding the property or by using the #[AllowDynamicProperties] attribute.
  • Typesystem improvements:
  • PHP 8.2 adds support for disjunctive normal form types, as well as standalone null, true, and false types. We’ve added support for all of them in PhpStorm as well.
  • Sensitive Parameters:
  • Sensitive parameters can be marked with the #[SensitiveParameter] attribute in PHP 8.2 to make sure that their values are never shown in stack traces. PhpStorm adds support for this attribute as well.
  • More deprecations:
  • PHP 8.2 introduces a few more deprecations, and PhpStorm has you covered with corresponding inspections to spot them and quick-fixes to update your code.
  • Deprecated ${ string interpolation
  • If you need to use a variable inside a string, there are two possible ways to perform interpolation: "$foo" and "{$foo}".
  • There was one more way before PHP 8.2, but it has been as deprecated and will be removed in the future: "${foo}".
  • PhpStorm will highlight the occurrences, and you can use an Alt+Enter quick-fix to upgrade the code.
  • Deprecated partially supported callables:
  • In PHP 8.2, several ways of calling functions have been deprecated. Use an Alt+Enter quick-fix to upgrade your code.
  • PhpStorm can scan your whole codebase at once to detect all possible instances of specific problems. Go to Code | Analyze Code | Run Inspection by Name. Next, search for the inspection you want to run, “dynamic property”, for example, and PhpStorm will do the rest.
  • Debugging:
  • If you’re having trouble configuring Xdebug, here are a few things you can now do in PhpStorm to identify the problem.
  • Validate phpinfo() output:
  • Add a phpinfo() call to your PHP script or page and copy the output of the function that you see in your browser. Then call Run / Web Server Debug Validation, and you’ll see a dialog that allows you to paste the phpinfo() output from the previous step.
  • PhpStorm will analyze the server configuration and notify you of any problems.
  • Check the server configuration with a script:
  • If the phpinfo() information didn’t help, you can use PhpStorm’s validation script on the server.
  • Return value debugging with Xdebug:
  • Xdebug 3.2 has an extra “return from function” debugging step that allows you to inspect the return value.
  • PhpStorm 2022.3 supports this new feature. To trigger it, press Step Into when you’re on the last statement in the function. As a result, an additional variable will be shown in Watches.
  • Databases: Redis support:
  • A preliminary iteration of long-awaited support for Redis has been implemented.
  • PHP Tool Integrations:
  • Run tests in parallel with ParaTest
  • The long-anticipated support for parallel testing in PhpStorm has finally arrived!
  • To run tests in parallel, you need to check the Use ParaTest option in your tests’ Run configuration, and then check that the path to the ParaTest binary is set correctly.
  • Usually, if you have ParaTest added in your composer.json file, the path should look something like this: ./vendor/bin/paratest_for_phpstorm.
  • Run single data sets from PHPUnit’s data providers:
  • With the help of PHPUnit’s data providers, you can quickly run a series of tests using various test data.
  • This can save you time by running just one set of data from the entire provider while debugging tests.
  • You can run a test with a specific set from the data provider by pressing a gutter icon near it in the editor.
  • Use external formatters for PHP:
  • It is now possible to choose an external formatter in Preferences | PHP | Quality Tools. You can now use FriendsOfPHP/PHP-CS-Fixer or squizlabs/PHP_CodeSniffer for this purpose, or you can stick to the default PhpStorm formatter.
  • Robo integration:
  • Robo, a popular task runner for PHP, has received the following extended support:
  • A special Robo tasks tool window becomes available if a Robo class is present in the project.
  • A run configuration for executing Robo tasks is available inside the context menu and invoked from a Robo method.
  • Each public method inside a Robo class has a gutter icon for the respective configurations.
  • Prophecy support:
  • If you use the Prophecy mocking framework in your tests, working with it in PhpStorm will now be easier.
  • Code completion is now available after you call the prophesize() or reveal() methods.
  • Improvements for WordPress:
  • Developing plugins and themes for, and simply customizing, WordPress sites has become a little easier with this release of PhpStorm.
  • We’ve added support for get_template_part(), get_header(), get_sidebar(), and get_footer(). You can now click on them or press ⌘B to go to the corresponding file.
  • File paths that contain plugins_url() or use get_stylesheet_*() functions are now also recognized, and you can click on them to jump to the source.
  • Improvements for Blade:
  • Closing directives will now be added automatically when possible.
  • We’ve also improved detecting (un)used functions in blade templates. So you should see less false highlighting of those.
  • Other Updates for PHP
  • ML-assisted sorting of completion lists in PHP:
  • We introduced machine-learning (ML)-based autocompletion sorting for PHP back in v2019.3. It improves code completion by reordering the elements in the completion popup so that the most relevant items are ranked higher.
  • This was disabled by default, but our studies have shown that it improves completion.
  • Based on our current research, users choose the top item from the completion dropdown list 65% of the time. With ML-based completion, this statistic increased to 75%, so we’ve decided to turn this setting on by default.
  • You can disable ML-based completion and change its settings under Preferences/Settings | Editor | General | Code Completion.
  • Rename class file is renamed on copy-paste:
  • Say you wanted to duplicate a file but give it a different name. Previously, if the file contained a PHP class, you had first to rename the file, and then the class. Now it’s just a single action, and the class name will be derived from a new file name.
  • Move constants to enum:
  • PHP 8.1 introduced enums, which provide an easier alternative to prefixed class constants for grouping constant values.
  • To create such an enum, use the Move members refactoring on class constants. In the refactoring dialog, select the Move as enum cases checkbox.
  • PhpStorm will do the rest for you: create an enum, find all usages of old constants, and replace them with the correct enum cases.
  • Note that the language level of the project should be set to at least PHP 8.1 for this refactoring to be available.
  • Support iteration over list array shapes:
  • Support for array shape annotations was added in PhpStorm 2021.2, and then in 2022.1 we added multiline and nested syntax support for array shapes.
  • The final missing piece arrives in PhpStorm 2022.3 – full code completion for array-shape items in loops.
  • Move classes with drag-n-drop improvements:
  • We have added drag-n-drop move class refactoring in 2021.3. But previously it only worked in projects with properly configured source roots according to PSR-0/PSR-4.
  • Now we’ve removed this requirement, and even if the project doesn’t have proper settings, PhpStorm will do checks and detect source roots to perform the refactoring.
  • In this release, we’ve further enhanced the algorithms that identify target namespaces, so that most of the time, the dialog asking you to enter the target namespace is not even displayed; instead, all files are simply moved correctly with updated namespaces and references.
  • Inject JSON language into Nowdoc/Heredoc strings with JSON tags:
  • Previously, you could use the

New in PhpStorm 2022.3 Build 223.7571.117 RC (Nov 26, 2022)

  • PHP 8.2 full support
  • Code Vision for PHP
  • New UI (Preview)
  • Rendered PHPDoc view
  • Improved Quick Documentation
  • Quick-fix preview
  • Datetime format preview
  • Xdebug setup validation
  • Running tests in parallel with ParaTest
  • A new way to work with WSL2
  • Improvements for Docker
  • Redis support in Database tools
  • And much more

New in PhpStorm 2022.2.3 Build 222.4345.7 Preview (Sep 29, 2022)

  • Fixed: Language Injection causes large slowdowns (IDEA-292182)
  • Fixed: Quick Documentation popup doesn’t go away with ESC when using the Emacs keymap (IDEA-298874)
  • Fixed: Size of ‘Create Branch’ Field in ‘Open Task’ Window (IDEA-252365)
  • Fixed: Right-click context menu and main menu not showing occasionally (IDEA-300772)
  • Fixed: Commit checks failed notification (IDEA-300213)

New in PhpStorm 2022.2.2 Build 222.4167.33 (Sep 29, 2022)

  • Added: support for remote interpreters for Rector (WI-66504)
  • Fixed: ESLint 8.23 fatal error (WEB-57089)
  • Fixed: control + click in VSC paths dropdown (IDEA-298409)
  • Fixed: drag and drop for multiple selections (IDEA-298747)
  • Fixed: running Rector on wsl path (WI-67468)
  • Fixed: auto format tables in Markdown files (IDEA-262735)
  • Fixed: missing Codeception “reporters” option (WI-65867)
  • Fixed: wrong indentation when pasting (IDEA-299336)
  • Fixed: sending cookies via the HTTP client to subdomains (IDEA-230876)
  • Fixed: missing option for line comments (IDEA-283781)
  • Fixed: commit getting stuck (WI-62509)
  • Fixed: failing Jest tests for Angular projects (WEB-56303)
  • Fixed: Incorrect indent for array element with ?? operator (WI-67807)
  • Fixed: Remote SSH target run fails (IDEA-297442)
  • Fixed: Autocomplete popup is not shown in Data Editor filter field after restart (DBE-16138)

New in PhpStorm 2022.2.2 Build 222.4167.22 RC (Sep 9, 2022)

  • Fixed: Incorrect indent for array element with ?? operator (WI-67807)
  • Fixed: Remote SSH target run fails (IDEA-297442)
  • Fixed: Autocomplete popup is not shown in Data Editor filter field after restart (DBE-16138)

New in PhpStorm 2022.2.2 Build 222.4167.9 Preview (Sep 8, 2022)

  • Added: support for remote interpreters for Rector (WI-66504)
  • Fixed: ESLint 8.23 fatal error (WEB-57089)
  • Fixed: control + click in VSC paths dropdown (IDEA-298409)
  • Fixed: drag and drop for multiple selections (IDEA-298747)
  • Fixed: running Rector on wsl path (WI-67468)
  • Fixed: auto format tables in Markdown files (IDEA-262735)
  • Fixed: missing Codeception “reporters” option (WI-65867)
  • Fixed: wrong indentation when pasting (IDEA-299336)
  • Fixed: sending cookies via the HTTP client to subdomains (IDEA-230876)
  • Fixed: missing option for line comments (IDEA-283781)
  • Fixed: commit getting stuck (WI-62509)
  • Fixed: failing Jest tests for Angular projects (WEB-56303)

New in PhpStorm 2022.2.1 Build 222.3739.61 (Aug 24, 2022)

  • This release includes fixes for a possible freeze due to com.jetbrains.php.lang.psi.elements.impl.VariableImpl#VISITOR_RESULT_CACHE_LOCK [WI-67938], and a fix for another edge case of Xdebug issue [WI-68060] mentioned in the post-mortem part of the previous blog.
  • Other notable changes and bug fixes in this build include:
  • Added: Vite aliases in vite.config support [WEB-55332]
  • Added: Start Listening for PHP Debug Connections on the main toolbar in new UI [IDEA-295100]
  • Fixed: Terminal tab name resets when activating [IDEA-297207]
  • Fixed: Suggesting wrong imports because of partial export field support in package.json [WEB-56387]
  • Fixed: Code style formatting for php “Chained method calls” -> “Place ‘;’ on new line” when assigning to variable [WI-65960]
  • Fixed: Non-ASCII characters inspection not working properly for comments inside arrays [WI-67624]
  • Fixed: “Calling static trait member directly is deprecated” shouldn’t highlight the late static binding call [WI-64642]
  • Fixed: Accessing static trait members: quick-fix Replace with ‘self::’ access doesn’t make the inspection go [WI-64659]
  • Don’t suggest running Rector when there is no configuration file in project [WI-67425]
  • Rector: Use closest rector config when run rector from project tree via right mouse button click [WI-67806]

New in PhpStorm 2022.2.1 Build 222.3739.28 Preview (Aug 5, 2022)

  • Post-mortem for broken debugging in PhpStorm 2022.2:
  • In PhpStorm 2022.2, we’ve implemented WI-56517 Display __toString() representation on an object in the debug Variables pane if the method is present.
  • As it turned out, in some cases, the debugger has a weird presentation of objects on eval((string)). It works fine in Xdebug 3.1+ since it has a special handler that mutes possible errors. However, in Xdebug 3.0 and below, some types of code break the debugger’s internal state and lead to an incorrect step over.
  • Below is a technical summary of the issue for those who are curious about what happened:
  • Xdebug had a bug that basically breaks further ‘step_over‘ commands by passing invalid eval commands. This bug was fixed in 3.1, but present in all previous versions.
  • In 2022.2 We’ve implemented feature WI-56517 that shows __toString representation of the object in the debug panel. This feature is implemented by passing the eval((string)expression) command at the start of debug sessions.
  • It turned out that there are a number of invalid inputs that happened to be produced by this command:
  • Xdebug returns private properties from a parent class in a format that is not suitable for plain evaluation.
  • :: instead of $this in case of static method (issue WI-67023).
  • The combination of these factors resulted in a broken step over.
  • The WI-67891 Step Over broken for Xdebug 3.0.* for static methods and private properties from parent classes bug was reported to us during the EAP cycle, and we’re sorry for letting it slip through the net and into the stable release.
  • We apologize for the inconvenience this bug might have caused. This is why we are releasing a fix in this Preview build as soon as we could have, just 4 days after the release.
  • We have also introduced additional quality gates to make sure such regressions don’t make it into future releases.
  • In case you have any questions or suggestions, do not hesitate to contact us via the comments under this post, or just by tweeting at us @phpstorm.
  • Other notable changes and bug fixes in this build:
  • Fixed: Garbled Japanese kanji characters in markdown(+mermaid) preview [IDEA-289431]
  • Vite aliases in vite.config support [WEB-55332]
  • Fixed: Terminal tab name resets when activating [IDEA-297207]
  • Fixed: Terminal tab name is set as shell path/directory path by default and it’s too long [IDEA-290225]
  • Fixed: Code style formating for php “Chained method calls” -> “Place ‘;’ on new line” does not work correctly when
  • assigning to variable [WI-65960]
  • Fixed: Functions with type signatures including `this` keyword suggested to be static [WEB-47928]
  • Fixed: Rector doesn’t work when vendor dir is located in a subfolder [WI-66976]
  • Rector: Add ability to run rector on multiple selected in the project tree directories [WI-67178]
  • Fixed: Method name completion does not work for first-class callables [WI-67267]
  • Support new blade directives: @pushif, @vite, @vitereactrefresh [WI-67385]
  • Fixed: Blade: Reformat code removes FQDNs from injections made by Laravel Idea [WI-67458]

New in PhpStorm 2022.1.4 Build 221.6008.9 RC (Jul 15, 2022)

  • Fixed: External diff tools settings being lost after IDE restart (IDEA-296696)
  • Fixed: High CPU usage during AsciiDoc editing (IDEA-296241)
  • Fixed: Permanently disabled Run Git Hooks checkbox (IDEA-264817)
  • Fixed: a crash on Mac OS High Sierra with version 2022.1.3 (IDEA-296489)

New in PhpStorm 2022.2 222.3345.21 Beta (Jul 15, 2022)

  • Fixed: Sync with Local: diff is presented even if synchronization is successful [WI-66143]
  • PHP Notice marks Rector run as failed [WI-67418]
  • Fixed: Bookmarks tool window: Options are missing in the Options menu [IDEA-297355]
  • Fixed: Bookmarks tool window: Create and Edit buttons are disabled on the toolbar [IDEA-297338]
  • Fixed: Run anything ctrl shortcut not working after disabling plugin [IDEA-297080]
  • Fixed: Refactor this menu no longer showing rename.... as first option ... [IDEA-296961]
  • Fixed: Docker compose exec fails to execute any script if there is an interpreter option containing $ [WI-67210]
  • Fixed: Rector: support expected arguments completion for ruleWithConfiguration [WI-67150]
  • Fixed: Reload phpinfo when run quality tool and current phpinfo is not available [WI-67121]

New in PhpStorm 2022.2 222.3244.18 EAP 6 (Jul 5, 2022)

  • Mockery support
  • Enhanced inspection configuration
  • Improvements to our Vue and Angular integrations
  • And more

New in PhpStorm 2022.2 222.3153.10 EAP 5 (Jun 23, 2022)

  • @var support in return statements
  • Support for WebSockets and GraphQL in the HTTP client
  • Enhancements for Docker
  • And more

New in PhpStorm 2022.2 222.3048.13 EAP 4 (Jun 20, 2022)

  • Highlighting failed test assertions
  • Clickable URLs in PHP, JSON, YAML, and .properties string values
  • Alternative php.ini configuration for individual runtimes
  • Code Completion settings available from the code completion popup
  • New Description field for mnemonic bookmarks

New in PhpStorm 2022.2 222.2964.63 EAP 3 (Jun 15, 2022)

  • Enum generation from the 'New Class' dialog
  • A new shortcut to change font size globally
  • Improved quality tools configuration

New in PhpStorm 2022.2 222.2680.8 Preview (May 27, 2022)

  • New features related to generics
  • Rector support
  • Quality-of-life improvements for working with PHP

New in PhpStorm 2022.1.2 221.5787.6 Preview (May 23, 2022)

  • Broken keyboard navigation in the create new class dialog has been fixed (WI-66414)
  • Invalid suggestion to add a return type to destructors has been removed (WI-66138)
  • Some problems with pasting in specific places in blade files have been fixed (WI-66304)
  • You weren’t able to close or minimize PhpStorm when interacting with UML diagrams on some occasions, that’s been fixed (IDEA-292463)
  • Search everywhere using double shift didn’t work when the terminal has focus and has been fixed (IDEA-290102)

New in PhpStorm 2022.1.1 Build 221.5591.58 (May 23, 2022)

  • Improved blade formatting (WI-37087):
  • The @case and @break directives within a @switch directive weren’t properly formatted by PhpStorm. That’s now fixed.
  • Default property visibility (WI-50274):
  • PhpStorm allows you to define the default property visibility in Settings / Preferences | Editor | Code Style | PHP | Properties Default Visibility. However, when automatically generating a property via the constructor, PhpStorm didn’t set the correct visibility. That’s now fixed.
  • Vite support (WEB-46507):
  • We now support Vite, the “Next Generation Front End Tooling“!
  • Rename dynamic fields (WI-65177, WI-65840):
  • PhpStorm wasn’t able to correctly use rename refactoring combined with dynamic properties. That’s been fixed.
  • Multiline array formatting (WI-61938, WI-65831):
  • We’ve made some improvements to how multiline arrays are auto formatted by PhpStorm.
  • Twig simultaneous delimeter’s editing (WI-65400):
  • When changing a delimiter in a Twig file, PhpStorm will automatically change its corresponding opening and closing delimiter as well. However, this behavior didn’t work when the expression contained a string (which happens often). This now works properly.
  • Wrong visibility when changing visibility during inheritance (WI-65245):
  • PHP allows you to change the visibility of any method or property to a less strict one during inheritance. PhpStorm however didn’t detect these changes in some cases when working with abstract classes.
  • Fix index error in Magento projects (WI-65276):
  • PhpStorm 2022.1 had an issue with broken indices in some Magento projects, causing a Null Pointer Exception after indexing those projects. That’s fixed now.
  • List type in multiline array shapes (WI-65260):
  • PhpStorm 2022.1 added support for multiline array shapes. However, there were still some edge cases where the list notation wasn’t recognised by PhpStorm as a valid type. The list type, by the way, represents continuous, integer-indexed arrays. In other words: values where the array_is_list function returns true.
  • Fixes to psalm-import-type (WI-65312):
  • PhpStorm supports type aliases in doc blocks that you can import and use in other places. However, we didn’t properly detect the use of @psalm-import-type in some cases. That’s now fixed.
  • False-positive inspections (WI-65988, WI-49455, WI-65879):
  • Some inspections marked code with a warning when they shouldn’t. Several similar issues have been fixed.
  • Xdebug “Cannot get property” bugfix (WI-65974):
  • Our Xdebug integration had some issues not being about to show property information in several cases. Those problems are fixed now.
  • Array shapes with single quoted keys (WI-65872):
  • Array shapes weren’t properly detected when using single quoted strings as array keys, that’s fixed now.
  • False-positive warnings about type mismatch for arrays with multiple element types (WI-57903):
  • Docblocks that listed arrays with multiple types weren’t interpreted correctly, causing a bunch of warnings about type mismatches between docblocks and PHP types. These problems are now fixed.
  • FTP sync errors (WI-66158, WI-65678):
  • PhpStorm 2022.1 had some issues when trying to use FTP to sync code between a server and your local development environment. Those issues are now fixed.
  • Rsync errors on Windows (WI-66118):
  • PhpStorm 2022.1 introduced some issues with Rsync on Windows where some files would end up using the wrong paths or where an error would occur when syncing. These problems are now fixed.

New in PhpStorm 2022.1.1 221.5591.26 Preview (May 2, 2022)

  • Blade formatting fixes (WI-37087):
  • The @case and @break directives within a @switch directive weren’t properly formatted by PhpStorm. That’s now fixed.
  • Default property visibility (WI-50274):
  • PhpStorm allows you to define the default property visibility in Settings / Preferences | Editor | Code Style | PHP | Properties Default Visibility. However, when automatically generating a property via the constructor, PhpStorm didn’t set the correct visibility. That’s now fixed.
  • Multiline array formatting (WI-61938, WI-65831):
  • We’ve made some improvements to how multiline arrays are auto formatted by PhpStorm.
  • Twig simultaneous delimeter’s editing (WI-65400):
  • When changing a delimiter in a Twig file, PhpStorm will automatically change its corresponding opening and closing delimiter as well. However, this behavior didn’t work when the expression contained a string (which happens often). This now works properly.
  • Wrong visibility when changing visibility during inheritance (WI-65245):
  • PHP allows you to change the visibility of any method or property to a less strict one during inheritance. PhpStorm however didn’t detect these changes in some cases when working with abstract classes.
  • Fix index error in Magento projects (WI-65276):
  • PhpStorm 2022.1 had an issue with broken indices in some Magento projects, causing a Null Pointer Exception after indexing those projects. That’s fixed now.
  • List type in multiline array shapes (WI-65260):
  • PhpStorm 2022.1 added support for multiline array shapes. However, there were still some edge cases where the list notation wasn’t recognised by PhpStorm as a valid type. The list type, by the way, represents continuous, integer-indexed arrays. In other words: values where the array_is_list function returns true.
  • Fixes to psalm-import-type (WI-65312):
  • PhpStorm supports type aliases in doc blocks that you can import and use in other places. However, we didn’t properly detect the use of @psalm-import-type in some cases. That’s now fixed.
  • Array shapes with single quoted keys (WI-65872):
  • Array shapes weren’t properly detected when using single quoted strings as array keys, that’s fixed now.
  • False-positive warnings about type mismatch for arrays with multiple element types (WI-57903):
  • Docblocks that listed arrays with multiple types weren’t interpreted correctly, causing a bunch of warnings about type mismatches between docblocks and PHP types. These problems are now fixed.
  • FTP sync errors (WI-66158, WI-65678):
  • PhpStorm 2022.1 had some issues when trying to use FTP to sync code between a server and your local development environment. Those issues are now fixed.
  • Rsync errors on Windows (WI-66118)
  • PhpStorm 2022.1 introduced some issues with Rsync on Windows where some files would end up using the wrong paths or where an error would occur when syncing. These problems are now fixed.

New in PhpStorm 2022.1 Build 221.5080.224 (May 2, 2022)

  • Frameworks and languages:
  • Improved support for autocompletion in Blade templates
  • Improved Twig support
  • Improvements to our WordPress support
  • Vue improvements
  • PHP:
  • In-place extract method refactoring
  • Numerous new inspections
  • Static analysis:
  • Multiline and nested array shapes
  • Better psalm and generic annotation support
  • New advanced PHP metadata capabilities
  • IDE:
  • Several Markdown editor improvements
  • New Notifications tool window
  • Updates to the HTTP client
  • Improvements to VCS integration
  • Improved Docker interface
  • Updated structural search and replace
  • Evenly split tabs
  • Hidden tab labels in debugger
  • Code reformatting in LightEdit mode
  • New composer project wizard
  • Remote development updates
  • WebDAV support
  • Improved rsync support

New in PhpStorm 2021.3.3 Build 213.7172.28 (Mar 18, 2022)

  • Fixed: IDE freezes and hangs when indexing WSL projects [IDEA-286059]
  • Added: Ability to generate file name of file templates [IDEA-127570]
  • Added: Shortcut for switching editor tabs switches projects tabs on Big Sur [IDEA-261595]
  • Fixed: PuTTY SSH keys (.ppk) support [IDEA-284623]
  • Fixed: Code style formating for php “Chained method calls” -> “Place ‘;’ on new line” does not work correctly when assigning to variable [WI-62622]
  • Fixed: Xdebug: “Cannot get property” (since PHP 8.1) [WI-64532]
  • Fixed: No type inference on instanceof === false [WI-64663]
  • Fixed: Rename of a promoted property does not change parameter name in another file [WI-64676]

New in PhpStorm 2021.3.1 Build 213.6461.83 (Jan 18, 2022)

  • Trusted projects:
  • This release introduces the concept of trusted projects, designed to mitigate the risks associated with working with projects from unknown and untrusted sources.
  • When you open a project, PhpStorm doesn’t execute any code from it and checks whether it is trusted or from a trusted location. If the project currently is not trusted, the IDE will ask you to choose whether to open it in safe mode or full-trust mode.
  • If you open a project in safe mode, many IDE features, such as error highlighting, will be disabled. However, you can still browse the project’s contents and open its source files in the editor.
  • The IDE will also warn you about all potential code execution, which includes running Composer commands and refreshing the versions for configured test frameworks and PHP command-line tools.
  • To avoid showing warnings for every project, PhpStorm lets you define trusted locations under Preferences/Settings | Build, Execution, Deployment | Trusted Locations. Projects in directories specified as “Trusted Locations” are always considered trusted. To ensure that you get the untrusted project warnings only when something out of the ordinary is happening, it is recommended adding the directory where you usually create projects to trusted locations.
  • If you want to disable the untrusted project warnings, you can add your machine’s root directory to the trusted locations. But since this could potentially leave you open to an attack, it is generally not recommended.
  • Notable updates in this build:
  • Other notable changes:
  • Fixed: Yarn PnP: Indirect dependencies are not indexed (WEB-42178 +34)
  • Fixed: Tailwind 3: Completion for classes doesn’t work (WEB-53284 +23)
  • Fixed: Accidental tool window drag’n’drop instead of resizing (IDEA-274904 +19)
  • Fixed: Incorrect results in DateTime columns with Clickhouse (DBE-7770 +14)
  • Angular: support events from custom EventManagerPlugin (WEB-47399 +13)
  • Support v-bind CSS function in Vue Single-File Components. (WEB-52425 +13)
  • Fixed: ESLint 8.0: doesn’t work with YarnPnP (WEB-52594 +13)
  • Fixed: Sass @use / @import statements without tilde aren’t being resolved correctly (WEB-53120 +13)
  • Provide the text search in the Quick Documentation (Ctrl + Q) (IDEA-152644 +9)
  • Fixed: @import in LESS does not resolve packages in node_modules if `~` is omitted (WEB-49795 +7)
  • Fixed: Performance problem after running http tests (IDEA-278252 +6)
  • Fixed: HTTPRequest: client.global.set broken inside client.test callback (IDEA-283799 +6)
  • Fixed: @import in scss does not resolve packages in node_modules (WEB-30607 +5)
  • Fixed: Directory content is not shown in Bookmarks list (IDEA-283144 +5)
  • Add support for conditional optionallity of parameters in stubs (WI-61718 +3)

New in PhpStorm 2021.3 Build 213.5744.279 (Dec 17, 2021)

  • Full support for PHP 8.1:
  • Enums
  • Readonly properties
  • Intersection types
  • New return type: `never`
  • Final constants
  • `new` operator in initializers
  • First-class callables
  • Deprecations
  • Generics in PHP:
  • Improved support for Doctrine Collections
  • Support for future Laravel 9 collections
  • Infer generic types from constructor
  • Support for the phpstan-* annotation for templates
  • Improved refactorings:
  • Drag and drop support for the Move Class refactoring
  • Inline function or method
  • Inline variable
  • Introduce (extract) variable
  • Remote Development:
  • Faster and better deployment:
  • Support for `rsync`
  • Retry for failed uploads
  • Speedup for SFTP/FTP/FTPS with multithreaded connection
  • Upload all opened files
  • Quickly switch default server for project
  • Proxy support for SSH connections
  • HTTP Client:
  • Support for text streams and JSON streams
  • Binary responses
  • Output redirection to custom file or directory
  • Support for HTTP request identifiers
  • UI Updates:
  • New Bookmarks tool window
  • Source preview for Show Usages
  • Improved Markdown support
  • VCS:
  • Align diff highlighting
  • Checkout and Rebase onto Current for remote branches
  • Reorganized VCS settings
  • New ‘Push All up to Here’ action

New in PhpStorm 2021.2.3 Build 212.5457.49 (Oct 15, 2021)

  • Fixed: Updating indexes on every startup if IDE was closed with OS shutdown (IDEA-275337)
  • Fixed: Find in Path: “File mask” list is empty (IDEA-236785)
  • Fixed: Analyse code on commit is very slow with PHPStan/Psalm enabled (WI-61393)
  • Fixed: Quality Tools are run on Commit | Analyze Code despite that the inspection profile has them disabled (WI-61481)
  • Fixed: Complete Current Statement for Closures/anonymous functions doesn’t add a semicolon (WI-61003)

New in PhpStorm 2021.2.2 Build 212.5284.49 (Oct 3, 2021)

  • Angular 12 inline scss support (WEB-51018)
  • Regular expression support in sqlite (DBE-10115)
  • Fixed: Tailwind autocompletion in *.blade.php files (WEB-51764)
  • Fixed: Tailwind CSS support on Mac M1 with Node.js 15.x (WEB-52401)
  • ESLint 8.0 support (WEB-52236)

New in PhpStorm 2021.2.1 Build 212.5080.71 (Sep 3, 2021)

  • Fixed: Re-arrange did not reorder the method with modifiers and name both [WI-30563]
  • Fixed: CSS class completion doesn’t work great with Tailwind 2.1 in “jit” mode. [WEB-50318]
  • Vue 3: Support new without ref sugar [WEB-49000]
  • Usage of PSR-2 comment suggestion on no-break switch cases [WI-32123]
  • Fixed: Freeze on opening project from WSL2 [IDEA-]273398
  • Fixed: Showing failed PHPUnit test as passing with incorrect log output (on WSL) [WI-46570]
  • Fixed: Splash is not shown in 2021.2 [IDEA-]270204
  • Support inference based on IteratorAggregate [WI-61438]
  • Fixed: Add property quick fix adds property without dollar sign [WI-34398]
  • Enable breadcrumbs by default [WI-59237]
  • Support phpstan-* annotation for templates (@phpstan-template/@phpstan-param/@phpstan-return, …) [WI-57959]

New in PhpStorm 2021.2 Build 212.4746.100 (Jul 30, 2021)

  • PHP:
  • Basic support for generics in PHP
  • PHP 8.1 Enums
  • One-line array shapes
  • New inspections and quick-fixes
  • Refactoring opportunities inspections
  • Formatter improvements
  • Reworked Extract Method refactoring
  • IDE:
  • Actions on save
  • New Terminal options
  • Run tests before commit
  • Browser pages reload on save
  • Automatic clean-up of caches and log directories
  • Advanced settings
  • Version Control:
  • Unified Show Diff behavior
  • Text search in Local History revisions
  • GPG Signatures
  • Code With Me:
  • Screen sharing

New in PhpStorm 2021.1.4 Build 211.7628.25 (Jul 1, 2021)

  • Fixed: “Stretch to Right”/”Stretch to Left”: Ctrl+Shift+Arrow keys resize the dialog instead of text selection (IDEA-267294 +46)
  • Fixed: jpg, svg images aren’t rendered in quick doc (IDEA-256001 +17)
  • Fixed: “git => compare branch” looses focus before list of branches can be displayed (IDEA-251381 +11)
  • Fixed: IDE resets Windows File Explorer Recent Files list on start (IDEA-266854 +5)
  • Fixed: Plugins settings page steals the focus from search box (IDEA-266927 +4)
  • Fixed: IDE with Projector crashes on restart (IDEA-269591 +3)
  • Fixed: No longer possible to set temporary configurations limit (IDEA-268436 +2)
  • Fixed: Open in new window keybinding does not work in recent files view (IDEA-265789 +1)
  • Fixed: Bad completion for table aliases in INSERT (DBE-10650 +1)
  • Fixed: Back button in Settings may open unexpected page (IDEA-271223)

New in PhpStorm 2021.1.3 Build 211.7442.50 (Jun 2, 2021)

  • Fixed: Editor color scheme keeps getting switched to Darcula (IDEA-265169 +74)
  • Updated the bundled webpack schema (WEB-49925 +13)
  • Fixed: Tab and Indent settings refuse to save (IDEA-267368 +9)
  • Fixed: Undocked Git tool window keeps shrinking (IDEA-266173 +7)
  • Fixed: Memory leak in Docker Container Log Window on OS X Big Sur with Docker 3.3.0 (IDEA-266664 +5)
  • Support row security policies (DBE-6276 +5)
  • Fixed: Services tab with docker compose eats up a lot of CPU (IDEA-269164 +4)
  • Custom rulesets for PHPCS Fixer can have any name ending with .php_cs (WI-60454)
  • Autoconfigure PHPCS Fixer 3.0 (WI-60300)

New in PhpStorm 2021.1.2 Build 211.7142.44 (May 11, 2021)

  • Fixed: PHP Built-in functions are not recognized after update to 2020.2 (WI-54626 +45)
  • Fixed: A lot of array access to global variable leads to infinite local inspection run (WI-59961 +10)
  • Support new component options syntax in vue-class-component v8 (WEB-47799 +7)
  • Fixed: Cannot infer the correct type for a generic Pipe (WEB-49023 +6)
  • Fixed: Dark theme shows light code completion suggestions (IDEA-266626 +5)
  • Fixed: “property is only written but never read” inspection does not detect usage within array_key_exists() (WI-59800 +4)
  • Support possibility to get actual supported rules/rulesets from PHP CS Fixer tool (WI-42935 +3)
  • Fixed: Open in Terminal open in wrong folder (IDEA-267664 +2)
  • Fixed: PhpStorm freezes on suggestions (WI-59971 +2)
  • Drag and Drop to remote host doesn’t work from “scoped” project window (WI-59447 +2)
  • Fixed: Class named Resource can’t be found (WI-60068 +1)

New in PhpStorm 2021.1.1 Build 211.7036.8 (Apr 18, 2021)

  • Fixed: Find in files not finding occurrences (IDEA-266391 +135)
  • Fixed: Extract Angular component refactoring (WEB-33480 +22)
  • Fixed: Data sharing options screen unnecessary, appears repeatedly (IDEA-186369 +17)
  • Fixed: Project View tool window gets wider after each open/close cycle (IDEA-95456 +16)
  • Fixed: Press-release-hold Alt doesn’t show tool window tabs (IDEA-260589 +15)
  • Fixed: “Open in terminal” is always opening root instead of the project file directory (IDEA-265230 +13)
  • Fixed: Indexing/Search sometimes prefers a bad match compared with an exact one (IDEA-259137 +6)
  • Fixed: Modal alert boxes in Macos Big Sur are bright white even on a dark theme (IDEA-255620 +5)
  • Fixed: Smart keys setting “Replace unnecessary double quotes on paste” replaces necessary double quotes in Doctrine annotations (WI-57993 +3)
  • Fixed: Wrong refactoring ‘Invert ‘if’ statement’ (WI-59552 +1)

New in PhpStorm 2020.3.3 Build 203.7717.64 (Mar 17, 2021)

  • Fixed: Unnecessary backslash escape in triple-backticked bash block (IDEA-258796 +33)
  • Fixed: OSX Keychain is not available on Apple ARM chips (aarch64) (IDEA-258912 +17)
  • Fixed: Diff view detects big diff but change was only small (IDEA-257651 +13)
  • Fixed: Close All But Pinned(IDEA-256044 +11)
  • Fixed: Branch list doesn’t focus item on right click (IDEA-254354 +8)
  • Fixed: MacOS slow and high CPU usage (WEB-48983 +2)

New in PhpStorm 2020.3 Build 203.5981.175 (Dec 22, 2020)

  • PHP 8: support for all language features, and even open-source Custom Attributes.
  • PHPStan and Psalm can detect issues directly in the code editor or in batch mode.
  • Xdebug 3 with streamlined configuration, and Debugger Improvements such as inline watches and interactive hints.
  • HTTP Client can now run Guzzle requests and copy requests as cURL.
  • Collaborative Development lets you share your project with others and work on it together in real-time.
  • In the Editor, you can now render diagrams and charts with Mermaid.js, split tabs easier, and instantly preview files without opening them.
  • All sorts of IDE enhancements: Search Everywhere got some new moves. IDE visual theme stays in sync with the OS. Setting PhpStorm as a default application for opening files.
  • Git stage is now supported as an alternative to changelists.
  • Database Tools bring support for SQL for MongoDB and new data extractors.
  • Tailwind CSS, with coding assistance for Tailwind classes.

New in PhpStorm 2020.2.4 Build 202.8194.11 (Nov 30, 2020)

  • Fixed: “Find” and “Replace” don’t remember text area size (IDEA-248210 +45)
  • Fixed: Big Sur: Opening project in new window results in opening project in another tab (JBR-2879 +36)
  • Fixed: CodeSniffer gets temporary filename instead of real (WI-17740 +23)
  • Fixed: No tests executed when running PHPUnit tests with WSL interpreter (WI-54615 +21)
  • Fixed: Pull-dialog suggests pulling from the last entered branch, instead from tracked branch (IDEA-251554 +18)
  • Fixed: New git repositories do not show up in VCS dialog (IDEA-249948 +4)

New in PhpStorm 2020.2.2 Build 202.7319.77 (Sep 25, 2020)

  • Fixed: No tests executed when running PHPUnit tests with WSL interpreter (WI-54615 +21)
  • Fixed: Exception is thrown on editing code and warnings are stuck (WI-53963 +18)
  • For remotes with github.com GitHub account now used and login is not requested (IDEA-248658 +15)
  • DB connection configuration dialog takes into account ssh tunnel (IDEA-247277 +10)
  • Fixed: File Watcher Not Running Properly for Sass @Use/@Forward (WEB-42904 +7)
  • Custom inspection severities are now rendered correctly (WI-52633 +6)
  • Fixed: Auto-completion for double underscore functions (WI-54771 +5)
  • Fixed: Loading composer packages update availability runs forever with private repositories (WI-54105 +1)
  • Extract class refactoring now makes properties typed for PHP > 7.4 (WI-53412)

New in PhpStorm 2020.2.1 Build 202.6948.87 (Aug 27, 2020)

  • New inspection: missing parameter type (WI-49595 +3)
  • Fixed: Don’t consider variables as undefined based on DFA reachability (WI-54713 +8)
  • Fixed: Method argument is not highlighted when cursor is on a variable in the method body (WI-54558 +8)
  • Fixed: Trait collision false positive in case of usage of insteadof conflict resolution (PHP >= 7.3) (WI-54284 +5)
  • Fixed: Unused import false positive when using parent FQCN as child class namespace (WI-54254 +5)
  • Fixed: Missing return type declaration quick-fix adds the return type before ‘use’ in closures (WI-54474 +1)
  • Fixed: “Extract class” refactoring messes up return types of fluent methods (WI-54550)
  • Don’t suggest to change standalone void to standalone null when void is used in wrong context (WI-54478)

New in PhpStorm 2020.2 Build 202.6397.115 (Aug 13, 2020)

  • PHP 8 Union Types:
  • PHP 8 will have so many new features that to some extent you can almost call it a new language. We’ve started to roll out support for version 8 early, and the first big feature is union types.
  • Union types T1|T2|... can be used wherever types can currently be specified: arguments, properties, or return values. In this case, a variable can accept any of the listed types.
  • Union types have long been used in PHPDoc tags, but now they will really be checked in runtime by the interpreter itself.
  • Switch language level:
  • To see all the features, you need to switch the language version to PHP 8. You can do this manually in settings under Languages & Frameworks | PHP | PHP language level.
  • You can also use the Alt+Enter quick-fix to switch if there is already some code with new features.
  • And if the PHP version constraint is specified in composer.json, PhpStorm will switch automatically.
  • Converting PHPDoc into native union types:
  • You can call the Alt+Enter quick-fix on a PHPDoc tag union type to convert it to a native union type.
  • Remove unnecessary PHPDocs:
  • If a PHPDoc tag contained only a type declaration, it may now be redundant and can be removed with an Alt+Enter quick-fix.
  • We are considering adding the ability to run this fix in the clean-up stage before commit. What do you think? Can it always be considered safe to do so?
  • Type validation:
  • PhpStorm was already able to analyze types and find violations with PHPDoc tags. But with native declarations, these capabilities became much wider.
  • This is especially useful in complex code when violations are not obvious at first sight.
  • Pseudotype false:
  • Some legacy functions may return false in the event of an error. For example, strpos(), array_search(), and 310 other standard functions behave this way.
  • In these cases, the return type could be declared as a union like int|bool, but in fact it would never return true. This is where the new false pseudotype is useful.
  • The false pseudotype can only be used as a part of union type. Otherwise, PhpStorm will highlight it as invalid code.
  • Duplicate and redundant types:
  • Many combinations in type associations are forbidden or simply redundant. For example:
  • bool|false — because false is a part of bool.
  • Foo|Foo or int|string|INT— duplications.
  • object|User — object contains everything else.
  • iterable|array or iterable|Traversable — iterable contains array and Traversable.
  • void — can only be used in the return value and only as a standalone type.
  • false or null — only as part of the union type.
  • All such violations will be highlighted in PhpStorm.
  • Nullable types:
  • The existing ?Type syntax is now considered to be shorthand for Type|null.
  • But you cannot use ? in union types because it causes ambiguity.
  • PhpStorm provides an Alt+Enter quick-fix for this.
  • Type variance in inheritance:
  • There are two rules for methods:
  • The type of the parameter is contravariant, which means it can be expanded.
  • The return type is covariant, which means you can only narrow it down.
  • Type order does not matter here, so Type1|Type2 is equivalent to Type2|Type1.
  • Property type cannot be changed:
  • The type of an inherited property has to match the type of the parent property.
  • New control flow engine:
  • By redesigning the control flow engine we were able to introduce new inspections and fix many old bugs. As a result, PhpStorm now understands code even better than before.
  • Here and there you may notice warning highlights from new inspections. Some of them may require your attention as potential sources of bugs, while fixing others can just make the code clearer and easier to read.
  • Improvements for Composer:
  • Since version 2020.1, it has been possible to manage Composer dependencies directly in the composer.json file in PhpStorm. This release brings a few enhancements.
  • Support for Satis/Packagist custom repositories
  • If you specify a custom source in the "repositories" section, all packages in it will be available for autocompletion, and information about packages and versions will be cached in PhpStorm.
  • Code completion for multiple versions:
  • If there are multiple versions separated by commas or by pipe (||) symbols, PhpStorm will now handle completion correctly.
  • Links to homepage and sources:
  • Each package now has links to its websites in the information popup.
  • Quick access to quality tools configuration:
  • If the list of dependencies contains code quality tools that are supported in PhpStorm, there will be a wrench icon near them that will take you directly to the corresponding section of settings.
  • Improvements for quality tools:
  • PhpStorm 2020.2 introduces a number of useful updates for quality tools.
  • Support for Docker Compose:
  • PHP_CodeSniffer, PHP CS Fixer, and PHP Mess Detector can now be run with docker-compose.
  • Exclude list for PHP_CodeSniffer:
  • If there is an "exclude-pattern" section in ruleset.xml, it will now be taken into account and the specified files will not be analyzed in the IDE.
  • Formatting with a remote interpreter:
  • PHP CS Fixer and PHPCBF can be run via SSH, Docker, Docker Compose, Vagrant, and others.
  • Command Line Tools:
  • All Symfony, Laravel Artisan, Drupal Drush, WP-CLI commands, and Composer scripts can be run very quickly in PhpStorm without opening the terminal.
  • Do this by adding the tool you want to use in the settings under Tools | Command Line Tool Support.
  • Then, by pressing Ctrl-Ctrl you will see the Run anything popup, in which all commands are available with autocompletion.
  • Starting with this release, you don’t even have to configure anything for Symfony, Laravel, and Drush. Just open the project, press Ctrl-Ctrl, and start typing the command.
  • You can now run these tools through any remote interpreter (SSH, Docker, Docker Compose, Vagrant). For example, you can quickly test your application with PHP 8 by adding a Docker Interpreter from the php:rc-cli image.
  • Extract Class refactoring:
  • Classes always look neat and clean at first. But over time, many methods and properties are often added to them. And at some point, you can find a class that is overgrown with an excess of responsibilities.
  • Here it can help to extract a bunch of related methods and properties into a new class. This is exactly what the new Extract Class refactoring offers.
  • Press Ctrl+T on a class member and select Extract class. PhpStorm will prompt you to enter the name of the new class and you can choose more methods and classes to extract.
  • More for PHP:
  • New inspection: Typed property might be unassigned:
  • If a typed property is defined but not initialized, the TypeError error will appear when trying to read it (if there is no magic __get()). PhpStorm will highlight cases where you are reading from uninitialized properties.
  • New inspection: Array used only with write access:
  • Example in SchemaTool.php from doctrine/orm.
  • The $pkColumns array in gatherColumns() method is updated but never read nor returned.
  • Customizing generated getters and setters:
  • Now you can adjust the naming style by choosing between camelCase() and snake_case().
  • The order in which getters and setters are generated is also configurable now.
  • Both options are available in settings under Editor | Code Style | PHP on the Code Generation tab.
  • Correct resolve when several projects are opened in one window:
  • Previously, if you opened multiple projects in one window, you would often see errors about a class being defined multiple times. If you wanted to go to the definition of a class, you had to choose from multiple implementations.
  • Lower priority for symbols from vendor:
  • In the autocompletion list, priority will be given to classes from the project. Entities from a vendor folder and PHAR files will get lower priority.
  • Full support for GitHub pull requests:
  • Basic support for pull requests was introduced in PhpStorm 2018.3. Since then there have been some updates, but many actions still required switching to a browser.
  • In PhpStorm 2020.2 you can manage the entire pull request workflow directly in the IDE!
  • You can go to pull requests from the VCS | Git | View Pull Requests menu or from the toolbar or using the Alt+7 shortcut. The first thing you’ll see will be a list of the available pull requests with search and filtering options.
  • Clicking on a pull request will open detailed information about it – its reviewers, tags, modified files, and timeline.
  • You can work through the whole review flow all at once – start and request a review, comment on changes both at line level and in the whole commit, and submit the review.
  • Under the timeline, you’ll see the results of pre-commit and CI checks.
  • To merge a pull request, you previously had to create a local branch first. This is no longer required and you can now merge straight away from the UI.
  • OpenAPI support:
  • The OpenAPI Specifications plugin is available for all JetBrains IDEs and works starting from this 2020.2 release. It provides highlighting, validation, and navigation in OpenAPI specification files (openapi.yaml/openapi.json and swagger.yaml/swagger.json).
  • It also provides the following features:
  • Swagger UI integration – rendered directly in the IDE window.
  • Code generation.
  • Structural diff for spec files – this can help spot breaking changes.
  • Gutter icons to create HTTP Client requests to endpoints.
  • Autocompletion for endpoints in the HTTP Client.
  • Rename refactoring – if you rename an endpoint in the spec file, it will automatically be renamed in the HTTP client request.
  • Add caret per selected line action:
  • The new Add Caret Per Selected Line action creates carets at the end of each selected line, and deselects the lines. Invoke it using the shortcut Alt+Shift+G on Windows/Linux or ⌥⇧G on macOS.
  • Brand-new Inspection widget:
  • The top right corner of the editor now displays a widget with the number of problems in the current file.
  • You can quickly jump to the next/previous problem by clicking the arrow icons. This was previously achieved with the shortcuts F2 / Shift+F2.
  • In the Inspection widget, you can choose which problems are displayed, for example only syntax errors or all problems.
  • Clicking on the widget will open a new Problems tool window with a list of all problems detected in the file.
  • Git from WSL 2:
  • PhpStorm can now use the Git binary from WSL. Moreover, the IDE itself determines whether the WSL is installed and whether Git is available in it.
  • Settings are available under Preferences | Version Control | Git.
  • ⚠️ Git will only work with WSL 2. Git from WSL 1 is unstable and may cause incorrect results for Git commands, therefore we do not support it.
  • Improved UI to compare branches:
  • PhpStorm allows you to compare any branches and see which commits belong to which branch. To do this, select any branch available in the VCS | Branches popup and choose Compare with Current from the context menu.
  • In PhpStorm 2020.2, information about logs and commits is displayed directly in the editor. This allows more information to be placed on the screen.
  • Updated command dialogs:
  • Dialogs for the merge, pull, and rebase Git commands have been redesigned and unified. Some missing options have been added and you can now see the exact Git command that will be executed.
  • All commands are available in the VCS | Git menu.
  • New action: Drop commit:
  • Unnecessary or temporary local commits can now be removed directly from the PhpStorm log. To do this, call the context menu on a commit and select Drop Commit.
  • New action: Squash commits into one:
  • It is also possible to combine several commits into one. It’s a good idea to do this to clear intermediate results from the history before creating a pull request or pushing changes.
  • Select multiple commits in the log and choose Squash Commits… from the context menu.
  • Database Tools:
  • PhpStorm includes almost all of DataGrip’s features as standard. You can check out What’s new in Database tools for an overview from our colleagues about its new features.

New in PhpStorm 2020.1.3 Build 201.8538.41 (Jul 17, 2020)

  • Notable changes:
  • Fixed: Subpixel(LCD) text is slow with UI font in 2020.1, switching to greyscale antialiasing helps (IDEA-238301 +40)
  • Fixed: Shorten tab names in DataGrid with placement on the right/left (DBE-8336 +11)
  • Fixed: Trait collision false positive in case one trait uses another and overrides the method (WI-53171 +9)
  • Fixed: Database – Adding datasource as DDL – adding whole folders besides files only (DBE-5756 +4)
  • Fixed: UI freeze: com.intellij.openapi.module.impl.ModuleGroupersKt.splitByDotsJoiningIncorrectIdentifiers (IDEA-237974 +2)
  • Fixed: IDE freeze / crash when large file is truncated (IDEA-243589 +1)
  • Fixed: PHPStorm Freezes – Win10 x64 (WI-53220)

New in PhpStorm 2020.1.2 Build 201.7846.90 (Jun 12, 2020)

  • WSL 2 Support:
  • WSL 2 is a new version of the Windows Subsystem for Linux architecture that allows Windows to run Linux binaries. PhpStorm has supported WSL 1 since v2019.3, and now it supports WSL 2 as well.
  • You can run PhpStorm on a Windows machine and target Linux environments without any hassle.
  • To get started, make sure you have enabled WSL on your Windows 10 version 2004 machine, and also make sure you have the Linux distribution of your choice installed. See the installation guide.
  • After installing PHP in your WSL environment, you’re ready to set up PhpStorm. Add a CLI interpreter under File | Settings | Languages & Frameworks | PHP
  • Once this is done, you can use the specified interpreter to run and debug any scripts and to execute Composer commands, PHPUnit tests, and quality tools.
  • One thing that’s still missing is support for Docker via WSL 2 (WI-53396).
  • Do you use WSL 2? Let us know what you think of WSL Support in PhpStorm! What would you like to see improved or added?
  • Other notable changes:
  • Fixed: Idea freezes with AppleSystemUIFont when Event Log is opened (MultilineTreeCellRenderer takes a lot of time doing stringWidth) (IDEA-235635 +39)
  • CSS/SCSS formatter need is now aware of CSS3 grid-layout properties (WEB-10013 +29)
  • Fixed: Some text in “IDE and Plugin Updates” popups in dark themes is gloom (IDEA-227157 +28)
  • Fixed: Wrong project name and path when opening project with shell script (IDEA-228859 +25)
  • Fixed: Scanning node_modules directory with many files freezes IDE on project open (WEB-39488 +11)
  • Fixed: Next/Previous occurrence actions don’t work when Find Usages is open and the focus is in the editor (IDEA-230766 +8)
  • Navigate to File now honors the Sources directories first (IDEA-219697 +7)
  • Fixed: High CPU usage on editing (WEB-45024 +4)
  • Fixed: Incorrect inspection for trait collision for PHP > 7.3 (WI-49707 +3)
  • Fixed: Memory leak / code analysis never finishes for a certain project (WI-51645 +2)
  • Fixed: Fail to parse validation script output on reload php info for vagrant remote interpreter (WI-53016)

New in PhpStorm 2020.1 Build 201.6668.153 (Apr 17, 2020)

  • This major release includes out-of-the-box composer.json support, code coverage with PCOV and PHPDBG, PHPUnit toolbox, new inspections, quick-fixes, and refactorings, advanced grammar checker, and many more benefits.
  • ← New Video Series: PhpStorm Tips with Christoph Rumpel
  • PhpStorm 2020.1 Released: Out-of-the-box composer.json Support, Improved Type Inference, PHPUnit Toolbox, Grazie Grammar Checker, and More
  • Posted on April 14, 2020 by Roman Pronskiy
  • PhpStorm 2020.1 is now available!
  • PhpStorm 2020.1
  • This major release includes out-of-the-box composer.json support, code coverage with PCOV and PHPDBG, PHPUnit toolbox, new inspections, quick-fixes, and refactorings, advanced grammar checker, and many more benefits.
  • If you have only a few minutes, watch the What’s New in 2020.1 video above to get a rundown of the major enhancements. If you have more time to spare, read on for an overview of all the changes and things that you should know about this new version. Fasten your seat belts, though, as we have a ton of GIFs for you!
  • Out-of-the-box composer.json support:
  • All dependency management actions are now available directly as you edit the composer.json file.
  • You can create a new file composer.json from the context menu or by pressing Ctrl(⌘)+N. The template of this file can be found in Preferences/Settings | Editor | File and Code Templates.
  • Add package as a dependency:
  • To add a dependency, simply start typing a vendor and a package name, and PhpStorm will suggest appropriate options.
  • The version field will offer the available versions of this package. For now, you’ll have to add caret or other symbols for the version range manually, but in the next releases, we will implement this too.
  • Autocompletion will also work if you need to specify the required version of PHP and extensions.
  • In the popup for packages, you can find information from packagist.org about the number of downloads and stars. All the information about packages and their versions is taken from packagist.org and cached.
  • Install and update packages:
  • If there is no composer.lock file and no packages are installed, PhpStorm will highlight the require and the require-dev section names. You can click the Install button in the toolbar above the editor. Or you can use the intention by pressing Alt(⌥)+Enter and choosing Install packages.
  • And if only some of the packages are downloaded, PhpStorm will highlight those that are not yet installed. By pressing Alt(⌥)+Enter over them you can choose Update package or Update all packages.
  • Next to the version requirement, the currently installed package version will be indicated in grey.
  • Navigate to files and folders:
  • You probably know that with Ctrl(⌘)+Click or Ctrl(⌘)+B you can go to entity definition or search for usages.
  • In the composer.json it’ll work too. If you Ctrl(⌘)+Click a package, the corresponding directory will be highlighted in the Project Tree. And if it’s a file, then it will be opened in the editor.
  • Ctrl(⌘)+Click or Ctrl(⌘)+B on any link in the composer.json will open it in your browser.
  • Autocompletion in autoload(-dev):
  • Autocompletion works for namespaces and folder paths based on information from classes and directory structure of the project.
  • Ctrl(⌘)+Click and Ctrl(⌘)+B to navigate to files and folders also works here.
  • Improvements for scripts:
  • First of all, navigation to files/folders/methods also works. Secondly, aliases for commands are supported. And third, scripts can be run from the editor by pressing the gutter_play_tr button near the script name.
  • This automatically creates a Run configuration. It means that you can re-run the script by a shortcut Ctrl(⌃)+R, which is quite convenient for debugging.
  • Code Quality Tools:
  • If there is a FriendsOfPHP/PHP-CS-Fixer in the dev dependencies, PhpStorm will check whether the corresponding inspection is enabled and if the ruleset is set. If not, you can call Alt(⌥)+Enter to fix it
  • Improvements to PHP type inference:
  • The type inference engine is the core of PhpStorm, and several noticeable changes were made to it.
  • Highlighting redundant @var tags:
  • Adding @var tags is a good way to suggest PhpStorm the variable’s type. But since we are constantly improving the type inference, some of such declarations may well be redundant because PhpStorm already knows the type. Such cases will be highlighted and they can be removed using the Alt(⌥)+Enter and “Remove @var” quick-fix.
  • Tracking null types is a tough task, and there were places where PhpStorm failed. In 2020.1 PhpStorm knows when a variable can be null and when not. Check these examples.
  • Code Completion for an initialized array:
  • Suppose you have an array with known elements, and later you try to iterate through it. The code completion didn’t work here before, because information about the type was lost. Now in 2020.1 everything works.
  • Code completion in array_map/filter:
  • Now there is completion for array items in the body of the closures passed to array_map() and array_filter().
  • Code coverage with PCOV and PHPDBG
  • You can get a code coverage report by using Xdebug. But since it is primarily a debugger, it has a significant overhead. To speed up reporting of coverage, you can use lighter tools such as the krakjoe/pcov extension or PHPDBG which is built-in with PHP 5.6+.
  • Both are now supported in PhpStorm. You need to create a Run configuration for tests and select the desired coverage driver in the settings.
  • PHPUnit Toolbox:
  • In the recently released PHPUnit 9, many features have been removed or declared obsolete. To speed up migration and prevent errors, we have added lots of inspections and quick-fixes.
  • Also, you can now create a new test for a class very quickly by calling Alt(⌥)+Enter on the class declaration and selecting Create New PHP Test.
  • Metadata:
  • Advanced Metadata allows you to provide PhpStorm with additional information about your project and thus improve code completion and inspections. For example, this feature is used in the Symfony plugin and in Laravel IDE Helper.
  • A number of improvements for metadata have been added to PhpStorm 2020.1.
  • The parameter index in override, map, and type directives:
  • Previously, it was possible to adjust the behavior of the first argument of functions using override(), map(), and type(). In PhpStorm 2020.1, you can now specify an arbitrary parameter index:
  • Access to properties via __get:
  • If you’re trying to access properties through the magic __get() method, the information about the type is lost. You could use additional @var or @property tags, but that didn’t always work. Now you can specify everything through metadata.
  • Completion for keys to the objects implementing ArrayAccess:
  • Metadata supported ArrayAccess objects, but only suggested the type of values. Now the available keys can also be autocompleted.
  • Custom output points:
  • PhpStorm considers functions like die() and exit() or throwing exceptions as terminating execution. But applications may have more complex exit points, for instance, a simple dd() or a trigger_error() with an E_USER_ERROR argument.
  • In PhpStorm 2020.1, you can mark any functions as exit points and this will correct the control flow analysis accordingly.
  • Icons for functions with changed behavior via metadata:
  • Functions whose behavior was changed using override(), exitPoint(), or expectArguments() will now have an icon in the gutter. Clicking the icon will open the .phpstorm.meta.php file where the behavior was modified.
  • Machine Learning-assisted ranking for code completion:
  • Ranking suggestions using machine learning makes it possible to sort the list of suggestions in a more optimal way.
  • How to see ML in action?
  • By default, the ML-assisted ranking is disabled. We don’t want it to take our jobs! To enable it, go to Preferences/Settings | Editor | General | Code Completion and turn on two options: Rank completion suggestions based on Machine Learning and PHP.
  • If you enable the option Show position changes in completion popup, then the autocompletion list will show how the order of items has changed.
  • New inspections:
  • A private property can be replaced with a local variable
  • The definition of a property will be highlighted if it is used in only one method and is overwritten immediately. In such cases, you can call the “Replace property with local variable” quick-fix with Alt(⌥)+Enter.
  • Unnecessary property initialization:
  • Let’s assume that a private property has a default value in a class, but some other value is immediately assigned to the property in the constructor. In this case, the default value is redundant and only adds noise.
  • Unused initializations will be highlighted and can be removed by using the “Remove redundant initializer” quick-fix with Alt(⌥)+Enter .
  • Redundant ternary operator:
  • Phpstorm highlights trivial ternary expressions, and you can replace them with simpler ones using the Alt(⌥)+Enter quick-fix.
  • Excess pass-by-ref:
  • Using a pass-by-ref may have unexpected consequences, and this is one of the reasons Nikita Popov proposed to Allow explicit call-site pass-by-reference annotation in PHP.
  • In the meantime, PhpStorm 2020.1 will highlight parameters that are declared as pass-by-ref but are not used as such. They can be safely removed with a quick-fix with Alt(⌥)+Enter.
  • Removing an unnecessary PHPDoc block that only has type declarations is now easy thanks to a corresponding quick-fix.
  • Note that by default the inspection is at the Info level, which means that it will not highlight anything. If you want redundant PHPDoc blocks to be highlighted, set the severity level for the Redundant PHPDoc comment inspection to Weak Warning or higher in Preferences/Settings | Editor | Inspections.
  • Updated “Move method” refactoring:
  • Sometimes it makes sense to transfer a method to another class. If this method is used many times throughout the project codebase, PhpStorm can help you.
  • Previously, it was necessary first to make the method static, and then to call another action to move a method. In PhpStorm 2020.1, the “Move method” refactoring is redesigned into one atomic action. Unnecessary operations and popups have been removed and everything is done in a single step.
  • Put the cursor over the method and press F6 (or Ctrl(⌃)+T, 3). Then select a destination class and you’re done.
  • PHP Debug in HTTP Client:
  • You no longer need to bother with parameters or install the extension in your browser to start debugging. All you need to do is create an HTTP request in an .http file and execute it by running the PHP Debug command, which is available under the Alt(⌥)+Enter menu, or by clicking the play icon gutter_play_tr. As a result, an XDEBUG_SESSION cookie will automatically be added to the request.
  • And a few more little things for PHP:
  • @deprecated elements are displayed as strikethrough in the Structure tree view.
  • Highlighting for matching tags
  • Jump to opening/closing braces Shift+Ctrl+M (⌃+M)
  • Lexer customization for Twig:
  • Sometimes you may need to change the tag characters for Twig templates, for example if you are using Angular, which has the same syntax.
  • You can now do this under Preferences/Settings | Languages & Frameworks | PHP | Twig.
  • IDE:
  • Advanced spell checker and grammar corrector:
  • The Grazie plugin is included in PhpStorm out of the box. It checks your text not only for spelling errors, but for grammar and style errors, too. Grazie supports 16 languages, and all checks are performed locally without sending your data to third parties.
  • By default, checks are enabled for text files.
  • You can also enable Grazie for all string literals, comments, PHPDoc blocks, and commit messages.
  • For PHP, you can turn Grazie on under Settings/Preferences | Editor | Proofreading | Grammar.
  • LightEdit Mode:
  • Sometimes you may need to quickly look through or fix a file. In these cases, opening a whole IDE for a single file seems like overkill, but you still want to make use of highlighting and other helpful features you are used to. That is precisely what LightEdit mode is here for.
  • It works like this: if you open a file from the command line or OS context menu and PhpStorm is not running, the file will open in LightEdit. Note, though, that if a full-fledged instance of PhpStorm is active, the file will just open in it.
  • Zen Mode:
  • This mode combines Distraction Free and Fullscreen modes, allowing you to take a deep dive into your code without any distractions.
  • Enable it under View | Appearance | Enter Zen Mode.
  • UI:
  • Split terminal sessions:
  • Instead of opening new tabs and switching between them, you can now split the window and open several sessions in one tab. To do this, select Split Horizontally / Vertically from the context menu.
  • IntelliJ Light theme:
  • The light theme has been updated. It is now unified to look the same on all operating systems, and its name has been changed to IntelliJ Light.
  • Customization of the status bar:
  • From the context menu, you can select which information to display on the status bar at the bottom right-hand corner of your IDE window.
  • Configuration:
  • Unified SSH configuration:
  • Previously, you had to reconfigure your SSH connection each time you reused it in the deployment, Remote interpreters, or SSH terminal.
  • You can now add or edit all SSH connections in a single place under Preferences/Settings | Tools | SSH Configurations and then use them wherever, and as often as, you need them.
  • The path to IDE configs has changed
  • More flexibility when sharing Run Configurations:
  • Previously, Run Configurations were stored in the .idea folder, which many people add to .gitignore in its entirety (there is a better alternative though). Now you can choose any location to save the Run configuration and share it with your teammates through your VCS. This can be especially convenient when onboarding new employees: pull the project, open it in PhpStorm, and run it with a single click.
  • To do this, select the Store as project file option in the Run/Debug configuration dialog, and then click on the gear icon to select the desired path in the project.
  • Version Control:
  • New Commit tool window:
  • The Commit window is available in non-modal mode and is displayed on the left. This way, it does not keep you from viewing and working on other files while the commit is being prepared. This also allows more information about changes to be displayed on the screen.
  • The new Commit tool window is enabled by default for new users but disabled for those who previously had PhpStorm installed.
  • You are welcome to activate it with the option Use non-modal commit interface under Preferences / Settings | Version Control | Commit.
  • Improved Git branches workflow:
  • The current Git branch is specified in the bottom right corner of the IDE window. If you click on it, the window will open the VCS | Git | Branches dialog.
  • We’ve added a search bar here. The Refresh button updates the list of remote branches. And we’ve added an indicator for each commit: incoming (blue) or outgoing (green).
  • Installing Git from IDE:
  • When you clone an existing Git repository, PhpStorm will look for the Git executable on your machine, and will offer to download and set it up for you if the IDE can’t locate it.
  • Reworked Interactive Rebase workflow:
  • Git Rebase allows you to rewrite commit history. Now you can quickly get rid of “temporary” commits, correct a message, or rearrange the order of the commits. Of course, you can do all this manually from the terminal, but in PhpStorm you can also see the content of the commit and the diffs.
  • To start, you need to select the desired base commit in the commit history. Then select Interactively rebase from here from the context menu.
  • Database Tools:
  • PhpStorm includes almost all the features of DataGrip out of the box. You can check out What’s new in Database tools for an overview from our colleagues about its new features.

New in PhpStorm 2019.3.1 Build 193.5662.63 (Jan 10, 2020)

  • Customizable auto-insertion of short tags:
  • PhpStorm 2019.3 introduced the ability to automatically insert

New in PhpStorm 2019.2.5 Build 192.7142.51 (Nov 13, 2019)

  • Changes:
  • Fixed: Docker-compose remote interpreter configuration does not show selected service when opened (WI-49002 +17)
  • Fixed Next/Previous Method navigation (WI-49463 +8) (WI-49543 +5)

New in PhpStorm 2019.2.4 Build 192.7142.41 (Nov 1, 2019)

  • Notable changes:
  • Implemented Non-destructive “safe write” mode (IDEA-152607 +60)
  • Fixed: PhpStorm freezes randomly since 2019.2.2 patch installed (WI-48825 +30)
  • Fixed: @method self doesn’t work anymore at EAP (WI-48657 +9)
  • Fixed: Git merge –no-commit still performs a commit if conflicts occur (IDEA-220499 +7)
  • Fixed: property inspection switches parent and child class (WI-48766 +5)
  • Excluding vendor/jetbrains/phpstorm-stubs folder (WI-47963 +1)
  • JBR 11 was updated to 11.0.4+10-b304.77:
  • Fixed opening projects on macOS Catalina (JBR-1721 +44)
  • Fixed font rendering in text fields on macOS Catalina (JBR-1863 +7)

New in PhpStorm 2019.2.1 Build 192.6262.66 (Sep 10, 2019)

  • Fixed: Plugin: Deployment _ FTP..: Uploading to … after commit:… No files or folders found to process WI-47590
  • Fixed: PHP Test: PHPUnit test results output contains a lot of newlines WI-46964
  • Fixed: PHP Inspections: “Add method” quick fix produces invalid result on the second invocation WI-47674
  • Fixed: User Interface: Internal error when trying to open a project from Finder via “Open With” IDEA-218766
  • Fixed: User Interface: Menu icons are blurry on Retina screen IDEA-156617
  • Fixed: Version Control. Git: IDEA should “git commit” when possible instead of always calling “git commit –only” with paths IDEA-83415
  • Fixed: User Interface: Tab scrolling with touchpad has inverse axis IDEA-218645
  • JavaScript. Frameworks: Vue: support details of components defined with @Component syntax WEB-31693
  • Linters: Enable support for a different tslint configuration for *.spec.ts files WEB-33171

New in PhpStorm 2019.1.3 Build 191.7479.51 (Jun 19, 2019)

  • Notable changes:
  • Added support for AngularDart (WEB-11590 +29)
  • Fixed: Changes to my Environment Variables in Configurations aren’t saving (IDEA-208525 +26)
  • Fixed: Cmd+E/Ctrl+E doesn’t work for iterating recent files after Recent/Recent edited files union (IDEA-207554 +25)
  • Fixed: Pressing the down key in the floating navigation bar closing it, but should show siblings in a popup (IDEA-209930 +17)
  • Added warning against usage of private fields in Angular Templates (WEB-34765 +9)
  • Fixed: Performance problem with suggestions and completion in project with redux-saga (WEB-38032 +6)
  • JBR 8 was updated to v1.8.0_202-release-1483-b58:
  • Fixed the issue with the IDE hanging after logging in on macOS: JBR-1393.
  • Fixed the rotation of fonts with embedded bitmaps: JBR-1397.

New in PhpStorm 2019.1 Build 191.6183.95 (Apr 5, 2019)

  • PHP:
  • Debug uncompiled Twig and Laravel 5.8+ Blade templates.
  • Locate dead code with the brand new Unused Declaration inspection.
  • Improved Autocompletion thanks to new .phpstorm.meta.php features.
  • Reworked Imports to remove unnecessary FQN when possible and ability to sort use statements by length or alphabetically.
  • Code Cleanup for PHP to cleanse the code and safely remove redundancies automatically.
  • New coloring options for primitive parameter types and class member visibility.
  • Improved PHPDoc styling configuration.
  • New Refactorings, Intentions, and Quick-Fixes:
  • Move To Class Refactoring allows to move functions and constants to a class, even several at once.
  • String Juggling Toolbox has a few new useful string manipulations.
  • New Remove Unused Variable intention.
  • New Method may be ‘static’ quick-fix which is available when the method does not use any instance references.
  • Other Improvements:
  • Reuse Docker containers with docker-compose exec support.
  • Cleaned up default PHP file template – no more “Created by PhpStorm”.
  • Support for control-click on @inheritdoc to go to inherited docblock.
  • New intention to add existing class field to a constructor.
  • Set breakpoints on enter and exit of an internal PHP function (call breakpoint).
  • Possibility to analyze files strictly even w/o declare(strict_types = 1).
  • Version Control:
  • Fixup and Squash actions in Git log.
  • Cherry-pick a file from a commit in Git log.
  • New “Uncheck all” checkbox for partial Git commits.
  • Switch sides of compared files in diff viewer.
  • Ignored files and folders are now highlighted
  • Force push is a bit safer with –force-with-lease option
  • IDE:
  • Recent Locations Popup.
  • New UI Themes: Dark Purple, Gray, Cyan light, or even your own one.
  • Soft-wraps depending on file type.
  • Saving a project as a template.
  • Web Technologies:
  • Updated docs for CSS & HTML and browser compatibility info from MDN.
  • Improved TypeScript support in Vue apps.
  • New inspections for Angular apps.
  • New JavaScript and Node.js debugger console.
  • Database Tools:
  • Support for new databases: Greenplum, Vertica, and Apache Hive.
  • Code completion supports combined statements for CREATE and DROP.
  • Support for DEFINER attributes in MySQL and MariaDB.
  • Support for the Oracle mode in MariaDB.
  • You can now set the default folder for a project.

New in PhpStorm 2018.3.5 Build 183.5912.26 (Mar 7, 2019)

  • Bug fixes worth noting:
  • Fixed: Updating plugins in an offline environment no longer works with new marketplace and custom plugin repository (IDEA-205032 +29)
  • Fixed: Apparent off-by-one displaying DATE datatype (DBE-5850 +23)
  • Fixed: Color Scheme reverts to Darcula from *custom* light color theme after restart if IDE theme is Darcula (IDEA-202248 +17)
  • Fixed: Angular template files are not recognized if “@angular/core” is not a direct dependency (WEB-36722 +3)

New in PhpStorm 2018.3.4 Build 183.5429.47 (Feb 10, 2019)

  • Bug fixes worth noting:
  • Fixed: Unfinished Nowdoc breaks IDE (WI-45024)
  • Fixed: Can’t upload to Ipv6 only host (WI-44743)
  • Fixed: Open In Find Window does a Replace All (IDEA-193236 +33)
  • Fixed: Task Server password/token is lost after closing IDE (IDEA-205214 +20)
  • Fixed: Code Generation settings are not being saved (IDEA-204185 +5)
  • Fixed: 2018.3 slowness (IDEA-202661 +5)

New in PhpStorm 2018.3.3 Build 183.5153.36 (Jan 10, 2019)

  • Support Cucumber.js version: 3.0.0+ (WEB-30241 +24)
  • Fixed: Git Fetch is fetching only the current remote (IDEA-201193 +19)
  • Fixed: Terminal doesn’t source “.bash_profile” anymore in PyCharm (IDEA-201459 +9)
  • Fixed: Shortcut cannot be changed or disabled in Run Anything (IDEA-197444 +6)
  • Fixed: SOE exception for dql recurrent alias declaration (WI-44816)
  • Fixed: PHP Script run configuration holds an absolute working directory path when shared (WI-44276)

New in PhpStorm 2018.3 Build 183.2940.15 EAP (Sep 27, 2018)

  • Multiline search in Find in Path:
  • PhpStorm supported multiline search in a file for a long time. And now you’ll get a similar experience when searching throughout the project
  • Other platform updates worth noting:
  • Stop flashing the window (IDEA-130368 +26)
  • Angular2: no completion for component properties in non-inline templates if file names are different (WEB-22168 +7)

New in PhpStorm 2018.2.3 Build 182.4323.68 (Sep 27, 2018)

  • Fixed: LoginToGithub dialog invoked from CloneRepository dialog hides immediately (IDEA-192530)
  • Fixed: Vue.j SFC not resolving @ alias with @vue/cli 3 if vue is installed in a subfolder (WEB-32564)
  • More options creating Angular Cli project (WEB-27290)
  • Fixed: Cannot attach to remote nodejs after upgrade to 2018.2 (WEB-34537)

New in PhpStorm 2018.2.3 Build 182.4323.23 EAP (Aug 29, 2018)

  • Highlights:
  • Support for list reference assignment
  • instanceof allows literals as the first operand in PHP 7.3
  • Disable SQL injections for strings with DQL identifiers
  • The most important changes from the PHP side include:
  • Support for list reference assignment
  • instanceof allows literals as the first operand in PHP 7.3
  • Disable SQL injections for strings with DQL identifiers
  • From the platform side the update brings the following features and bugfixes:
  • Fixed: LoginToGithub dialog invoked from CloneRepository dialog hides immediatelly
  • Fixed: Vue.j SFC not resolving @ alias with @vue/cli 3 if vue is installed in a subfolder
  • For more details, read the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/08/phpstorm-2018-2-3-eap-182-4323-23/

New in PhpStorm 2018.2.2 Build 182.4129.45 (Aug 22, 2018)

  • PHPCS and PHPMD usability improvements:
  • PhpStorm continues to simplify usage of PHP_CodeSniffer and Mess Detector. Now, if you have phpcs.xml or phpmd.xml config files in the root of your project, they will be automatically detected and grasped by the PhpStorm.
  • The IDE now also detects custom rules/rulesets for PHPMD specified in composer.json.
  • Platform updates:
  • The database tools now support ClickHouse out of the box
  • Fixed a couple of performance issues related to VCS (file scanning)
  • Notable bug fixes and features worth mentioning:
  • PHPUnit: rerun failed tests now works for “defined in configuration file” run configuration (WI-43181)
  • Debugging maximum simultaneous connection configuration setting is now set to 3 by default (WI-35124)
  • Fixed completion for interfaces (WI-43157)
  • Fixed “Deployed file is on server removed” stuck since update 2018.2 (WI-42992)
  • Full list of bug-fixes and improvements in the release notes at:
  • https://confluence.jetbrains.com/display/PhpStorm/PhpStorm+2018.2.2+Release+Notes

New in PhpStorm 2018.2.1 Build 182.3911.43 (Aug 8, 2018)

  • The most important changes from PHP side include:
  • New option to disable requirement of PHP bundled extensions in composer.json
  • Fixed: Autocompletion became very slow in 2018.2 (FQCN completion)
  • Fixed: Docker-compose PHPunit with coverage fails
  • From the platform side, the update brings the following features and bug fixes:
  • Web Browsers: support Microsoft Edge browser
  • EJS indent options for control block content
  • Fixed: IAE in EffectPainter2D
  • Fixed: No easy way to delete a run configuration
  • Fixed: Auto-imports should prefer symlinked file from node_modules to actual file in monorepo projects
  • Fixed: [TypeScript] RxJS lettable operator type inference support
  • Fixed: closure library code completion for goog.provide symbols inside goog.module is not working
  • Many other features and changes from IntelliJ platform and web are also included.

New in PhpStorm 2018.2.1 Build 182.3911.19 EAP (Aug 1, 2018)

  • Highlights:
  • Fixed: Extension is missing in composer.json inspection: new setting to disable requirement of PHP bundled extensions
  • Fixed: HHVM: PHPStorm do not stop at breakpoints with XDebug remote debug (Run -> Debug)
  • Fixed: Inspections: Extension check in composer.json is case sensitive
  • The most important changes from the PHP side include:
  • Fixed: Extension is missing in composer.json inspection: new setting to disable requirement of PHP bundled extensions
  • Fixed: Extension check in composer.json is case sensitive
  • Fixed: HHVM: PHPStorm do not stop at breakpoints with XDebug remote debug (Run -> Debug)
  • From the platform side the update brings the following features and bugfixes:
  • Web Browsers: support Microsoft Edge browser https://youtrack.jetbrains.com/issue/WEB-19564
  • Fixed: No easy way to delete a run configuration
  • Fixed: IAE in EffectPainter2D

New in PhpStorm 2018.2 Build 182.3684.42 (Jul 28, 2018)

  • PHP Language:
  • Custom postfix completion templates
  • FQCN completion
  • Structural Search and Replace for PHP
  • Improved SQL Injections
  • The new presentation for Quick Documentation
  • Jumping outside closing bracket/quote with Tab
  • New Inspections and Quick Fixes
  • PHP Refactorings:
  • Move Instance Method Refactoring
  • New Add @method tag quick fix for Undefined method
  • Add method quick fix now inserts parameter type hints
  • PHP Tools:
  • Simple CodeSniffer/MessDetector setup
  • PHPUnit composite configuration
  • HTTP Client:
  • Support for environment variables in the request body
  • Support for POST request body formatting
  • Bug:
  • WI-801 — No way to forcefully cancel "remote deployment" when quitting
  • WI-5467 — Find usages: Find usages doesn't work on multiresolved references for class members
  • WI-16274 — New PHPUnit Test: Class to test shouldn't show test classes during completion
  • WI-16315 — Navigate Test: Test class Name is empty for traits and interfaces
  • WI-16820 — Copying of large file can't be stopped
  • WI-18980 — Connectionproblems with FTPS. "session reuse required" on vsFTPd/pure-ftd/proftpd
  • WI-26657 — Structural search doesn't allow to skip code without using a pattern variable
  • WI-27301 — PHPUnit method and class are not updated on rename refactoring
  • WI-28758 — Changing severity for the inspection "Undefined namespace" has no effect
  • WI-29142 — Allow to rename old style constructor to new style
  • WI-30970 — SFTP: password is not asked after failing with wrong one
  • WI-31329 — False-positive "Unused private field/constant" for a private method that is used in a trait
  • WI-31639 — PhpStorm freezes on applying settings for invalid server that is being tested
  • WI-33132 — Overridden methods completion: doesn't change self return type
  • WI-33517 — SFTP private key passphrase behaves inconsistent for auto-uploading
  • WI-34506 — False "The 'use' keyword must be declared in the outermost scope" after importing a class
  • WI-34792 — Missing yield statement when yield is used in expression context
  • WI-34806 — PHP 7 style class member lambda call ($x->a)(); not marked as syntax error with Language level 5.6
  • WI-35790 — Parameter type: anonymous class with __invoke method is not callable
  • WI-37620 — No groups and lists in Skipped Paths
  • WI-37926 — Unused argument in the construct method
  • WI-38037 — Redundant catch clause: doesn't analyze calls in case of multi-resolve
  • WI-38366 — $this is not accessible in static context inside anonymous functions
  • WI-38660 — SQL Injection: dynamic values are not supported for fields and table names
  • WI-39796 — Command Line Tools Console - Cursor Not In Run Box
  • WI-40311 — PHPUnit: it's not possible to select and run 2 tests from "Test" action
  • WI-40350 — Language Injection Settings 404 or There is no help
  • WI-40365 — REST Client: Allow Request Body for DELETE/GET/OPTIONS request
  • WI-40376 — Editor-based REST Client hangs forever with "Accessing" status
  • WI-40804 — Inline method: recursive method is not detected and removed
  • WI-41081 — Right passphrase sticks for sftp server
  • WI-41103 — Array destructuring does not allow complex expressions in keys
  • WI-41230 — Settings Synchronization: Language Level remains blocked after removing the content of composer.json
  • WI-41235 — Browse button for relative paths in PHP Includes opens installation directory
  • WI-41267 — Default local Code Sniffer configuration is lost after CS configuration for remote interpreter is created
  • WI-41289 — CodeSniffer/MessDetector settings page UI is broken
  • WI-41311 — Keywords as method names causes the code style formatter to add extra spaces.
  • WI-41313 — PHPUnit: Class completion in run configuration editor does't take into account namespaces
  • WI-41318 — PHPUnit method and class are not updated on move refactoring
  • WI-41380 — array_fill to foreach inspection works only when constants or variables are used as value in method call
  • WI-41381 — for loop to array_fill inspection works only when constants or variables are used as value for array
  • WI-41384 — array_map to foreach inspection doesn't work when callback function is passed as variable or text
  • WI-41392 — array_filter to foreach inspection doesn't work when callback function is passed as variable or text
  • WI-41416 — Disabled extensions stubs doesn't work with class aliases
  • WI-41501 — Unused parameter: is not reported in child class constructor if parent class also has contructor
  • WI-41502 — Unused parameter: shown for magic methods
  • WI-41540 — Codeception plugin requires "PHP Remote Interpreter" plugin to function and it's not listed as depended
  • WI-41569 — array_fill does not work if function call is used as 3rd argument
  • WI-41630 — PHPUnit: 'Generate test method' breaks code when class is placed inside namespace with braces
  • WI-41759 — PHPUnit composite run configuration: alternative patterns base path is enabled after test class renamed
  • WI-41859 — PHPUnit: there is no way to select library test for Composite configuration
  • WI-41897 — Structural search: can't find shortcut operators
  • WI-41898 — Structural Search: can't find "for" loop
  • WI-41953 — Flip variable and type quick fix works incorrectly with compound type
  • WI-41956 — Quick documentation for @method displays parameter wrong when self is used as parameter
  • WI-41977 — Regression - "Undefined class object" in method docblock in namespaced class with lang level 7.2
  • WI-42011 — Invalid path for auto-detected PHPMD/PHPCS on Windows
  • WI-42013 — PHPMD: UI issues in Inspection settings
  • WI-42014 — Changing type (application vs project level) of interpreter doesn't change the type of PHPCS/PHPMD
  • WI-42034 — SSR works with if/elseif incorrectly
  • WI-42035 — SSR: while pattern matches all expressions below
  • WI-42036 — SSR: do-while can't be found
  • WI-42037 — SSR: can't match code inside case statements
  • WI-42039 — SSR: import statements can't be found
  • WI-42042 — SSR can't find list expression
  • WI-42043 — SSR can't find isset/empty expression
  • WI-42045 — SSR: type constrains doesn't support namespaced type
  • WI-42047 — SSR: can't match $a[] expression
  • WI-42067 — PHPUnit: multiple dataset triggers run of the whole method
  • WI-42094 — SSR: Can't find switch statement
  • WI-42113 — PhpStorm freezes on test connection to invalid sftp server on Windows
  • WI-42117 — Show composer log action stops to work
  • WI-42119 — Parameter type checking false positives in the case of variadic arguments
  • WI-42125 — Parameter type checking FN in the case of variadic args (except first one)
  • WI-42126 — SSR: invalid matching of parenthesized expression
  • WI-42131 — FQCN autocompletion doesn't work for "throw new"
  • WI-42143 — SSR: can't find exression with goto
  • WI-42147 — Parameter type: parameter with default value should accept void type
  • WI-42202 — Jump outside closing bracket/quote: doesn't work for function/method calls if function/method was completed
  • WI-42209 — Move instance: doesn't handle self/parent references
  • WI-42210 — Move instance: target visibility is not checked
  • WI-42227 — Parameter type: default value forces the caller to have the same type
  • WI-42234 — Move instance: doesn't replace $this
  • WI-42236 — PhpUnit: Dataset indicator is lost in composite run configuration after test method rename
  • WI-42253 — Remote Host menu works not as expected
  • WI-42269 — HTTP Client: Allow request body for HEAD requests
  • WI-42272 — SSR: type array matches nothing
  • WI-42274 — SSR: callable type matches nothing
  • WI-42275 — SSR: iterable type matches nothing
  • WI-42279 — UI freezes when accessing PHP -> debug options
  • WI-42303 — Wrong PHP version if composer.json defines contraints (Logical AND)
  • WI-42312 — False positive 'Method not accessible' when move instance to parent class with protected method
  • WI-42328 — SSR: can't find 2 assignments when value of second referenced to the first one
  • WI-42345 — Ask to reenter invalid password from Remote Host refresh
  • WI-42352 — Support composer version "!=" range in minimal language level sync
  • WI-42375 — SSR: C[] type can't be found
  • WI-42386 — Selection of deployment path mappings doesn't ask for password
  • WI-42419 — False positive spellchecker inspection warning when there is injection of string to another string with html tags
  • WI-42429 — Unable to deploy from Mac via SFTP to a IPv6-only host
  • WI-42485 — Concatenation with PHP_EOL produce syntax error
  • WI-42486 — Run query in console: doesn't allow to the substitute the values of variables
  • WI-42544 — Docker-compose PHPunit with coverage fails
  • WI-42568 — False positive 'Method not accessible' when move instance to child class from parent with non public visibility
  • WI-42586 — Concatenation injections not filtered when injected via "Inject language or reference"
  • WI-42587 — Concatenation injections not filtered when injected via PHPDoc
  • WI-42588 — Concatenation injections not filtered when injected via comment
  • WI-42594 — Unable To "Rerun Failed Tests" Using PHPUnit
  • WI-42611 — PHPUnit: composite scope does't allow to choose elements via "project" tab
  • WI-42612 — PHPUnit: allow to choose dataset for elements in composite scope
  • WI-42624 — Variables in injections either empty or repeat the concatenated variable
  • WI-42687 — PHPUnit composite run configuration: Don't add dataset for test method in run command if dataset was empty in run configuration
  • WI-42760 — Using $this when not in object context
  • WI-42807 — New test dialog: show method for interfaces and traits
  • WI-42831 — Extension is missing in composer.json: don't report extensions enabled by default
  • WI-42873 — 2018.2 Test Framework Docs Still mention PHPUnit by Web Server?
  • WI-42928 — Wrong link in documentation
  • Cosmetics:
  • WI-41758 — PHPUnit run configuration: Mistake in "Use alternative patterns base path" label
  • WI-41815 — New Quick Doc doesn't show whether function is @internal or @deprecated when there's no description
  • WI-41973 — PHPUnit show test class icons instead of test files in project view
  • WI-42111 — Remove Path From Excluded has empty icon
  • WI-42139 — Introduce abstract exception icon
  • WI-42219 — Wrong before preview type for postfix 'throw' action
  • WI-42317 — Code sniffer, Mess Detector inspections should be included in some group
  • Exception:
  • WI-41095 — Exception is thrown on HTTP request if *.http is marked as plain text
  • WI-41727 — PHPUnit: NPE after right click on multiple selected folders when PHPUnit run configuration exists
  • WI-41895 — Structural search: exception is thrown on attempt to specify Reference target contstraints template
  • WI-42070 — NPE When invoke SSR (new $aClass$())->$var$();
  • WI-42381 — Exception when try to move instance method with self from anonymous class
  • WI-42455 — SSR: SOE while searching class reference which does't typed var
  • WI-42748 — Exception on saving DeepMethodCalls (test file with 6K chained method calls)
  • Feature:
  • WI-6000 — Autocomplete: Suggest fields of class when completing params in __construct()
  • WI-7523 — New refactoring: move instance method
  • WI-9399 — Warn on optional parameter before required/obligatory parameter
  • WI-9554 — PHPUnit: Find and run all PHPUnit tests for selected method (use @covers and @depends tags to find tests)
  • WI-13197 — New quickfix: "Add PHPDOC @method annotation" for methods that don't exist.
  • WI-17482 — Inspection to validate order of elements in @var/@property
  • WI-18727 — Completion: list dynamic methods too (basically all) after :: in second completion invocation (1c-Bitrix style)
  • WI-19525 — Allow to create PHP Code Sniffer/Mess Detector settings on project level
  • WI-24527 — FQCN autocompletion
  • WI-24538 — Structural Search: provide predefined templates for PHP
  • WI-26986 — Substituting the values of *constants* in literals with SQL language injections
  • WI-27222 — Postfix completion: add more postfix templates (implement custom templates)
  • WI-28043 — Allow Inspections to Recognize Non-Static Methods Called as Static as Valid
  • WI-35064 — Option to set document_root folder in preferences/directories
  • WI-35509 — Unsupported replacement pattern: partial and expressions patterns are not supported
  • WI-35699 — Warn about extensions used in project but not listed in composer.json
  • WI-37565 — New inspection: Warn about useless default value in function declaration
  • WI-38403 — Remove arbitrary restriction of maximum 1 argument in Advanced Metadata
  • WI-39271 — Provide %w as default user parameter applicable to PHP
  • WI-39374 — Postfix completions for creating local variable in php
  • WI-39493 — Make tool setup easier: CodeSniffer, MessDetector
  • WI-40372 — Add option to decode Unicode entities and character escapes in JSON replies.
  • WI-40409 — Support environment variables in request body
  • WI-40450 — Support formatting for POST request body
  • WI-41089 — PHPUnit: allow to run whole abstract test class
  • WI-41219 — PHPUnit: ability to run several inheritors of abstract test
  • WI-41443 — Group use: allow to place closing and opening braces on the same line
  • WI-41750 — PHPUnit: allow to run multiple test entries in "test" dashboard
  • WI-41900 — Sync with Deployed: add processed file status (progress bar) while loading
  • WI-41978 — Structural search: support type contraints
  • WI-42307 — SSR: allow to search fields without wrapping class
  • WI-42471 — Auto-detect custom ruleset of PHPCS from composer.json and turn the corresponding inspection on
  • WI-42520 — Add parameter type hints to the created method while invoking "add method" quickfix
  • Performance Problem:
  • WI-36515 — IDEA 11.1.3 hanging up on text changes
  • WI-39163 — Speed up spellchecking by hunspell dictionaries
  • WI-42218 — PhpStorm CPU usage while doing nothing when Listen For Debug connection is enabled
  • Task:
  • WI-41939 — PHP quick fixes produce inconsistent PSI
  • WI-42233 — Blade: support @canany, @elsecanany, @endcanany blade directive
  • Usability Problem:
  • WI-10013 — File deployment: after failed Cancel attempt uploaded file is not shown in Remote Host
  • WI-13779 — PHPUnit: completion suggests method name in its own @depends tag
  • WI-16313 — Improve sorting in 'navigate to test' list
  • WI-20152 — Generate unit test method action inserts at incorrect position
  • WI-27049 — Support @codeCoverageIgnore completion in regular classes
  • WI-33918 — Invalid unsaved password is cleared inconsistently
  • WI-36742 — Remote Host - warning dialog to allow canceling of unintended directory or file moves (on the localhost/project side PhpStorm already does this)
  • WI-38999 — PHPUnit: use PHPUnit Test Method template while generating method via completion
  • WI-41133 — Language Level inspection can override Composer synchronization
  • WI-41173 — Navigation via Quick filter in Execution statistics requires 5 presses of arrow
  • WI-41281 — PHPUnit: enable camel-case completion in 'class' field
  • WI-41462 — Full Docker output shown with remote interpreter
  • WI-41645 — Replace browse button for method fields in Behat/Codeception/PHPSpec config editors with completion
  • WI-41680 — PHPUnit: Disable ability to create run configuration for anonymous classes
  • WI-41694 — There is no way to provide authentication data on clicking browse button in ''Root path''
  • WI-41749 — Auto-detect paths to tools when composer install is done
  • WI-41817 — Provide references to parameter types in Quick Documentation
  • WI-41818 — Provide references to parameter types in Quick Documentation for @method
  • WI-41825 — PHPUnit: disable "Use alternative patterns base path" by default
  • WI-41857 — PHPUnit: filtering by method name doesn't work
  • WI-41896 — Structural search: doesn't allow to skip code inside statements
  • WI-41954 — Move Non-canonical order of elements inspection to PHPDoc category
  • WI-42254 — @covers autocompletion should not include parenthesis
  • WI-42617 — Undefined Method Quick Fix - Add Ability to remove "add @method tag" or change order or options
  • WI-42783 — Save $_SERVER['DOCUMENT_ROOT'] relative to project_root

New in PhpStorm 2018.2 Build 182.3684.41 RC (Jul 24, 2018)

  • PHP Language:
  • Custom postfix completion templates
  • FQCN completion
  • Structural Search and Replace for PHP
  • Improved SQL Injections
  • The new presentation for Quick Documentation
  • Jumping outside closing bracket/quote with Tab
  • PHP Refactorings:
  • Move Instance Method Refactoring
  • New Add @method tag quick fix for Undefined method
  • Add method quick fix now inserts parameter type hints
  • PHP Tools:
  • Simple CodeSniffer/MessDetector setup
  • PHPUnit composite configuration
  • HTTP Client:
  • Support for environment variables in the request body
  • Support for POST request body formatting

New in PhpStorm 2018.2 Build 182.3684.40 Public Preview (Jul 18, 2018)

  • PhpStorm 2018.2 brings major improvements in its support for web technologies, such as new JavaScript intentions, completion for events in Vue.js, Typescript 2.9 and 3.0 support, the new Code Coverage feature that helps to find unused code, extract and convert React component refactoring, new integrations with Angular CLI, global file
  • watchers, rerunning failed tests, and much more.
  • IntelliJ Platform has provided this release with lots of new features as well as bug-fixes. Specifically, updated UI with brand new icons, dark title bars on macOS, and TouchBar support for MacBooks, as well as improved VCS support with new ways to resolve merge conflicts, enhancements in VCS Log, support for multiple GitHub accounts, and even more.
  • Database tools have been improved with the new SQL formatter, source code migration, query plan diagram, custom data sources and more.
  • PHP Language:
  • Custom postfix completion templates
  • FQCN completion
  • Structural Search and Replace for PHP
  • Improved SQL Injections
  • The new presentation for Quick Documentation
  • Jumping outside closing bracket/quote with Tab
  • New Inspections and Quick Fixes
  • PHP Refactorings:
  • Move Instance Method Refactoring
  • New Add @method tag quick fix for Undefined method
  • Add method quick fix now inserts parameter type hints
  • PHP Tools:
  • Simple CodeSniffer/MessDetector setup
  • PHPUnit composite configuration
  • HTTP Client:
  • Support for environment variables in the request body
  • Support for POST request body formatting
  • Fixed issues:
  • WI-28043 — Allow Inspections to Recognize Non-Static Methods Called as Static as Valid
  • WI-7523 — New refactoring: move instance method
  • WI-38660 — SQL Injection: dynamic values are not supported for fields and table names
  • WI-35064 — Option to set document_root folder in preferences/directories
  • WI-24527 — FQCN autocompletion
  • WI-40372 — Add option to decode Unicode entities and character escapes in JSON replies.
  • WI-40409 — Support environment variables in request body
  • WI-19525 — Allow to create PHP Code Sniffer/Mess Detector settings on project level
  • WI-26986 — Substituting the values of *constants* in literals with SQL language injections
  • WI-5467 — Find usages: Find usages doesn't work on multiresolved references for class members
  • WI-36742 — Remote Host - warning dialog to allow canceling of unintended directory or file moves (on the localhost/project side PhpStorm already does this)
  • WI-18980 — Connectionproblems with FTPS. "session reuse required" on vsFTPd/pure-ftd/proftpd
  • WI-40365 — REST Client: Allow Request Body for DELETE/GET/OPTIONS request
  • WI-39493 — Make tool setup easier: CodeSniffer, MessDetector
  • WI-27222 — Postfix completion: add more postfix templates (implement custom templates)
  • WI-39796 — Command Line Tools Console - Cursor Not In Run Box
  • WI-27738 — Improper type checking of type-hinted parameter when default value is set
  • WI-41462 — Full Docker output shown with remote interpreter
  • WI-17482 — Inspection to validate order of elements in @var/@property
  • WI-31329 — False-positive "Unused private field/constant" for a private method that is used in a trait
  • WI-9554 — PHPUnit: Find and run all PHPUnit tests for selected method (use @covers and @depends tags to find tests)
  • WI-34792 — Missing yield statement when yield is used in expression context
  • WI-40450 — Support formatting for POST request body
  • WI-41977 — Regression - "Undefined class object" in method docblock in namespaced class with lang level 7.2
  • WI-41978 — Structural search: support type contraints
  • WI-13197 — New quickfix: "Add PHPDOC @method annotation" for methods that don't exist.
  • WI-37926 — Unused argument in the construct method
  • WI-9399 — Warn on optional parameter before required/obligatory parameter
  • WI-16820 — Copying of large file can't be stopped
  • WI-38366 — $this is not accessible in static context inside anonymous functions
  • WI-42760 — Using $this when not in object context
  • WI-18727 — Completion: list dynamic methods too (basically all) after :: in second completion invocation (1c-Bitrix style)
  • WI-42783 — Save $_SERVER['DOCUMENT_ROOT'] relative to project_root
  • WI-24538 — Structural Search: provide predefined templates for PHP
  • WI-29142 — Allow to rename old style constructor to new style
  • WI-33918 — Invalid unsaved password is cleared inconsistently
  • WI-35699 — Warn about extensions used in project but not listed in composer.json
  • WI-38037 — Redundant catch clause: doesn't analyze calls in case of multi-resolve
  • WI-42429 — Unable to deploy from Mac via SFTP to a IPv6-only host
  • WI-42594 — Unable To "Rerun Failed Tests" Using PHPUnit
  • WI-20152 — Generate unit test method action inserts at incorrect position
  • WI-26657 — Structural search doesn't allow to skip code without using a pattern variable
  • WI-34506 — False "The 'use' keyword must be declared in the outermost scope" after importing a class
  • WI-35509 — Unsupported replacement pattern: partial and expressions patterns are not supported
  • WI-39271 — Provide %w as default user parameter applicable to PHP
  • WI-41230 — Settings Synchronization: Language Level remains blocked after removing the content of composer.json
  • WI-42202 — Jump outside closing bracket/quote: doesn't work for function/method calls if function/method was completed
  • WI-6000 — Autocomplete: Suggest fields of class when completing params in __construct()
  • WI-13779 — PHPUnit: completion suggests method name in its own @depends tag
  • WI-33517 — SFTP private key passphrase behaves inconsistent for auto-uploading
  • WI-34806 — PHP 7 style class member lambda call ($x->a)(); not marked as syntax error with Language level 5.6
  • WI-40376 — Editor-based REST Client hangs forever with "Accessing" status
  • WI-40311 — PHPUnit: it's not possible to select and run 2 tests from "Test" action
  • WI-40350 — Language Injection Settings 404 or There is no help
  • WI-42113 — PhpStorm freezes on test connection to invalid sftp server on Windows
  • WI-42218 — PhpStorm CPU usage while doing nothing when Listen For Debug connection is enabled
  • WI-42279 — UI freezes when accessing PHP -> debug options
  • WI-42303 — Wrong PHP version if composer.json defines contraints (Logical AND)
  • WI-42328 — SSR: can't find 2 assignments when value of second referenced to the first one
  • WI-42486 — Run query in console: doesn't allow to the substitute the values of variables
  • WI-42782 — Additional spaces inserted for multiple type separator in @method
  • WI-42831 — Extension is missing in composer.json: don't report extensions enabled by default
  • WI-10013 — File deployment: after failed Cancel attempt uploaded file is not shown in Remote Host
  • WI-36515 — IDEA 11.1.3 hanging up on text changes
  • WI-16274 — New PHPUnit Test: Class to test shouldn't show test classes during completion
  • WI-16313 — Improve sorting in 'navigate to test' list
  • WI-16315 — Navigate Test: Test class Name is empty for traits and interfaces
  • WI-27049 — Support @codeCoverageIgnore completion in regular classes
  • WI-27301 — PHPUnit method and class are not updated on rename refactoring
  • WI-28758 — Changing severity for the inspection "Undefined namespace" has no effect
  • WI-30970 — SFTP: password is not asked after failing with wrong one
  • WI-31639 — PhpStorm freezes on applying settings for invalid server that is being tested
  • WI-35790 — Parameter type: anonymous class with __invoke method is not callable
  • WI-37565 — New inspection: Warn about useless default value in function declaration
  • WI-37620 — No groups and lists in Skipped Paths
  • WI-38999 — PHPUnit: use PHPUnit Test Method template while generating method via completion
  • WI-39163 — Speed up spellchecking by hunspell dictionaries
  • WI-39374 — Postfix completions for creating local variable in php
  • WI-40804 — Inline method: recursive method is not detected and removed
  • WI-41081 — Right passphrase sticks for sftp server
  • WI-41089 — PHPUnit: allow to run whole abstract test class
  • WI-41095 — Exception is thrown on HTTP request if *.http is marked as plain text
  • WI-41103 — Array destructuring does not allow complex expressions in keys
  • WI-41133 — Language Level inspection can override Composer synchronization
  • WI-41173 — Navigation via Quick filter in Execution statistics requires 5 presses of arrow
  • WI-41219 — PHPUnit: ability to run several inheritors of abstract test
  • WI-41235 — Browse button for relative paths in PHP Includes opens installation directory
  • WI-41267 — Default local Code Sniffer configuration is lost after CS configuration for remote interpreter is created
  • WI-41281 — PHPUnit: enable camel-case completion in 'class' field
  • WI-41289 — CodeSniffer/MessDetector settings page UI is broken
  • WI-41311 — Keywords as method names causes the code style formatter to add extra spaces.
  • WI-41313 — PHPUnit: Class completion in run configuration editor does't take into account namespaces
  • WI-41318 — PHPUnit method and class are not updated on move refactoring
  • WI-41380 — array_fill to foreach inspection works only when constants or variables are used as value in method call
  • WI-41381 — for loop to array_fill inspection works only when constants or variables are used as value for array
  • WI-41384 — array_map to foreach inspection doesn't work when callback function is passed as variable or text
  • WI-41392 — array_filter to foreach inspection doesn't work when callback function is passed as variable or text
  • WI-41416 — Disabled extensions stubs doesn't work with class aliases
  • WI-41443 — Group use: allow to place closing and opening braces on the same line
  • WI-41501 — Unused parameter: is not reported in child class constructor if parent class also has contructor
  • WI-41502 — Unused parameter: shown for magic methods
  • WI-41569 — array_fill does not work if function call is used as 3rd argument
  • WI-41630 — PHPUnit: 'Generate test method' breaks code when class is placed inside namespace with braces
  • WI-41645 — Replace browse button for method fields in Behat/Codeception/PHPSpec config editors with completion
  • WI-41680 — PHPUnit: Disable ability to create run configuration for anonymous classes
  • WI-41694 — There is no way to provide authentication data on clicking browse button in ''Root path''
  • WI-41727 — PHPUnit: NPE after right click on multiple selected folders when PHPUnit run configuration exists
  • WI-41750 — PHPUnit: allow to run multiple test entries in "test" dashboard
  • WI-41758 — PHPUnit run configuration: Mistake in "Use alternative patterns base path" label
  • WI-41759 — PHPUnit composite run configuration: alternative patterns base path is enabled after test class renamed
  • WI-41815 — New Quick Doc doesn't show whether function is @internal or @deprecated when there's no description
  • WI-41817 — Provide references to parameter types in Quick Documentation
  • WI-41818 — Provide references to parameter types in Quick Documentation for @method
  • WI-41825 — PHPUnit: disable "Use alternative patterns base path" by default
  • WI-41857 — PHPUnit: filtering by method name doesn't work
  • WI-41859 — PHPUnit: there is no way to select library test for Composite configuration
  • WI-41895 — Structural search: exception is thrown on attempt to specify Reference target contstraints template
  • WI-41896 — Structural search: doesn't allow to skip code inside statements
  • WI-41897 — Structural search: can't find shortcut operators
  • WI-41898 — Structural Search: can't find "for" loop
  • WI-41900 — Sync with Deployed: add processed file status (progress bar) while loading
  • WI-41939 — PHP quick fixes produce inconsistent PSI
  • WI-41953 — Flip variable and type quick fix works incorrectly with compound type
  • WI-41954 — Move Non-canonical order of elements inspection to PHPDoc category
  • WI-41956 — Quick documentation for @method displays parameter wrong when self is used as parameter
  • WI-41973 — PHPUnit show test class icons instead of test files in project view
  • WI-42011 — Invalid path for auto-detected PHPMD/PHPCS on Windows
  • WI-42013 — PHPMD: UI issues in Inspection settings
  • WI-42014 — Changing type (application vs project level) of interpreter doesn't change the type of PHPCS/PHPMD
  • WI-42034 — SSR works with if/elseif incorrectly
  • WI-42035 — SSR: while pattern matches all expressions below
  • WI-42039 — SSR: import statements can't be found
  • WI-42045 — SSR: type constrains doesn't support namespaced type
  • WI-42047 — SSR: can't match $a[] expression
  • WI-42067 — PHPUnit: multiple dataset triggers run of the whole method
  • WI-42070 — NPE When invoke SSR (new $aClass$())->$var$();
  • WI-42111 — Remove Path From Excluded has empty icon
  • WI-42117 — Show composer log action stops to work
  • WI-42119 — Parameter type checking false positives in the case of variadic arguments
  • WI-42125 — Parameter type checking FN in the case of variadic args (except first one)
  • WI-42126 — SSR: invalid matching of parenthesized expression
  • WI-42131 — FQCN autocompletion doesn't work for "throw new"
  • WI-42139 — Introduce abstract exception icon
  • WI-42147 — Parameter type: parameter with default value should accept void type
  • WI-42209 — Move instance: doesn't handle self/parent references
  • WI-42210 — Move instance: target visibility is not checked
  • WI-42219 — Wrong before preview type for postfix 'throw' action
  • WI-42227 — Parameter type: default value forces the caller to have the same type
  • WI-42233 — Blade: support @canany, @elsecanany, @endcanany blade directive
  • WI-42234 — Move instance: doesn't replace $this
  • WI-42253 — Remote Host menu works not as expected
  • WI-42269 — HTTP Client: Allow request body for HEAD requests
  • WI-42272 — SSR: type array matches nothing
  • WI-42274 — SSR: callable type matches nothing
  • WI-42275 — SSR: iterable type matches nothing
  • WI-42312 — False positive 'Method not accessible' when move instance to parent class with protected method
  • WI-42317 — Code sniffer, Mess Detector inspections should be included in some group
  • WI-42345 — Ask to reenter invalid password from Remote Host refresh
  • WI-42352 — Support composer version "!=" range in minimal language level sync
  • WI-42375 — SSR: C[] type can't be found
  • WI-42381 — Exception when try to move instance method with self from anonymous class
  • WI-42386 — Selection of deployment path mappings doesn't ask for password
  • WI-42419 — False positive spellchecker inspection warning when there is injection of string to another string with html tags
  • WI-42455 — SSR: SOE while searching class reference which does't typed var
  • WI-42469 — Completion does't suggest constants without `self::`
  • WI-42471 — Auto-detect custom ruleset of PHPCS from composer.json and turn the corresponding inspection on
  • WI-42485 — Concatenation with PHP_EOL produce syntax error
  • WI-42520 — Add parameter type hints to the created method while invoking "add method" quickfix
  • WI-42568 — False positive 'Method not accessible' when move instance to child class from parent with non public visibility
  • WI-42586 — Concatenation injections not filtered when injected via "Inject language or reference"
  • WI-42587 — Concatenation injections not filtered when injected via PHPDoc
  • WI-42588 — Concatenation injections not filtered when injected via comment
  • WI-42611 — PHPUnit: composite scope does't allow to choose elements via "project" tab
  • WI-42612 — PHPUnit: allow to choose dataset for elements in composite scope
  • WI-42617 — Undefined Method Quick Fix - Add Ability to remove "add @method tag" or change order or options
  • WI-42624 — Variables in injections either empty or repeat the concatenated variable
  • WI-42663 — PS shows test icons for non-test classes
  • WI-42687 — PHPUnit composite run configuration: Don't add dataset for test method in run command if dataset was empty in run configuration
  • WI-42697 — Missing extension inspection: Analyze all files except libraries
  • WI-42748 — Exception on saving DeepMethodCalls (test file with 6K chained method calls)
  • WI-42807 — New test dialog: show method for interfaces and traits

New in PhpStorm 2018.2 Build 182.3684.37 EAP (Jul 12, 2018)

  • The most important changes from PHP side include:
  • Fixed: Using $this when not in object context
  • Fixed: $this is not accessible in static context inside anonymous functions
  • From platform side the update brings the following features and bugfixes:
  • Intention: Switch between React class and pure function syntax
  • Fixed: Git: Update Project should not fail completely when some module can't be updated
  • Many other features and changes from IntelliJ platform and web are also included.

New in PhpStorm 2018.2 Build 182.3569.36 EAP (Jul 5, 2018)

  • The most important changes from PHP side include:
  • Option to set document_root folder in preferences/directories
  • Auto-detect custom ruleset of PHPCS from composer.json and turn the corresponding inspection on
  • Fixed: Full Docker output shown with remote interpreter
  • Fixed: "Undefined class object" in method docblock in namespaced class with lang level 7.2
  • Fixed: Inspections: $this is not accessible in static context
  • Fixed: False-positive "Unused private field/constant" for a private method that is used in a trait
  • From platform side the update brings the following features and bugfixes:
  • Docker: add --rm
  • Fixed: Missing 'Expand All/Collapse All' icons in VCS Local changes
  • Fixed: Terminal: fish plugin functions do not work on macOS in built-in terminal
  • Many other features and changes from IntelliJ platform and web are also included.

New in PhpStorm 2018.2 Build 182.3458.35 EAP (Jul 2, 2018)

  • The most important changes from PHP side include:
  • Warn about extensions used in project but not listed in composer.json
  • Fixed: Unable to deploy from Mac via SFTP to a IPv6-only host
  • Fixed: Unable To "Rerun Failed Tests" Using PHPUnit
  • From platform side the update brings the following features and bug fixes:
  • Fixed: Settings are not synced when using only read-only sources
  • Fixed: React Native: no completion for native components properties
  • Many other features and changes from IntelliJ platform and web are also included.
  • For more details see the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/06/phpstorm-2018-2-eap-182-3458-35/

New in PhpStorm 2018.2 Build 182.3341.34 EAP (Jun 21, 2018)

  • The most important changes from PHP side include:
  • Add parameter type hints to the created method while invoking "add method" quickfix
  • From platform side the update brings the following features and bug fixes:
  • Add option to wrap words in Docker logs
  • Add File Watchers to Settings for Default Project
  • Support TypeScript 3.0 named type arguments
  • Support TS 3.0 'unknown' type
  • Many other features and changes from IntelliJ platform and web are also included.
  • For more details see the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/06/phpstorm-2018-2-eap-182-3341-34/

New in PhpStorm 2018.1.6 Build 181.5281.35 (Jun 17, 2018)

  • The update brings the following bug fix:
  • Fixed: Clicking Help | Register does nothing in PhpStorm
  • For more details see the blog entry at:
  • https://blog.jetbrains.com/phpstorm/2018/06/phpstorm-2018-1-6-is-released/

New in PhpStorm 2018.2 Build 182.3208.33 EAP (Jun 14, 2018)

  • Most important changes from PHP side include:
  • Support formatting for POST request body
  • Provide %w as default user parameter applicable to PHP
  • Postfix completions for creating local variable in PHP
  • Fixed: Find usages doesn't work on multiresolved references for class members
  • Fixed: SQL Injection: dynamic values are not supported for fields and table names
  • From platform side the update brings the following features and bugfixes:
  • Delete Git tag
  • Global File Watchers
  • Many other features and changes from IntelliJ platform and web are also included.
  • For more details see the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/06/phpstorm-2018-2-eap-182-3208-33/

New in PhpStorm 2018.1.5 Build 181.5281.19 (Jun 10, 2018)

  • Bug fixes and features worth mentioning:
  • PhpStorm CPU usage while doing nothing when Listen For Debug connection is enabled WI-42218
  • Command Line Tools Console – Cursor Not In Run Box WI-39796
  • IDEA loses focus after using/canceling navigation popups/menus IDEA-191839
  • Navigate > Class is broken in 2018.1.4 EAP IDEA-191860
  • Throwable: unable to get stub builder IDEA-181227
  • See the full list of bug-fixes and improvements list in the issue tracker at:
  • https://youtrack.jetbrains.com/releaseNotes/WI?q=#Fixed+#Verified+Fix+versions:+2018.1.5&title=PhpStorm+2018.1.5

New in PhpStorm 2018.2 Build 182.2757.22 EAP (May 31, 2018)

  • The most important changes from PHP side include:
  • HTTP Client: Add option to decode Unicode entities and character escapes in JSON replies.
  • HTTP Client: Allow Request Body for DELETE/GET/OPTIONS request
  • From platform side the update brings the following features and bugfixes:
  • Structure tool window steals focus (regression)
  • Git: Checkout tag or revision: provide a list of available tags in combobox
  • Many other features and changes from IntelliJ platform and web are also included.
  • See the full list of bug-fixes and improvements at:
  • https://blog.jetbrains.com/phpstorm/2018/05/phpstorm-2018-2-eap-182-2757-22/

New in PhpStorm 2018.2 Build 182.2574.13 EAP (May 24, 2018)

  • The most important changes from PHP side include:
  • Move Instance Method refactoring
  • New inspection: Warn on optional parameter before required/obligatory parameter
  • Completion: List dynamic methods too (basically all) after :: in second completion invocation
  • Allow renaming old style constructor to the new style
  • Autocomplete: Suggest fields of class when completing params in __construct()
  • Fixed: Improper type checking of a type-hinted parameter when a default value is set
  • From platform side the update brings the following features and bugfixes:
  • Add Eclipse style paren/bracket/quote completion
  • Fixed: Custom Parameter %VAR% not working when wrapped in single quotes
  • Fixed: PSI aware brace highlighter
  • Fixed: Clearer connection status indication
  • Fixed: Can't run Karma in @angular/cli 6 project
  • Many other features and changes from IntelliJ platform and web are also included.
  • See release notes for more details at:
  • https://confluence.jetbrains.com/display/PhpStorm/PhpStorm+EAP+182.2574.13+Release+Notes

New in PhpStorm 2018.1.4 Build 181.5087.24 (May 19, 2018)

  • The most important changes from PHP side include:
  • Fixed: PHP Remote Interpreters (Docker, Docker Compose, Vagrant)
  • Important bug fixes:
  • Fixed: Compiling PL/SQL code with actual errors
  • Fixed: Support of conditional compilation flags in pl/sql code
  • Fixed: Show inferred type in Flow in Brief Info
  • Many other features and changes from IntelliJ platform and web are also included.
  • See the full list of bug-fixes and improvements list in our issue tracker at:
  • https://youtrack.jetbrains.com/releaseNotes/WI?q=#Fixed+#Verified+Fix+versions:+2018.1.4&title=PhpStorm+2018.1.4

New in PhpStorm 2018.2 Build 182.2371.32 EAP (May 18, 2018)

  • The most awaited features:
  • FQCN Completion
  • Structural Search and Replace
  • Simple CodeSniffer/MessDetector setup
  • The new presentation for Quick Documentation
  • New quickfix: Add PHPDOC @method annotation for methods that don't exist.
  • New inspection: Non-canonical order of elements
  • New inspection: Default before required parameter
  • New icons
  • MacBook touch bar support
  • VCS: favorite branches, merge conflicts group in Local changes, multiple VCS Log tabs, multiple GitHub accounts, skip Push dialog on Commit
  • New automatic JSON schema verification and completion (including Composer support)
  • Add a template variable that displays file path from project root.
  • Allow Node.js/Chromium remote debugger to reconnect automatically
  • Add support for angular-cli setting "stylePreprocessorOptions" > "includePaths"
  • Important bug fixes:
  • Connection problems with FTPS. "session reuse required" on vsFTPd/pure-ftd/proftpd (can be enabled in Advanced Settings for FTPS server)
  • Improper type checking of type-hinted parameter when default value is set
  • Unused argument in the construct method
  • Missing yield statement when yield is used in expression context
  • Default "Open directory/project" path and better navigation
  • "Cannot redo. Unexpected document state" when undoing then redoing
  • WebStorm doesn't understand bound variables in Angular structural directives
  • Can't run Karma in @angular/cli 6 project
  • Many other features and changes from IntelliJ platform and web are also included.
  • For more details see the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/05/phpstorm-2018-2-early-access-program-is-open/

New in PhpStorm 2018.1.4 Build 181.5087.11 EAP (May 15, 2018)

  • Highlights:
  • Fixed: PhpStorm version 2018.1.3 breaks my vagrant remote interpreter
  • Fixed: Cannot change/edit Docker Compose interpreter in 2018.1.3
  • For more details, read the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/05/phpstorm-2018-1-4-eap-181-5087-11/

New in PhpStorm 2018.1.3 Build 181.4892.97 (May 10, 2018)

  • Notable bug fixes and features worth mentioning:
  • void return type is not autocompleted WI-41850
  • “Find in Path” shortcut (Ctrl+Shift+F) not working in “Find in Path” preview window IDEA-189447
  • ‘Replace all’ confirmation popup is out of focus IDEA-186587
  • Run configuration drop down menu does not show the full name of the test being selected IDEA-182763
  • Wrong commit and push buttons rendering IDEA-190206
  • Don’t add renamed or moved files to git index unless configured to do so IDEA-118140
  • Default run/debug configurations are not saved IDEA-189444
  • See the full list of bug-fixes and improvements list in the issue tracker at:
  • https://youtrack.jetbrains.com/releaseNotes/WI?q=#Fixed+#Verified+Fix+versions:+2018.1.3&title=PhpStorm+2018.1.3
  • Complete release notes at:
  • https://confluence.jetbrains.com/display/PhpStorm/PhpStorm+2018.1.3+Release+Notes

New in PhpStorm 2018.1.3 Build 181.4892.94 EAP (May 3, 2018)

  • Bug fixes and features :
  • void return type is not autocompleted WI-41850
  • “Find in Path” shortcut (Ctrl+Shift+F) not working in “Find in Path” preview window IDEA-189447
  • Wrong commit and push buttons rendering IDEA-190206
  • Run configuration drop down menu does not show the full name of the test being selected IDEA-182763
  • Don’t add renamed or moved files to git index unless configured to do so IDEA-118140
  • Default run/debug configurations are not saved IDEA-189444

New in PhpStorm 2018.1.2 Build 181.4668.78 (Apr 25, 2018)

  • Syntax Highlighting in Quick Definition:
  • Using the Quick Definition popup became more convenient: with added syntax highlighting, you can now read what exactly a function or a class is doing, without losing your current context.
  • Flexible configuration of imports from the global namespace:
  • In the previous versions of PhpStorm, you could choose to either import everything (functions, classes, constants) from the global namespace or use FQN for functions and constants. We’ve listened to your feedback and realized that more flexibility is sometimes required. In PhpStorm 2018.1.2, you can control auto-import separately for classes, functions, and constants.
  • For classes, you can choose between “insert FQN” and “prefer import” (PhpStorm will insert import if this doesn’t result in a conflict). For functions and constants, the options are “insert FQN”, “prefer import”, and “prefer fallback” (you can refer to the PHP documentation for its exact meaning).
  • Notable bug fixes and features worth mentioning:
  • Collapsing tree node does not collapses all subnodes (regression) IDEA-186081
  • Command Line Tools Console – Cursor Not In Run Box WI-39796
  • Incorrect variable name during phpDoc generation for field in case inferred type in constructor $this WI-40887
  • ‘Goto definition’ on ‘new expression’ targeting parent class __construct instead of referenced class WI-41585
  • Provide the ability to disable tooltips in editor without disabling inspections IDEA-114803
  • Subversion File History not working for links with spaces IDEA-185360
  • Typescript readonly type inference from const WEB-32055
  • Add option to omit JsDoc types for TypeScript code WEB-28964
  • Bug:
  • WI-12451 — String is not a class
  • WI-21939 — Import class: breaks code in short tags
  • WI-33678 — Iterable type can override array and Traversable type from parent method
  • WI-34792 — Missing yield statement when yield is used in expression context
  • WI-36771 — Can't have empty PHP Field Doc Comment
  • WI-36865 — iterable not understood as union of array and Traversable
  • WI-37597 — PHPDOC wrong $this resolve
  • WI-38486 — Document PHP | PHP Runtime tab
  • WI-40887 — Incorrect variable name during phpDoc generation for field in case inferred type in constructor $this
  • WI-40992 — not correct documentation examples for "Opening Files from Command Line"
  • WI-41328 — Nested scratch directories/files not navigable/visible from Project pane
  • WI-41337 — Collection should have 'Accept' header instead of 'Accepts'
  • WI-41441 — Unused import: is shown for constant in group use statement
  • WI-41507 — Unnecessary statement use: false positive on imports of functions/cosntants
  • WI-41516 — Change Signature: Adds extra ? for nullable return type
  • WI-41555 — Database Consoles show guids and no files
  • WI-41568 — Missing PHPDoc inspections for fields with @noinspection and @var annotations are shown in batch mode
  • WI-41585 — 'Goto definition' on 'new expression' targeting parent class __construct instead of referenced class
  • WI-41597 — Missing PHPDoc comment inspection don't see original PHPDoc for method with @noinspection
  • WI-41774 — Error on Angular page
  • WI-41805 — False positive: Redundant catch when it's located in a closure
  • Exception:
  • WI-33844 — Exception is thrown on attempt to extract constant in case there is a syntax error
  • WI-40864 — .notnull doesn't work properly in case ''Convert Null constant'' to Upper Case is enabled
  • Feature:
  • WI-21589 — Provide quick documentation for function also inside braces
  • WI-30306 — jumping through arguments in a function call in PHP
  • WI-31771 — Have Option to not put PHPDoc above property, during field initialization (constructor)
  • WI-35641 — Auto-import classes but not functions/constants from the global space.
  • Usability Problem:
  • WI-7868 — Provide syntax highlighting in Quick Definition Lookup
  • WI-38694 — Missing completion for constant in @see tag
  • WI-41442 — Group use: set default to Chop Down if Long
  • WI-41708 — 'Insert FQN' setting is ignored if partial class/function/constant from global namespace is already imported in 'use' statement

New in PhpStorm 2018.1.2 Build 181.4668.24 EAP (Apr 19, 2018)

  • The most important changes from PHP side include:
  • Syntax Highlighting in Quick Definition
  • Flexible configuration of imports from the global namespace
  • Fixed: Command Line Tools Console - Cursor Not In Run Box
  • Fixed: Incorrect variable name during PHPDoc generation for field
  • From platform side the update brings the following features and bugfixes:
  • Fixed: Provide the ability to disable tooltips in editor without disabling inspections
  • Fixed: Subversion File History not working for links with spaces
  • Fixed: Typescript readonly type inference from const
  • Fixed: Add option to omit JsDoc types for TypeScript code
  • Many other features and changes from IntelliJ platform and web are also included.
  • For more details see the release notes at:
  • https://confluence.jetbrains.com/display/PhpStorm/PhpStorm+EAP+181.4668.24+Release+Notes

New in PhpStorm 2018.1.1 Build 181.4445.72 (Apr 10, 2018)

  • File-level suppression to PHP inspections:
  • PhpStorm provides a lot of inspections to catch all sort of errors in your code, but it may occur that some particular code shouldn’t follow the standards set for the whole project. In previous PhpStorm versions, you were able to suppress a warning for a particular statement or declaration.
  • PhpStorm 2018.1.1 brings the ability to suppress an inspection for the whole file: just add /**@noinspection */ right after the first opening PHP tag or press ALT+Enter on the inspection warning and select Suppress for file in the submenu. You can also use /**@noinspection ALL */ to suppress all inspection for the file.
  • We encourage you to use this feature with caution, since it may cost you a bug in production.
  • Required plugins for a project:
  • Suppose you’ve found an essential plugin that would help a lot with developing your project (Symfony or PHP Annotations plugins are good examples of such plugins), and you want to make sure that everybody on your team is on the same page. Previously there was no way to let your colleagues know about the plugins without talking to them or writing the readme file.
  • PhpStorm 2018.1.1 introduces Required plugins, which you can locate under Preferences | Build, Execution, Deployment | Required Plugins. You can specify the plugins and their exact versions as the project’s requirements. After you’ve set them, PhpStorm will notify if the required plugins are missing or need an update.
  • Go to Type action:
  • You might have already used the Navigate | Type declaration action when working with JavaScript or when using our other IDEs. It lets you navigate to the type declaration from any expression, and now it is available in PHP, as well.
  • Notable bug fixes and features worth mentioning:
  • Incorrect ‘find usages’ / refactoring of __constructor of parent class WI-19518
  • Indexing of large files WI-41378
  • Deployment: context menu is missing if no default server is selected WI-40826
  • Docker-compose: output isn’t shown WI-41002
  • Keystrokes lost during freezing IDEA-186636
  • CommonJS: properties of function object returned by exported module not resolved WEB-24161
  • DESC/DESCRIBE in read-only mode DBE-397
  • See the full list of bug-fixes and improvements list in the issue tracker at:
  • https://youtrack.jetbrains.com/releaseNotes/WI?q=#Fixed+#Verified+Fix+versions:+2018.1.1&title=PhpStorm+2018.1.1&showDescription=false&showComments=false

New in PhpStorm 2018.1.1 Build 181.4445.32 EAP (Apr 5, 2018)

  • Highlights:
  • Syntax Highlighting in Quick Definition
  • Go to Type action
  • For more details, read the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/04/phpstorm-2018-1-1-eap-181-4445-32/

New in PhpStorm 2018.1 Build 181.4203.565 (Mar 30, 2018)

  • PHP Language:
  • Inline function/method refactoring
  • Refactor your code to functional style
  • Configurable unchecked exceptions
  • Goto Symbol navigation improvements
  • Hierarchy checks for class aliases
  • Testing:
  • Creating class from test
  • Codeception: code coverage
  • Better @covers support
  • Gutter icons for running tests
  • HTTP Client:
  • Assertions support
  • Simplified first start
  • PhpStorm 2018.1 also brings major improvements in its support for web technologies, such as reformat with Prettier, create new Vue project, TypeScript 2.7 support, debugging React Native apps and much more.
  • IntelliJ Platform has provided this release with lots of new features as well as bug-fixes. Specifically, Git partial commits, new Documentation UI, better HiDPI support on multiple displays for Windows, reworked focus subsystem, ability to open Terminal in a specific folder, and even more.
  • Database tools have been improved with Data editor SQL log, external schemas in Redshift and virtual schemas in Exasol, ability to choose how to switch schemas and more.

New in PhpStorm 2018.1 Build 181.4203.513 RC (Mar 22, 2018)

  • PHP Language:
  • Inline function/method refactoring
  • Refactor your code to functional style
  • Configurable unchecked exceptions
  • Goto Symbol navigation improvements
  • Hierarchy checks for class aliases
  • Testing:
  • Creating class from test
  • Codeception: code coverage
  • Better @covers support
  • Gutter icons for running tests
  • HTTP Client:
  • Assertions support
  • Simplified first start
  • Web Technologies:
  • Reformat with Prettier
  • Create new Vue project
  • TypeScript 2.7
  • Platform improvements:
  • Git partial commits
  • New Documentation UI
  • Reworked focus subsystem
  • Ability to open Terminal in a specific folder
  • For more details, read the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/03/phpstorm-2018-1-rc/

New in PhpStorm 2017.3.6 Build 173.4674.46 (Mar 16, 2018)

  • Notable bug fixes and features worth mentioning:
  • PhpStorm v2017.3.4 & Codeception v2.4.0 incompatibility WI-40950

New in PhpStorm 2018.1 Build 181.4203.107 Public Preview (Mar 15, 2018)

  • PHP Language:
  • Inline function/method refactoring
  • Refactor your code to functional style
  • Configurable unchecked exceptions
  • Goto Symbol navigation improvements
  • Hierarchy checks for class aliases
  • Testing:
  • Creating class from test
  • Codeception: code coverage
  • Better @covers support
  • Gutter icons for running tests
  • HTTP Client:
  • Assertions support
  • Simplified first start

New in PhpStorm 2017.3.5 Build 173.4674.45 (Mar 15, 2018)

  • Notable bug fixes and features worth mentioning:
  • Fixed: Built-in SSH: does not support strong security ciphers – Cannot negotiate, proposals do not match IDEA-140196
  • Fixed: Multiple “Updating indices” bg tasks after external file system changes IDEA-123287
  • Fixed: Autocomplete too fast and leads to errors when inputting a number DBE-4965
  • Fixed: Hide MySQL Collations & Schemas DBE-5557
  • Fixed: Database Console name in Files have turned into guids DBE-5904
  • See the full list of bug-fixes and improvements list in the complete release notes at:
  • https://confluence.jetbrains.com/display/PhpStorm/PhpStorm+2017.3.5+Release+Notes

New in PhpStorm 2018.1 Build 181.4096.20 EAP (Mar 8, 2018)

  • Highlights:
  • Completely redone the Xdebug profiler snapshots support
  • Allow both forward and backward slashes in "Navigate to class" (PHP)
  • Blade: Support @dump directive
  • For more details, read the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/03/phpstorm-2018-1-eap-181-4096-20/

New in PhpStorm 2018.1 Build 181.3986.12 EAP (Mar 1, 2018)

  • Highlights:
  • HTTP client: Support private environment variable file
  • HTTP client: Support Live Templates for HTTP requests
  • Go to Symbol: Support for scoped method name
  • For more details, read the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/02/phpstorm-2018-1-eap-181-3986-12/

New in PhpStorm 2018.1 Build 181.3870.19 EAP (Feb 22, 2018)

  • Highlights:
  • Deprecate UI based REST Client
  • HTTP client: support private environment variable file
  • New inspection: 'foreach' can be replaced with 'array_fill'
  • Inplace introducing: support 'extract constant'
  • Inplace introducing: support 'extract field'
  • For more details, read the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/02/phpstorm-2018-1-eap-181-3870-19/

New in PhpStorm 2018.1 Build 181.3741.23 EAP (Feb 15, 2018)

  • Highlights:
  • New refactoring: Inline function/method
  • New inspection: 'foreach' can be replaced with 'array_filter'
  • Notification in Languages & Frameworks | PHP that PHP Language Level is set in composer.json
  • For more details, read the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/02/phpstorm-2018-1-eap-181-3741-23/

New in PhpStorm 2018.1 Build 181.3494.16 EAP (Feb 8, 2018)

  • Highlights:
  • Codeception: support for code coverage
  • Support for Xdebug profiler memory snapshot
  • REST Client: support assertions
  • For more details, read the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/02/phpstorm-2018-1-eap-181-3494-16/

New in PhpStorm 2018.1 Build 181.3263.18 EAP (Feb 1, 2018)

  • Highlights:
  • Configurable unchecked exceptions
  • REST Client: support for response handler scripts
  • PHPUnit: gutter icons for running tests
  • REST Client: Quick Documentation for HTTP Headers
  • For more details, read the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/01/phpstorm-2018-1-eap-181-3263-18/

New in PhpStorm 2017.3.4 Build 173.4548.32 (Jan 31, 2018)

  • Notable bug fixes and features worth mentioning:
  • Fixed: Allow UI scale exceed 2x IDEA-171404
  • Fixed: Multiple “Updating indices” bg tasks after external file system changes IDEA-123287
  • Fixed: Evaluate window: cannot TAB from expression into results tree IDEA-158873
  • See the full list of bug-fixes and improvements list in the complete release notes at:
  • https://confluence.jetbrains.com/display/PhpStorm/PhpStorm+2017.3.4+Release+Notes

New in PhpStorm 2017.3.3 Build 173.4301.34 (Jan 25, 2018)

  • The most important changes from PHP side include:
  • REST Client: Auto-formatting of responses
  • Highlighting call-site in case of pass-by-reference
  • Important bug fixes:
  • Fixed: Short syntax array destructuring does not allow skipping values
  • Fixed: Unhandled exception: doesn't analyze "new MyClass" (constructor) expression
  • Fixed: Broken "Change to" spelling quickfix in the Commit dialog
  • PHP New Class now saves previously selected template
  • Fixed: “Can’t run 32-bit version on Windows”
  • Fixed: All run configurations lost after upgrade to 2017.3
  • Fixed: Tool Window docking issue
  • Fixed: FETCH ALL IN returns error org.postgresql.jdbc4.Jdbc4ResultSet
  • Fixed: DataGrip does not recognize Redshift's WITH NO SCHEMA BINDING clause
  • Many other features and changes from IntelliJ platform and web are also included.
  • For more details see the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/01/phpstorm-2017-3-3-is-released/

New in PhpStorm 2018.1 Build 181.3007.10 EAP (Jan 25, 2018)

  • The most important changes from PHP side include:
  • Creating class from test
  • Improved @covers support
  • New composer actions
  • New deployment actions in version control Update info panel
  • Script Output tab for debugger
  • Reworked class_alias support
  • PHPUnit: now runs all method listed in @depends before the actual test method
  • Completion of test methods' names based on tested class
  • Inplace extract refactorings
  • New inspection: 'foreach' can be replaced with 'array_map'
  • From platform side the update brings the following features:
  • New feature "open terminal here"
  • CSS inspector does not recognize SVG elements and properties
  • Alignment of text when line spacing > 1.0
  • Many other features and changes from IntelliJ platform and web are also included.
  • For more details see the blog post at:
  • https://blog.jetbrains.com/phpstorm/2018/01/phpstorm-2018-1-eap-is-open/

New in PhpStorm 2017.3.3 Build 173.4301.24 EAP (Jan 16, 2018)

  • Important bug fixes:
  • Fixed: Short syntax array destructuring does not allow skipping values
  • Fixed: FETCH ALL IN "cursor name" returns error "failed to load" org.postgresql.jdbc4.Jdbc4ResultSet
  • Fixed: DataGrip does not recognize Redshift's WITH NO SCHEMA BINDING clause
  • Many other features and changes from IntelliJ platform and web are also included.

New in PhpStorm 2017.3.3 Build 173.4301.15 EAP (Jan 10, 2018)

  • Important bug fixes:
  • Fixed Tool Window docking issue
  • PHP New Class now saves previously selected template
  • Many other features and changes from IntelliJ platform and web are also included.

New in PhpStorm 2017.3.3 Build 173.4301.7 EAP (Dec 28, 2017)

  • The most important changes from PHP side include:
  • REST Client: Auto-formatting of response
  • Highlighting call-site in case of pass-by-reference
  • Important bug fixes:
  • Fix "Unhandled exception: doesn't analyze "new MyClass" (constructor) expression"
  • Fix "Broken "Change to" spelling quickfix in Commit dialog"
  • Fix "All run configurations lost after upgrade to 2017.3"
  • Many other features and changes from IntelliJ platform and web are also included.
  • Bug:
  • WI-37946 — Unhandled exception: doesn't analyse "new MyClass" (constructor) expression
  • WI-39018 — Twig: unexpected formatting of a complex structure due to {% include %} statement
  • WI-39052 — Words filtering (all unknown alphabet chars) stop to work if custom hunspell dictionary added
  • WI-39142 — Broken "Change to" spell quickfix in Commit dialog
  • Exception:
  • WI-39313 — Exception is thrown on external included folder rename/remove
  • Feature:
  • WI-39134 — Syntax highlight in calling code for parameters used as references, similar to proposed "call site pass-by-ref"

New in PhpStorm 2017.3.2 Build 173.4127.29 (Dec 23, 2017)

  • REST Client: Support Basic and Digest authentication:
  • In this build, we’ve implemented Basic and Digest authentication for the new REST client. For Basic authorization, you have to generate a base64-encoded string that represents your username and password. That may become cumbersome very soon so PhpStorm will do that now automatically for you. PhpStorm also gets you covered with more secure Digest authorization that can be very hard to emulate since it requires multi-step negotiation.
  • In both cases, you just need to configure username and password in Authorization header and PhpStorm will perform other steps automatically.
  • Notable bug fixes and features worth mentioning:
  • Unhandled exception shouldn’t be reported for tests with @expectedException: WI-38998
  • Improved discoverability of Recursive Search in Find Window: IDEA-175611
  • Bug:
  • WI-23622 — Incorrect positioning of the cursor on new line if Indent code inside PHP tag is enabled and the tag inside html
  • WI-35036 — phpspec runner fails when space in PHP interpreter path
  • WI-36748 — Change signature: signature preview doesn't show return type
  • WI-38654 — Wrong help link trying to access "Test frameworks"
  • WI-38838 — PHARs are not taking into account during inspect.sh run
  • WI-38969 — Twig formatting
  • WI-38998 — Unhandled exception shouldn't be reported for tests with @expectedException
  • WI-39051 — Twig: Unclosed literal
  • WI-39108 — Create New PHPUnit Test: class name is no longer attached to test's name
  • WI-39119 — Creating new PHPUnit Test: Test file template is not detected as PHPUnit 6+
  • WI-39152 — Error running tests with 2017.3
  • WI-39200 — Changing constructor visibility should be allowed for PHP 7.2+
  • WI-39232 — Recursive call icon isn't shown when a call is inside a statement
  • WI-39264 — Blade multiline comments folding issues
  • Cosmetics:
  • WI-38627 — Wrong message to default composer autoload path
  • Feature:
  • WI-38862 — Support myspell/hunspell .dic in PhpStorm
  • Task:
  • WI-38732 — Move phars to AdditionalLibraryRootsProvider
  • Usability Problem:
  • WI-38826 — Enable sync of settings with composer.json by default

New in PhpStorm 2017.3.2 Build 173.4127.13 EAP (Dec 19, 2017)

  • The most important changes from PHP side include:
  • REST Client: Support Basic and Digest authentication
  • Important bug fixes:
  • Fix "Unhandled exception are reported for tests with @expectedException"
  • Improved discoverability of Recursive Search in Find Window
  • Many other features and changes from IntelliJ platform and web are also included.

New in PhpStorm 2017.3.1 Build 173.3942.32 (Dec 14, 2017)

  • Support variables in Authorization header:
  • We continue polishing the editor-based REST client, and this update brings support for environment variables in the Authorization header. This is just a first step in the process of simplifying the Authorization handling, and more is coming in PhpStorm 2017.3.2 update (WEB-29865).
  • auth_env
  • Notable bug fixes and features worth mentioning:
  • Support custom templates variables in ‘new class’ dialog: WI-38963
  • Fix “Structure view is always collapsed”: WI-38965
  • Fix Tool Window docking issue: IDEA-149061
  • Fix “Unable to update issue state from Open Task dialog”: IDEA-180834
  • Bug:
  • WI-36692 — str_pad wrong method definition (incorrect default value for pad_string)
  • WI-38863 — The stub for array_unique is wrong or outdated
  • WI-38932 — "extends" keyword is not suggested if "implements" is already specified
  • WI-38956 — Lack of ssh2_sftp_chmod definition in phpstorm-stubs
  • WI-38965 — Structure view is always collapsed
  • WI-38980 — PHPUnit run configuration with specific data set uses overly broad filter that includes too many results
  • WI-39019 — Incorrect DuplicateKeyException?
  • WI-39063 — Completion doesn't work for members resolved using PhpReferenceResolver
  • Cosmetics:
  • WI-39166 — Color Scheme | PHP: Classes and Fields elements aren't highlighting corresponding objects in preview
  • Exception:
  • WI-39015 — Anonymous class in seperate file makes "Performing code analysis" hangs forever.
  • Feature:
  • WI-38963 — Support custom templates variables in 'new class' dialog
  • WI-39034 — Deployment: Exclude node_modules, *.pyc and *.hprof files by default
  • Task:
  • WI-39049 — Blade: support directive dd
  • WI-39050 — Blade: support directives csrf and method
  • Usability Problem:
  • WI-37609 — Code completion menu is to narrow, and options are hard to read
  • WI-38922 — Disable sync checkboxes when no composer.json path is provided
  • WI-39043 — "No authentication data provided. Set it up here" link missing

New in PhpStorm 2017.3.1 Build 173.3942.13 EAP (Dec 6, 2017)

  • Highlights:
  • REST Client: Support variables in Authorization
  • Support custom templates variables in 'new class' dialog
  • For more details, read the blog post at:
  • https://blog.jetbrains.com/phpstorm/2017/12/phpstorm-2017-3-1-eap-173-3942/

New in PhpStorm 2017.3 Build 173.3727.138 (Nov 29, 2017)

  • Editor-based REST client:
  • New REST client interface
  • Support for environment variables
  • Compare your requests
  • PHP Language:
  • Performance improvements
  • Support for nullability in refactoring
  • Improved code templates
  • Bring exceptions under control:
  • “Unhandled exception” inspection and quick fixes
  • “Redundant @throws tag” inspection and quick fixes
  • “Redundant catch clause” inspection and quick fixes
  • Testing:
  • Create new Codeception and PHPSpec test
  • Test method generation
  • Rerun of failed PHPUnit test with specific dataset
  • “Undefined PHPUnit data provider” inspection
  • Improved Twig Support:
  • Injections in Twig templates
  • Improved Twig formatting
  • PhpStorm 2017.3 also brings major improvements in its support for web technologies, such as improved Vue.js support, improved code completion and documentation for JavaScript and DOM APIs, Pull Member Up refactoring and much more.
  • IntelliJ Platform has provided this release with lots of new features as well as bug-fixes. Specifically, in Version Control you can now switch between branches while preserving your workspace, rename changelists directly in the Shelf tab, drag and drop changelists between Shelf and Local Changes tabs, and even more.
  • Database tools have been improved with revised Database view, SQL generator, JOIN statement completion, SSH tunneling and more.
  • Please see the issue tracker for the full list of fixed PHP-related issues at:
  • https://youtrack.jetbrains.com/releaseNotes/WI?q=#Fixed+#Verified+Fix+versions:+2017.3&title=PhpStorm+2017.3,
  • and the release notes from all previous EAP builds at:
  • https://confluence.jetbrains.com/display/PhpStorm/PhpStorm+2017.3+Release+Notes.

New in PhpStorm 2017.3 Build 173.3727.84 RC (Nov 22, 2017)

  • Bug:
  • WI-1583 — No autocompletion of phpDoc tags in some cases
  • WI-2449 — Invalid descendent file name "ssh:" or directory ab (on Linux)
  • WI-17699 — Twig code format
  • WI-18043 — Wrong parameters phpdoc
  • WI-18468 — Adding PHPDoc To Property - Extra Space
  • WI-19599 — "Redundant closing tag" is not redundant
  • WI-21620 — Quick Fix - Make call dynamic - not working properly on static method calls
  • WI-22115 — Mismatch in PHPDoc and method signature: False and bool are not interchangeable
  • WI-24663 — Spelling for user defined dictionary is not working
  • WI-24714 — Redundant closing tag is not detected when file has a namespace
  • WI-27606 — Twig indentation don't work for complex custom blocks
  • WI-27960 — Typehinting in PhpDoc for methods not suggesting classes
  • WI-28081 — "PHPDoc comment matches function/method signature" inspection doesn't work with class references
  • WI-29304 — Subclass constructor incorrectly inferring argument type from parent
  • WI-30049 — Create class: creates invalid name if class is created from X[] expression
  • WI-32161 — Support nullability in Change signature refactoring
  • WI-32162 — Support nullability in Extract interface refactoring
  • WI-32250 — Change signature refactoring shows "Default value for parameters with a class type hint can only be NULL" for scalar types
  • WI-33008 — Unqualified element name in @see tag resolved to random namespaced element
  • WI-33015 — @see tag doesn't support namespaced functions and constants
  • WI-33449 — Apache config (.htaccess) support: Support escaping newlines within a string
  • WI-33627 — CodeIgniter Code Style should use tabs instead of spaces
  • WI-34145 — Inspection "Assignment replaceable with increment or decrement" produces IDE exception
  • WI-34238 — 'Create class' intention on a FQCN creates incorrect file name
  • WI-34937 — @see doesn't support global constants
  • WI-34966 — PHPUnit: Completion for method and class doesn't work
  • WI-36252 — Import insertion depend on the order of existing imports
  • WI-36445 — "Referer" is not recognised as a valid spelling
  • WI-36447 — Spell-Checker: add 'apothem' to the dictionary.
  • WI-36470 — Spellchecking: Quick fix "Change to..." works incorrectly for injected language
  • WI-36494 — IntelliJ classifies uuid/guid as typo's
  • WI-37183 — Construttor without parameters missing phpdoc comment
  • WI-37236 — Invalid @return inspection result in old style constructors
  • WI-37285 — Return type declaration compatibility doesn't take into account PHPDoc declared method in case parent method declared via @method
  • WI-37409 — Deadlock in PhpFrameworksSearchableOptionsContributor
  • WI-37438 — @throws is not checked if there are no @param/@return
  • WI-37507 — Online Help: wrong URL used for "Project view" link on "File Colors" help page
  • WI-37529 — Don't use @internal while updating @param
  • WI-37530 — Provide api for custom PHP class references which supports rename
  • WI-37544 — Inspection reports incorrect PHPDoc when using @throws static
  • WI-37582 — Provide label for the link Codestyle/PHP/PHPDoc
  • WI-37584 — Return type doesn't match when inferred type is mixed and return type something else
  • WI-37589 — "Missing @return" inspection is too strict for inferred class types
  • WI-37592 — Inspection reports incorrect PHPDoc when return type is 'self'
  • WI-37636 — Problem in mongo.php stub - GridFS::get incorrectly prototyped
  • WI-37686 — Editor fails to refresh it's content after downloading from remote host
  • WI-37730 — [Spellchecker] String literals are treated as code in PHP
  • WI-37739 — Unwanted autocomplete
  • WI-37774 — Running PHPUnit tests with a docker-compose interpreter starts every single service
  • WI-37798 — Update the Testing PHP Applications Confluence section
  • WI-37806 — Codeception test navigation does not work in Codeception v2.3.*
  • WI-37808 — Codeception test navigation does not work if path/filename to file contains ":"
  • WI-37831 — Spellchecker false positives in the case of words joined by backslash (DQ string)
  • WI-37843 — Escape sequences are ignored in NOWDOC
  • WI-37857 — Spellchecker doesn't reload dictionaries if whole dictionaries folder is deleted externally
  • WI-37862 — Disable composer.phar path chooser when suggest to download it
  • WI-37877 — Twig Incorrect parsing after print block with literal
  • WI-37881 — Create class: pre-fill incorrect namespace in case non-existing class is in global namespace
  • WI-37900 — PHPUnit: completion for classes doesn't insert FQN
  • WI-37902 — Undefined data provider: doesn't work with namespaced classes
  • WI-37933 — Type of variable is unknown until reparse (Heisenbug)
  • WI-37947 — Twig end* tags auto-recognition
  • WI-37950 — Twig: Parse arrays and hast-tables in twig tags.
  • WI-37976 — Twig: Indent in literals
  • WI-37984 — Incorrect current() passed by reference error
  • WI-37990 — "Wrong catch clauses" inspection doesn't work with a multi-catch statement
  • WI-37991 — False positive: unhandled exception in case of a multi-catch
  • WI-37995 — Add catch clause is shown in case an expression is not surrounded by try/catch
  • WI-38004 — Unhandled exception warning if the exception is thrown in a closure
  • WI-38006 — PHPUnit: Configuration editor does not take into account some project changes between invocations
  • WI-38010 — Update Imagick stubs
  • WI-38016 — php-redis stub delete() doc missing return type
  • WI-38020 — Redundant catch clause: warning is shown in case RuntimeException is thrown
  • WI-38021 — Redundant catch clause: should ignore Runtime Exceptions
  • WI-38022 — Add catch clause: doesn't take into account auto-import option
  • WI-38023 — Surround with try/catch doesn't take into account existing import
  • WI-38024 — "Redundant catch clause" should analyze control flow
  • WI-38033 — Remove throws tag: leaves empty lines in case of multiple redundant throws with comments
  • WI-38041 — Unused alias: false negative when parent keywords is used
  • WI-38071 — "Surround with try-catch" quick fix produces invalid code
  • WI-38101 — The first segment is always PHP and the first PHP tag is colored wrongly
  • WI-38188 — PhpStorm Initial Configuration dialog is shown after new Initial Configuration
  • WI-38194 — @var annotation not preceding the $this variable is not taken into account
  • WI-38207 — False positive: Return type does not match
  • WI-38229 — Navigation in completion popup does not work in 'new PHP test' dialog
  • WI-38245 — Syntax highlighting is broken after a string with variable in curly braces
  • WI-38253 — Searching settings for snake/camel does not lead to the correct place
  • WI-38277 — Composer sync is broken with PSR-0 autoloading
  • WI-38308 — Twig: indentation don't work for standard blocks
  • WI-38357 — Private constructor in trait is marked as error - and thus marks the whole project as having errors
  • WI-38360 — Indent code in PHP tags adds extra indent after namespace declaration
  • WI-38383 — Blade Formating Issue with @guest
  • WI-38408 — PHP Class Doc Comment does not work well when more than one class presented in the file
  • WI-38420 — ${CARET} is not replaced with actual caret if more than one code block is generated.
  • WI-38422 — {$CARET} is not replaced with actual caret if PHPDoc code block is empty.
  • WI-38484 — HTML code is deleted when formatting file with HEREDOC/NOWDOC
  • WI-38490 — PHPUnit Test Method template ignores PHPDoc
  • WI-38492 — Trait in use statement is marked as unresolved until reparse (Heisenbug)
  • WI-38504 — Twig: Unclosed literal inside object
  • WI-38520 — `elseif` PSR1/PSR2 Code Style Preset
  • WI-38553 — Warn that "__halt_compiler() can only be used from the outermost scope."
  • WI-38561 — Codeception: Codeception run configuration is always executed if there is a local Codeception configuration and class inside a file
  • WI-38564 — Compete current statement causes Error for __halt_compiler inside group statement
  • WI-38565 — Redundant closing tag is show for HTML/PHP mix
  • WI-38570 — Missed program name and double build
  • WI-38648 — Remove opportunity to disable 'meta' php module
  • WI-38661 — PHP 7.1 nullable types are not supported by the "Language level" inspection
  • WI-38678 — Improve Project Settings help page
  • WI-38682 — Completing chain call inside HTML string brings unnecessary $this
  • WI-38684 — Methods should only be suggested inside complex (curly) syntax inside a string
  • WI-38686 — IntlDateFormatter::formatObject() method is static
  • WI-38719 — Project constantly being indexed
  • WI-38761 — PHP 7.1 nullables support for generating constructors doesn't work with NULL in uppercase
  • WI-38808 — PHP Stubs: mysqli commit() stub incorrect
  • Cosmetics
  • WI-34090 — Solarized Dark Editor Color Scheme is unreadable as of PHPStorm 2016.3
  • WI-38105 — The Drupal notice has a double apostrophe
  • WI-38265 — Composer Log has leading ​ character at the beginning of line and missing some spaces on Windows
  • Exception:
  • WI-37998 — Surround with try/catch quick fix throws exception when invoked in Blade
  • WI-38208 — Clearing the log throws exception
  • Feature:
  • WI-2514 — try{...}catch to suggest exceptions from PHPDoc & 'throw' statements
  • WI-11277 — Inject other language than HTML in Twig templates
  • WI-17507 — File Template - PHP Function Doc Comment - extend with ${DATE} variable
  • WI-18015 — File and Code Templates: Includes tab: Process file template level variables (at least most common/obvious ones) in PHPDoc templates
  • WI-20245 — Add intention for dataProvider annotation in unit tests that creates method
  • WI-21711 — Allow namespace determination (similar to new Class) in custom file templates
  • WI-22805 — Add inspection: Superfluous @throws annotation
  • WI-27367 — Extension point for ClassReference resolve code
  • WI-28790 — Rerun a specific PHPUnit test data set
  • WI-34434 — PHPSpec: provide navigation between spec class and tested class
  • WI-34474 — Allow to define visibility for initialize fields intention
  • WI-34860 — PhpSpec: Quick create spec test
  • WI-35456 — Generate nullable types for getter/setter in php7.1+
  • WI-37074 — PHP 7.1 nullables support for generating constructors
  • WI-37437 — PHPUnit: fill File text field in Run Configuration editor by invoking class completion
  • WI-37916 — Implement "Add @throws tag" quick fix
  • WI-37917 — Implement "Surround with try-catch" quick fix
  • WI-37918 — Make "Surround with try-catch" refactoring use exceptions thrown from the block
  • WI-37928 — Provide ${YEAR}, ${MONTH}, ${DAY}, ${HOUR}, ${MINUTE} variables for all PHP Include Templates
  • WI-37965 — Implement "Add 'catch' clause(s)" quick fix
  • WI-37966 — New inspection "Exception is never thrown in the corresponding try block"
  • WI-37971 — Blade: support @json directive
  • WI-38119 — Composer Log rewriting
  • WI-38224 — Allow to generate test methods for the target class methods from 'new PHP test' dialog
  • WI-38226 — Add Codeception support in 'new PHP test' action
  • WI-38345 — Create code template for the test method
  • WI-38392 — Provide file templates for Codeception tests
  • WI-38430 — Bundle Vue.js plugin
  • WI-38545 — Implement the "Remove closing tag" quick fix
  • WI-38696 — Generate void type for setter
  • Performance Problem:
  • WI-31772 — Perfomance issues typing with huge file (not related to injections)
  • WI-37938 — PhpStorm freezes when formatting 50k+ long single line arrays (TCPDF library)
  • Task:
  • WI-38009 — Create the "Error handling" inspections group
  • WI-38165 — Blade: support @includeFirst directive
  • WI-38319 — Twig: parse function calls
  • WI-38402 — Implement binary stubs
  • Usability Problem:
  • WI-17516 — PHPDoc misleading throw value and inspection warning
  • WI-27124 — reload dictionary on externals changes
  • WI-28080 — Missing @return tag is not reported for PHPDoc without @param tag
  • WI-31355 — Change signature creates @internal tag for removed arguments
  • WI-31883 — Mnemonics for Joomla installation path and Project Type don't work
  • WI-32501 — Throws tags inspection does not work for empty/blank phpDoc
  • WI-34282 — Hierarchy checks are too strict for methods declared with @method
  • WI-34426 — Create class: update directory based on class namespace
  • WI-34428 — Create class: update directory instead of file name in case of namespaced class
  • WI-34429 — Create class: prefill directory based on namespace
  • WI-35266 — Create run-configuration for 'Zero-configuration' debugging
  • WI-36271 — PhpTypeProvider2 wins over PhpTypeProvider3 implementation
  • WI-37559 — 'Update PHPDoc Comment' fix should replace a parameter type
  • WI-37581 — Avoid negation in option names: "Don't"
  • WI-37583 — Avoid usage of internal "empty PHPDoc" meaning in PHPDoc inspection options/descriptions
  • WI-37591 — Download from remote host confirmation bug
  • WI-37724 — Drupal module recognition should not require .module file
  • WI-37842 — HTML: Strings in URLs should not be checked for word typo.
  • WI-37896 — Reorganize PHP Code Style | Other tab
  • WI-37898 — PHPUnit: re-desing PHPUnit Run Configuration by giving Class field higher priority than File
  • WI-37909 — Simplify selection of testing library in Create New PHP Test dialog
  • WI-37911 — Update icons and naming for New|PHP Test
  • WI-37997 — Surround with try/catch doesn't take into account auto-import option
  • WI-38039 — Error message is unclear when interpreter is not set
  • WI-38179 — Remote Host displays size in bits instead of bytes
  • WI-38192 — Add Laravel as a featured plugin
  • WI-38281 — PHPUnit Run configuration: don't display file path of non-test class
  • WI-38309 — Twig: custom opend/close tags doesnt match if immediate EOF after close tag
  • WI-38320 — Hide 'class to test' panel in 'new test' dialog if action was invoked from the class
  • WI-38324 — Redesign yellow action bar
  • WI-38531 — Joomla new project configuration labels
  • WI-38532 — Provide capitalized and not capitalized variables for Test method
  • WI-38641 — Don't show identical cases in Import class
  • WI-38859 — Add cfg as recognized file extension for Ini4Idea plugin

New in PhpStorm 2017.3 Build 173.3727.8 Public Preview (Nov 15, 2017)

  • REST Client:
  • New REST client interface
  • Support for environment variables
  • Compare your requests
  • PHP Language:
  • Performance improvements
  • Support for nullability in refactoring
  • Improved code templates
  • Bring exceptions under control:
  • Unhandled exception inspection and quick fixes
  • Redundant @throws tag inspection and quick fixes
  • Redundant catch clause inspection and quick fixes
  • Testing:
  • Create new Codeception and PHPSpec tests
  • Test method generation
  • Undefined PHPUnit data provider
  • Twig:
  • Injections in Twig templates
  • Improved Twig formatting

New in PhpStorm 2017.3 Build 173.3622.27 EAP (Nov 10, 2017)

  • Highlights:
  • Generation of nullable return and parameter types
  • For more details, read the blog post at:
  • http://blog.jetbrains.com/phpstorm/2017/11/phpstorm-2017-3-eap-173-3622/

New in PhpStorm 2017.3 Build 173.3531.17 EAP (Nov 3, 2017)

  • Highlights:
  • Reorganized PHP Code Style settings page
  • For more details, read the blog post at:
  • http://blog.jetbrains.com/phpstorm/2017/11/phpstorm-2017-3-eap-173-3531/

New in PhpStorm 2017.3 Build 173.3415.21 EAP (Oct 25, 2017)

  • Code Templates for test methods.

New in PhpStorm 2017.3 Build 173.3188.26 EAP (Oct 13, 2017)

  • The most important changes from PHP side include:
  • Twig formatting
  • Injections in Twig templates
  • Custom templates in Create New PHP Class dialog
  • Test methods generation
  • Codeception test generation
  • "Make call dynamic" quick fix for static calls
  • From platform side the update brings the following features:
  • Tasks: Shelve changes on context switching
  • Display the content of unversioned files in the commit dialog
  • Rest Client: support multipart/form-data
  • Docker: Add "Build" action for Dockerfiles
  • Database: Allow comparison of cells in data views
  • Notable bug fixes and usability improvements:
  • "Make call dynamic" quick fix for static calls
  • Many other features and changes from IntelliJ platform and web are also included.
  • See the blog post at https://blog.jetbrains.com/phpstorm/2017/10/phpstorm-2017-3-eap-173-3188-26/ and the release notes at https://confluence.jetbrains.com/display/PhpStorm/PhpStorm+EAP+173.3188+Release+Notes for more details.

New in PhpStorm 2017.3 Build 173.2941.8 EAP (Oct 5, 2017)

  • The most important changes from PHP side include:
  • Major performance improvements for PHP editing
  • New Composer Log
  • Notable bug fixes and usability improvements:
  • Better synchronization of your settings across devices
  • Parse exception while converting JSON to object class working with GitHub (PR, tasks)
  • Only some foreign key edges are shown in the diagram
  • Postgres: Database console sets different timezone in session that PGAdmin

New in PhpStorm 2017.3 Build 173.2463.17 EAP (Sep 21, 2017)

  • Support of nullability in refactoring:
  • This build brings the support of nullability in “Extract Interface” and “Change Signature” refactorings. Support of nullability was introduced in PHP 7.1 and helps to avoid omitting type declaration or providing default null value for the function parameter for cases when you really want to pass or return null. Now PhpStorm will preserve nullability in case of “Extract Interface” refactoring and won’t trigger error when it notices nullable type in “Change Signature” refactoring.
  • Apart from new features, this build has many bug fixes, including these:
  • Run configurations dropbox should not change its width (IDEA-85375)
  • “Hide file extensions in editor tabs” removes all after dot (IDEA-176821)
  • Author field and Amend checkbox missing when only Unversioned files present (IDEA-169466)
  • Support for TypeScript 2.4+ dynamic import expression (WEB-28464)
  • Bug:
  • WI-24663 — Spelling for user defined dictionary is not working
  • WI-32161 — Support nullability in Change signature refactoring
  • WI-32162 — Support nullability in Extract interface refactoring
  • WI-32250 — Change signature refactoring shows "Default value for parameters with a class type hint can only be NULL" for scalar types
  • WI-36470 — Spellchecking: Quick fix "Change to..." works incorrectly for injected language
  • WI-38016 — php-redis stub delete() doc missing return type
  • WI-38041 — Unused alias: false negative when parent keywords is used
  • Performance Problem:
  • WI-18416 — IDE slow when handling a very large class (mPDF - 200 fields 33000 lines)
  • WI-31772 — Perfomance issues typing with huge file (not related to injections)

New in PhpStorm 2017.2.4 Build 172.4155.41 (Sep 16, 2017)

  • Bug:
  • WI-10674 — Type inference: consider result of arithmetical operators as numeric
  • WI-37405 — Blade @continue broken when force braces always is enabled for if statement
  • WI-37809 — Result of [] + [] is int instead of array
  • WI-37819 — Broken spellchecker in double quoted string with escaped characters
  • Exception:
  • WI-37655 — Recursive method seems to block code analysis
  • WI-37855 — Exception is thrown on editing multiline comment

New in PhpStorm 2017.3 Build 173.2290.12 EAP (Sep 13, 2017)

  • Quick fixes for Unhandled exception:
  • In the previous EAP we made a new inspection Unhandled Exception with “Add @throws tag” quick fix. Now we’ve implemented other quick fixes for this inspection Surround with try/catch and Add ‘catch’ clause(s). Surround with try/catch action has also been updated and now adds the exact exception that can be thrown in the surrounded block and not the general Exception.
  • Inspection “Redundant @throws tag”:
  • For cases when you’ve refactored your code and forgot to update PHPDoc, we’ve added a new inspection Redundant @throws tag. You can invoke either Remove @throws tag or Update PHPDoc quick fix to make a PHPDoc up-to-date.
  • Inspection “Redundant catch clause”:
  • The last but by no means least inspection in the series of the new exception related inspections is “Redundant catch clause”. Now you will know when the exception you are trying to catch is actually never thrown and your catch block is redundant.
  • We hope that the new inspections will help you to keep exceptions under control!
  • Apart from new features, this build has many bug fixes, including these:
  • Reload dictionary on externals changes (WI-27124)
  • Navigate to file action should support fuzzier path search terms (IDEA-112841)
  • From the platform side the update brings:
  • Switch Context when switching branches in git (IDEA-69150)
  • Bug:
  • WI-1583 — No autocompletion of phpDoc tags in some cases
  • WI-18043 — Wrong parameters phpdoc
  • WI-22115 — Mismatch in PHPDoc and method signature: False and bool are not interchangeable
  • WI-27960 — Typehinting in PhpDoc for methods not suggesting classes
  • WI-28081 — "PHPDoc comment matches function/method signature" inspection doesn't work with class references
  • WI-30049 — Create class: creates invalid name if class is created from X[] expression
  • WI-33449 — Apache config (.htaccess) support: Support escaping newlines within a string
  • WI-34145 — Inspection "Assignment replaceable with increment or decrement" produces IDE exception
  • WI-34238 — 'Create class' intention on a FQCN creates incorrect file name
  • WI-34966 — PHPUnit: Completion for method and class doesn't work
  • WI-36252 — Import insertion depend on the order of existing imports
  • WI-37183 — Construttor without parameters missing phpdoc comment
  • WI-37236 — Invalid @return inspection result in old style constructors
  • WI-37285 — Return type declaration compatibility doesn't take into account PHPDoc declared method in case parent method declared via @method
  • WI-37409 — Deadlock in PhpFrameworksSearchableOptionsContributor
  • WI-37438 — @throws is not checked if there are no @param/@return
  • WI-37507 — Online Help: wrong URL used for "Project view" link on "File Colors" help page
  • WI-37529 — Don't use @internal while updating @param
  • WI-37544 — Inspection reports incorrect PHPDoc when using @throws static
  • WI-37582 — Provide label for the link Codestyle/PHP/PHPDoc
  • WI-37584 — Return type doesn't match when inferred type is mixed and return type something else
  • WI-37589 — "Missing @return" inspection is too strict for inferred class types
  • WI-37592 — Inspection reports incorrect PHPDoc when return type is 'self'
  • WI-37636 — Problem in mongo.php stub - GridFS::get incorrectly prototyped
  • WI-37774 — Running PHPUnit tests with a docker-compose interpreter starts every single service
  • WI-37798 — Update the Testing PHP Applications Confluence section
  • WI-37806 — Codeception test navigation does not work in Codeception v2.3.*
  • WI-37808 — Codeception test navigation does not work if path/filename to file contains ":"
  • WI-37862 — Disable composer.phar path chooser when suggest to download it
  • WI-37877 — Twig Incorrect parsing after print block with literal
  • WI-37881 — Create class: pre-fill incorrect namespace in case non-existing class is in global namespace
  • WI-37900 — PHPUnit: completion for classes doesn't insert FQN
  • WI-37902 — Undefined data provider: doesn't work with namespaced classes
  • WI-37947 — Twig end* tags auto-recognition
  • Feature:
  • WI-2514 — try{...}catch to suggest exceptions from PHPDoc & 'throw' statements
  • WI-17507 — File Template - PHP Function Doc Comment - extend with ${DATE} variable
  • WI-20245 — Add intention for dataProvider annotation in unit tests that creates method
  • WI-28790 — Rerun a specific PHPUnit test data set
  • WI-34434 — PHPSpec: provide navigation between spec class and tested class
  • WI-34474 — Allow to define visibility for initialize fields intention
  • WI-34860 — PhpSpec: Quick create spec test
  • WI-37437 — PHPUnit: fill File text field in Run Configuration editor by invoking class completion
  • WI-37916 — Implement "Add @throws tag" quick fix
  • Usability Problem:
  • WI-17516 — PHPDoc misleading throw value and inspection warning
  • WI-28080 — Missing @return tag is not reported for PHPDoc without @param tag
  • WI-31355 — Change signature creates @internal tag for removed arguments
  • WI-32501 — Throws tags inspection does not work for empty/blank phpDoc
  • WI-34282 — Hierarchy checks are too strict for methods declared with @method
  • WI-34426 — Create class: update directory based on class namespace
  • WI-34428 — Create class: update directory instead of file name in case of namespaced class
  • WI-34429 — Create class: prefill directory based on namespace
  • WI-37559 — 'Update PHPDoc Comment' fix should replace a parameter type
  • WI-37581 — Avoid negation in option names: "Don't"
  • WI-37591 — Download from remote host confirmation bug
  • WI-37724 — Drupal module recognition should not require .module file
  • WI-37911 — Update icons and naming for New|PHP Test

New in PhpStorm 2017.3 Build 173.2099.16 EAP (Sep 8, 2017)

  • Highlights:
  • Editor-based REST client
  • New inspection: Unhandled Exception
  • New inspection: Undefined PHPUnit data provider
  • Rerun of specific PHPUnit dataset
  • New visibility option for Initialize Field quick fix
  • Create PHPSpec Test action
  • Docker: support alternate names for compose yml

New in PhpStorm 2017.2.3 Build 172.4155.25 (Sep 6, 2017)

  • Support for Docker Compose v3.0 and v3.1 files (versions 3.2 and 3.3 are not yet supported)

New in PhpStorm 2017.2.2 Build 172.3968.35 (Sep 1, 2017)

  • The most important PHP & WEB bug fixes:
  • Performance and stability fixes in PHP editing/type analysis/completion
  • Undefined field: a field is shown as dynamically declared in case the field declared in a parent class (WI-36285)
  • 502 Bad Gateway error from the server when post data (WEB-17317)
  • Javascript: Shorthand property inline adds no key (WEB-22611)
  • The most important platform bug fixes:
  • Navigate to class or file popup doesn’t suddenly disappear anymore on Linux (IDEA-173000)
  • The crash issue that occurred due to using custom fonts (JRE-426)
  • Wrong position of the context menu on the HiDPI screens on Windows (JRE-453)
  • Long-awaited spell checker improvements
  • Cannot move/resize diff view area of Commit Changes dialog (IDEA-173698)
  • Typing settings repository URL triggers path alert (IDEA-173109)
  • Changelog converted automatically to US-ASCII (IDEA-176658)
  • Notable features:
  • Blade comment folding (WI-37694)
  • New Paste from History action with Paste Simple (IDEA-176965)
  • Emmet in JSX, support non-self closing tags for host components (WEB-26468)
  • Bug:
  • WI-3588 — spelling checker doesn't ignore control characters
  • WI-6727 — spellchecker does not like @ character?
  • WI-10674 — Type inference: consider result of arithmetical operators as numeric
  • WI-36285 — Undefined field: a field is shown as dynamically declared in case the field declared in a parent class
  • WI-36463 — Spellchecker should recognise URLs
  • WI-36472 — Inconsistent spellchecking of email addresses with +
  • WI-37303 — Class properties with the same name hides class constants from autocompletion
  • WI-37405 — Blade @continue broken when force braces always is enabled for if statement
  • WI-37460 — Blade: @php directive with expression causes "Directive is not closed"
  • WI-37477 — Blade: @php directive with expression formatting issue
  • WI-37695 — WordPress Support: Don't override code style without permission
  • WI-37809 — Result of [] + [] is int instead of array
  • WI-37819 — Broken spellchecker in double quoted string with escaped characters
  • Exception:
  • WI-37855 — Exception is thrown on editing multiline comment
  • Feature:
  • WI-37694 — Make Blade comment folding support
  • WI-37754 — Incorrect PHPDoc for unregister_tick_function stub
  • Performance Problem:
  • WI-37618 — Dramatic performance issue with phpStorm 2017 - Lag when typing
  • Usability Problem:
  • WI-35631 — Debugger validation says: The result of Validation Script has unexpected format in case mod_pagespeed is enabled
  • WI-36152 — UX improvements for "Submit a request" form
  • WI-37378 — PHPUnit settings use absolute path since 2017.2 release

New in PhpStorm 2017.2.2 Build 172.3968.23 EAP (Aug 29, 2017)

  • The most important bug fixes are:
  • Performance and stability fixes in PHP editing/type analysis/completion
  • Blade comment folding (WI-37694)
  • New Paste from History action with Paste Simple (IDEA-176965)
  • Roll of the recent HiDPI fixes back due to regressions

New in PhpStorm 2017.2.2 Build 172.3757.60 EAP (Aug 29, 2017)

  • Important bug fixes:
  • Performance and stability for PHP editing in complex projects
  • Much awaited spellchecker improvements
  • Many other features and changes from IntelliJ platform and web are also included.

New in PhpStorm 2017.2.2 Build 172.3757.34 EAP (Aug 9, 2017)

  • The most important bug fixes are:
  • Undefined field: a field is shown as dynamically declared in case the field declared in a parent class (WI-36285)
  • The crash issue that occurred due to using custom fonts (JRE-426)
  • Wrong HiDPI scaling on multiple monitors for Windows 10 (JRE-427 and JRE-431)
  • Javascript: Shorthand property inline adds no key (WEB-22611)
  • Emmet in JSX, support non-self closing tags for host components (WEB-26468)
  • Bug:
  • WI-36285 — Undefined field: a field is shown as dynamically declared in case the field declared in a parent class
  • WI-37303 — Class properties with the same name hides class constants from autocompletion
  • WI-37460 — Blade: @php directive with expression causes "Directive is not closed"
  • WI-37477 — Blade: @php directive with expression formatting issue
  • Usability Problem:
  • WI-35631 — Debugger validation says: The result of Validation Script has unexpected format in case mod_pagespeed is enabled
  • WI-36152 — UX improvements for "Submit a request" form
  • WI-37378 — PHPUnit settings use absolute path since 2017.2 release

New in PhpStorm 2017.2.1 Build 172.3544.41 (Aug 3, 2017)

  • The most important changes from PHP side:
  • Support for PHP 7.2
  • Blade: support for @guest and @endguest
  • Inspection: Short open tag usage
  • Navigation to an appropriate loop from break/continue
  • Important bug fixes:
  • PHP Comments: Spellchecker doesn’t recognize words with an apostrophe in it: WI-11450
  • Broken Code Completion in JavaScript: WI-36767
  • Allow OS to resolve “composer” executable (global installation): WI-31229
  • Printing Mechanism Prints the Theme’s Background Color: IDEA-90668
  • Tabs limited to 2 when 1 is set: IDEA-173369
  • Auto importing a flow type does not add “type” after “import”: WEB-24910
  • Bug:
  • WI-11450 — PHP Comments: Spellchecker doesn't recognize words with an apostrophe in it
  • WI-14727 — Hierarchy check: Interface method prototypes not enforced when implemented via traits
  • WI-32137 — Language Level: Multiple catch exceptions should produce parse error for PHP level < 7.1
  • WI-36834 — Change signature: return type array produces error
  • WI-36950 — Keywords as method names are formatted wrongly
  • WI-36971 — Super class/interface incompatibility: doesn't detect incompatible return type
  • WI-36988 — Remove unused parameter: doesn't warn in case of increment/decrement operators, constructor invocation and combined expressions with function/method call
  • WI-37025 — Completion shows final classes in `extends` context
  • WI-37027 — Unused parameter/local variable when used in combination with uniform variable syntax style invocation
  • WI-37067 — Blade: Wrong warnings if @hasSection is used with @esleif
  • WI-37078 — Unused variable: variable is marked as unused if it is wrapped with ()()
  • WI-37082 — Method parameters count mismatch: is not shown for anonymous class
  • WI-37085 — Blade: @php directive without parenthesis causes Directive is not closed
  • WI-37086 — Blade: missing folding for @hassection and @push
  • WI-37106 — Closure with Closure as parameter generates Required parameter missing warning.
  • WI-37162 — File icons are not shown during indexing
  • WI-37168 — Blade: Make directives lexing case-insensitive
  • WI-37193 — Rename refactoring: scope for parameter is outside the function
  • WI-37235 — There's no completion for variable after @var without '$'
  • WI-37241 — There's no completion for @method return type
  • WI-37276 — PhpQualifiedNameProvider cannot convert FQN strings to elements if the FQN includes class methods or fields.
  • WI-37302 — Option "Use fully-qualified class names" doesn't work for @method type
  • WI-37332 — Editor: "public" tab autocomplete set to __call function as default
  • WI-37336 — Table prefix is no longer recognized
  • WI-37419 — Language Level: doesn't detect trailing space if there is a comment after comma
  • WI-37421 — Auto-import breaks existing group import of constants and functions
  • WI-37422 — PHPUnit PHAR file must be saved to the project root/folder
  • WI-37432 — Spellchecker false positive typos in names of standard composer.json sections
  • Cosmetics:
  • WI-33553 — Icons for exceptions and final exceptions are totaly different
  • Exception:
  • WI-34343 — "Rename" refactoring broken - "renaming ___ is not finished yet"
  • WI-36767 — Broken Code Completion in JavaScript after update to last EAP
  • WI-37029 — Exception on copy invalid escape sequence
  • WI-37171 — Throwable at com.intellij.openapi.application.impl.ApplicationImpl.assertReadAccessAllowed
  • Feature:
  • WI-32497 — Add short open tag inspection
  • WI-37147 — Wrap system paths in documentation into so they could be processed in Upsource
  • WI-37185 — Navigate to an appropriate loop from break/continue
  • WI-37301 — Blade: support @guest/@endguest
  • WI-37324 — Allow overriding abstract methods
  • WI-37325 — Declaration of overriden method should be compatible: Allow parameter type widening
  • WI-37326 — Allow trailing commas for group uses
  • WI-37328 — Provide completion for object type
  • WI-37370 — Error is not shown: "Cannot use 'object' as class name as it is reserved"
  • Usability Problem:
  • WI-15155 — Change signature: No warning is issued if visibility was changed
  • WI-16694 — Composer: update file tree after performing installation after Add dependency
  • WI-31229 — Allow OS to resolve "composer" executable (global installation)
  • WI-36309 — Completion shows all aliases not taking into account type (class, trait, interface) of original import
  • WI-36685 — Invoke ''Synchronize'' after Composer actions
  • WI-36974 — Settings Sync: is not enabled if default PHP Language Level is not 5.6
  • WI-37206 — Too many included/excluded paths notifications
  • WI-37242 — Resort packages after installing/removing
  • WI-37417 — "Can't inherit abstract function" when PHP version is < 7.2 should suggest quick fix

New in PhpStorm 2017.2.1 Build 172.3544.21 EAP (Jul 27, 2017)

  • Support for PHP 7.2:
  • PHP 7.2 is now in Beta so we decided to give you a chance to experiment with the new version of PHP in PhpStorm. In this build, we’ve added a support for all the features of PHP 7.2, including a possibility for overriding of abstract methods, parameter type widening, trailing commas in list syntax, and object typehint.
  • Blade: support for @guest and @endguest:
  • PhpStorm 2017.2.1 brings various improvements in Blade support, including bug fixes concerning foldings and non-closed directive inspection (WI-37168, WI-37086, WI-37085, WI-37067) and support for @guest/@endguest.
  • Inspection: Short open tag usage:
  • In this build, we’ve added a new inspection, which also has a quick fix for changing

New in PhpStorm 2017.2 Build 172.3317.83 (Jul 21, 2017)

  • Composer:
  • New Composer actions: update, remove, install, self-update
  • PhpStorm and composer.json settings synchronization
  • Global installation and easy project creation
  • PHP Runtime:
  • Docker Compose
  • Detection of enabled/disabled extensions from PHP interpreter
  • Preserve state of Start Listening for PHP Debug Connection option
  • PHP Language Support:
  • Reworked polymorphic types support
  • Better Refactoring for PHP 7/7.1
  • $this highlighting
  • New inspections
  • Testing:
  • Automatically run PHPUnit tests
  • Unified Test Frameworks settings
  • Improved PHP Formatting:
  • New formatting options

New in PhpStorm 2017.2 Build 172.3317.57 RC (Jul 13, 2017)

  • Composer:
  • New Composer actions: Update, Self-update, Install and Remove Dependencies
  • PhpStorm and composer.json settings synchronization
  • Support of global composer installation
  • PHP Runtime:
  • Docker Compose
  • Detection of enabled/disabled extensions from PHP interpreter
  • Preserve state of Start Listening for PHP Debug Connection option
  • PHP language support:
  • Reworked polymorphic types support
  • Better Refactoring for PHP 7/7.1
  • $this highlighting
  • New inspections
  • Testing:
  • Automatically run PHPUnit tests
  • Unified Test Frameworks settings
  • Improved PHP Formatting:
  • New formatting options
  • Web Technologies:
  • Support for enhanced webpack module resolution
  • Import from ESLint
  • Rearrange code for JavaScript and TypeScript
  • IDE improvements:
  • Version Control enhancements
  • Pause indexing
  • Find in Path improvements
  • Better HiDPI support
  • Database tools improvements:
  • Several databases in one PostgreSQL data source
  • Notification when a large query is finished
  • Transaction control
  • Bug:
  • WI-4438 — PHP: function inside method: self, static, parent erroneously resolved to the method's class
  • WI-9321 — Comment line action produces php code with errors if the line contains a string with PHP delimiter ?>
  • WI-14659 — Phpstorm doesn't know about PDO::SQLSRV_ constants
  • WI-14956 — PHP breadcrumbs for functions doesn't take into account namespaces
  • WI-15215 — Hierarchy check: Incompatibility in method signature between interface and parent class isn't detected
  • WI-20723 — Text from @return PHPDoc block not shown in Quick Documentation window in some cases
  • WI-21242 — Property/constants are not shown in completion list for @mixin
  • WI-21930 — Udefined class static in @method static static PhpDoc for a class
  • WI-21935 — @method annotation doesn't support keywords callable, $this, self and static
  • WI-22649 — Mark as Plain text doesn't work for External Libraries
  • WI-24175 — Add PHPDoc support for @method static static and @method static self
  • WI-24366 — Blade support: Does not recognize inline sections
  • WI-25830 — Blade: not inline sections with complex mix of quotes and commas are recognized as inline
  • WI-27532 — PhpStorm loses auto-completion with `new static`, and method from base class returning $this
  • WI-28139 — Quick Fix: "Remove unused parameter" should update function calls too
  • WI-28514 — Code highlighting on blade raw tags
  • WI-28625 — Let Include Paths be saved under VCS
  • WI-29641 — @method annotation is not recognized if return type is array[]
  • WI-29914 — Undefined variable: variables passed by reference are marked as undefined in case of multiresolve
  • WI-30131 — Code completion not working on chained method calls if method has double return type
  • WI-31010 — Other type is ignored if there in @return static|OtherType expression (or $this, self)
  • WI-31161 — CURLOPT_RESOLVE is undefined constant
  • WI-31163 — Chained method call loses type if return type contains array (array|MyClass)
  • WI-31609 — Return type does not match for return $this in code and PHPDoc
  • WI-31939 — @method overwrite for inherited method causes "Missing parent call"
  • WI-32050 — return self in traits is not resolved correctly
  • WI-32052 — Return type doen't match - self in trait
  • WI-33262 — Emoji unicode characters in double quote string cause syntax error
  • WI-33334 — mcrypt - extend
  • WI-33365 — External Documentation can't resolve @link tag
  • WI-33690 — Create New Test: 3 warnings are shown in case it's not possible to open file
  • WI-33991 — Return type mismatch (static vs. parent class name in PHP7 return type)
  • WI-34145 — Inspection "Assignment replaceable with increment or decrement" produces IDE exception
  • WI-34309 — In array destructuring assignment nested variable marked as undefined
  • WI-34414 — Parameter hint: blacklist doesn't match PHP functions/method
  • WI-34495 — Return type inspection: anonymous classes don't really extend/implement declared classes/interfaces
  • WI-34540 — Parameter Hints for variables are shown only if there is at least one literal
  • WI-34673 — Braces counter bug
  • WI-34737 — Minimum blank lines value in "Before "Use" statement" in editor is one line less when namespace is omitted
  • WI-35018 — Wrong function parameter type detection in closure «use» construct
  • WI-35046 — "Dynamic class method called as static" inspection does not work inside the class
  • WI-35079 — Inspection Parameter type: False negative for static[] variable type
  • WI-35094 — Return type mismatch: $this and PHP 7 return type of the class
  • WI-35212 — Brace matcher: insert additional closing brace for statements inside if/else/endif statement
  • WI-35215 — Brace matcher fails on if/elseif without braces if statement inside if is long enough
  • WI-35225 — Blade Slot directive doesn't allow for second parameter
  • WI-35248 — Docker remote CLI Interpreter + PHPUnit with filter
  • WI-35260 — Brace matcher: editor inserting excessive closing bracket ("}") in case there is if/else in alternative syntax
  • WI-35330 — Tab completion partially eats the next line when inserting a method reference
  • WI-35344 — New Project dialog reuses previous state instead of default project settings
  • WI-35379 — Stubs are not recognised: Restart is required
  • WI-35428 — Sorted include paths move up and down in a strange manner
  • WI-35486 — Brace matcher: Wrong closing curly brace on weird combination of parameter count and type hints
  • WI-35575 — Unused variable: PHP variable is marked as unused if it is wrapped with () and called.
  • WI-35587 — CLI Interpreter: set Configuration options not visible
  • WI-35598 — Blade: Directive is not closed is triggered for valid directives
  • WI-35619 — PHPDoc block not generated if Insert string concatenation on Enter is disabled for SQL
  • WI-35685 — Configure extension stubs quick fix shouldn't be available for batch run with multiple problems
  • WI-35686 — Undefined function: inspection doesn't work for function in stubs
  • WI-35687 — Configure extension stub: doesn't highlight stub in tree when configured stubs are used
  • WI-35772 — Blade: ignore Vue.js directives
  • WI-35776 — Wrong brace auto-complement where there is a goto label
  • WI-35777 — Inspection "variable might have not been defined" and ?? (coalesce) operator
  • WI-35809 — Formatting of include() and require() methods adds extra space
  • WI-35811 — No code example in configurable in code style suggestion for frameworks
  • WI-35863 — "intl.php" | wrong return value (PHPDoc) for "grapheme_substr()"
  • WI-35874 — Blade inline sections folding icon
  • WI-35877 — 'Method parameters count mismatch' inspection does not detect superfluous parameters passed to constructor
  • WI-35927 — Don't make true, false and null fully-qualifyed in namespaces
  • WI-36005 — Blade: Last part with at sign (@) is always treated as custom directive
  • WI-36006 — Blade: perform relexing on changing directives
  • WI-36078 — Blade: Wrong nesting of some Blade tags in Structure panel
  • WI-36100 — Docker compose: phpcs validation can't be canceled
  • WI-36102 — Docker-compose: entry point can't be overrided
  • WI-36113 — Language Level: does not choke on declare(strict_types=1) if the php language level is set below 5.6
  • WI-36115 — Incomplete MongoDBDriver stubs
  • WI-36143 — Blade: type of infered variable is lost inside @foreach tag
  • WI-36274 — Incorrect FNM_NOESCAPE and FNM_PATHNAME values in standard_defines.php
  • WI-36277 — Japanese / Asian(?) character cause freeze
  • WI-36281 — Complete current statement works improperly with uniform variable syntax
  • WI-36294 — Blade: structure view don't treat @show as closing tag for @section and doesn't take into account @stack tag
  • WI-36307 — Incorrect default stubs path message shows too many messages
  • WI-36308 — Hierarchy check: Declaration incompatibility is not detected in case constructor has different number of arguments in comparision to parent class that implements interface
  • WI-36347 — First PHPDoc comment doesn't respect settings
  • WI-36362 — New Project From Existing Source: Empty tree for remote server
  • WI-36363 — Create new project from existing source: Project root and all other button disabled during the indexing
  • WI-36525 — Composer command line parameters not obeyed for update
  • WI-36531 — Varable type lost when using short array destructuring assignment
  • WI-36550 — New .idea/php.xml project structure breaks compatibility
  • WI-36557 — Behat: wrong error message if configuration file is not set
  • WI-36576 — Docker-compose: save all project before evaluating interpreter information
  • WI-36589 — File header should stick to an opening tag
  • WI-36594 — Reformat Code on Directory help button link is wrong
  • WI-36607 — Docker-Compose Unit Tests: Unable to locate container name for service "php" from docker-compose output when trying to run method unit test
  • WI-36614 — Sometimes missing Tools | Composer action group
  • WI-36617 — PhpGeneratePhpDocBlocksActionHandler leaks project
  • WI-36629 — Reformat code: method named "as" will be wrongfully be surrounded with spaces
  • WI-36656 — checkbox *save password* not saved
  • WI-36675 — Creation of method via UML for interface leads to method with a body
  • WI-36676 — Change signature: removes type in @return type on return type change
  • WI-36686 — Sync with deployed to skips changed files for no reason
  • WI-36764 — Password/passphrase entered in "Login to ... by SFTP" is not saved and used regardless checkbox Remember state
  • WI-36875 — Show folding for all structured directives (also @php and @endphp)
  • WI-36922 — PhpStorm documentation issue
  • WI-36944 — IDE hangs on typing "define(("
  • WI-36967 — Static method of interface is always incompatible with parent method declaration
  • WI-36996 — Docker Compose: cannot execute single test method
  • WI-37018 — PHP 7.2 alpha 2 interpreter always started as interactive shell
  • Cosmetics:
  • WI-33298 — Mouse hover on breadcrumb shows PhpClass for interfaces and traits
  • WI-33565 — File Transfer tab capitalizes "k" for kilobit prefix
  • WI-35496 — Empty block in function path (breadcrumbs) for PHP closure
  • WI-36003 — Blade: make directive background equal to Template language
  • WI-36739 — New project: core extenstions notification invisible
  • WI-36893 — Fix Type ComboBox alignment in workshop project generator
  • Exception:
  • WI-28566 — An exception occurs during indexing of a PHP file with a lot of traits
  • WI-35514 — Exception is thrown on analysis of array_shift function
  • WI-35680 — Exception is thrown on typing inside string array
  • WI-36009 — Frameworks settings: disabling all frameworks plugins leads to exception
  • WI-36139 — Exception raises in CompletionContributor#isNotIterable in the case of "SpCollectionImporter" namespace
  • WI-36679 — Change signature: Exception is thrown if return type is invalid
  • WI-36751 — Detect extensions: NPE is thrown in Default Settings
  • WI-36765 — NPE is thrown in case mapping folder is not a subfolder for mounted folder deployment server
  • WI-36812 — Project configuration: Exception occurs when selecting misconfigured remote interpreter
  • WI-37084 — Blade: exception is thrown if there is no content and no space between @if and @endif
  • Feature:
  • WI-741 — continuous single line comments with triple slash (///)
  • WI-982 — New inspection: undefined field in constructor
  • WI-2164 — Please highlight $this usages
  • WI-3515 — Detect enabled/disabled extensions for the current PHP interpreter
  • WI-3824 — New inspection: Add non-strict object equality comparison inspection
  • WI-5053 — Autostart listening of debug connections
  • WI-6966 — Add parenthesis options for "if" statement
  • WI-8409 — UML: Implement "Add member" operations for PHP UML diagrams
  • WI-9161 — Separate bracket formatting options for closures from method/function options
  • WI-9428 — Allow keeping format for PHP statements on a single line
  • WI-10550 — More detailed PHP Formatter as for blank lines
  • WI-18735 — Run PHPUnit Tests automatically
  • WI-19413 — Implement groovyScript support in Live Templates
  • WI-22370 — Add new actions: update, install, upgrade, self_update
  • WI-23202 — New inspection: probable bug: "... statement is empty" for conditional statements/loops
  • WI-24611 — Hint PSR-x roots from composer.json files
  • WI-27256 — Additional item to the menu Deployment: Compare with Deploeyd version on ...
  • WI-28722 — Step Filter: Implement skipping files when stepping into
  • WI-30065 — Code Style and Formatting related to Null Coalesce Operator
  • WI-30844 — Method from class using NESTED trait is not found inside trait ($this,static,parent)
  • WI-31601 — New setting: after '{' (in section "Keep Maximum Blank Lines")
  • WI-32145 — Allow to choose visibility level for Extract constant refactoring
  • WI-32214 — Support JDatabaseQuery
  • WI-32976 — String access as hash
  • WI-33144 — Change Signature: Support return types
  • WI-33149 — Php formatter option for return type: same line/new line as function declaration
  • WI-33319 — Symbol icons on PHP file tabs
  • WI-33800 — Support docker-compose configuration
  • WI-33979 — Symbol icons in File switcher
  • WI-34408 — Simplify settings for frameworks
  • WI-34471 — Detect PHP version from composer.json
  • WI-34519 — Provide parameter hints for array argument
  • WI-34840 — Variable might have not been defined inside of isset with field reference
  • WI-35123 — Support PHPDoc in @php @endphp tags
  • WI-35186 — Support Emoji in PHP identifiers
  • WI-35353 — Recursion detection like in GO plugin
  • WI-35389 — Option to always show parameter name hint
  • WI-35431 — Provide PhpStorm workshop in create new project dialog
  • WI-35517 — Inspection to detect disabled extension stubs which are used in a project
  • WI-35633 — Add a code setting style to enforce a newline between `

New in PhpStorm 2017.2 Build 172.3317.9 EAP (Jul 6, 2017)

  • Composer:
  • New Composer actions: update, remove, install, self-update
  • PhpStorm and composer.json settings synchronization
  • Global installation and easy project creation
  • PHP Runtime:
  • Docker Compose
  • Detection of enabled/disabled extensions from PHP interpreter
  • Preserve state of Start Listening for PHP Debug Connection option
  • PHP Language Support:
  • Reworked polymorphic types support
  • Better Refactoring for PHP 7/7.1
  • $this highlighting
  • New inspections
  • Testing:
  • Automatically run PHPUnit tests
  • Unified Test Frameworks settings
  • Improved PHP Formatting:
  • New formatting options
  • Bug:
  • WI-4438 — PHP: function inside method: self, static, parent erroneously resolved to the method's class
  • WI-9321 — Comment line action produces php code with errors if the line contains a string with PHP delimiter ?>
  • WI-14659 — Phpstorm doesn't know about PDO::SQLSRV_ constants
  • WI-15215 — Hierarchy check: Incompatibility in method signature between interface and parent class isn't detected
  • WI-20723 — Text from @return PHPDoc block not shown in Quick Documentation window in some cases
  • WI-21242 — Property/constants are not shown in completion list for @mixin
  • WI-21930 — Udefined class static in @method static static PhpDoc for a class
  • WI-21935 — @method annotation doesn't support keywords callable, $this, self and static
  • WI-22649 — Mark as Plain text doesn't work for External Libraries
  • WI-24175 — Add PHPDoc support for @method static static and @method static self
  • WI-27532 — PhpStorm loses auto-completion with `new static`, and method from base class returning $this
  • WI-28139 — Quick Fix: "Remove unused parameter" should update function calls too
  • WI-28514 — Code highlighting on blade raw tags
  • WI-29641 — @method annotation is not recognized if return type is array[]
  • WI-30131 — Code completion not working on chained method calls if method has double return type
  • WI-31010 — Other type is ignored if there in @return static|OtherType expression (or $this, self)
  • WI-31161 — CURLOPT_RESOLVE is undefined constant
  • WI-31163 — Chained method call loses type if return type contains array (array|MyClass)
  • WI-31609 — Return type does not match for return $this in code and PHPDoc
  • WI-31939 — @method overwrite for inherited method causes "Missing parent call"
  • WI-32050 — return self in traits is not resolved correctly
  • WI-32052 — Return type doen't match - self in trait
  • WI-33690 — Create New Test: 3 warnings are shown in case it's not possible to open file
  • WI-33991 — Return type mismatch (static vs. parent class name in PHP7 return type)
  • WI-34145 — Inspection "Assignment replaceable with increment or decrement" produces IDE exception
  • WI-34309 — In array destructuring assignment nested variable marked as undefined
  • WI-34737 — Minimum blank lines value in "Before "Use" statement" in editor is one line less when namespace is omitted
  • WI-35018 — Wrong function parameter type detection in closure «use» construct
  • WI-35046 — "Dynamic class method called as static" inspection does not work inside the class
  • WI-35079 — Inspection Parameter type: False negative for static[] variable type
  • WI-35094 — Return type mismatch: $this and PHP 7 return type of the class
  • WI-35248 — Docker remote CLI Interpreter + PHPUnit with filter
  • WI-35330 — Tab completion partially eats the next line when inserting a method reference
  • WI-35575 — Unused variable: PHP variable is marked as unused if it is wrapped with () and called.
  • WI-35777 — Inspection "variable might have not been defined" and ?? (coalesce) operator
  • WI-35809 — Formatting of include() and require() methods adds extra space
  • WI-35811 — No code example in configurable in code style suggestion for frameworks
  • WI-35863 — "intl.php" | wrong return value (PHPDoc) for "grapheme_substr()"
  • WI-35874 — Blade inline sections folding icon
  • WI-35877 — 'Method parameters count mismatch' inspection does not detect superfluous parameters passed to constructor
  • WI-35927 — Don't make true, false and null fully-qualifyed in namespaces
  • WI-36005 — Blade: Last part with at sign (@) is always treated as custom directive
  • WI-36006 — Blade: perform relexing on changing directives
  • WI-36078 — Blade: Wrong nesting of some Blade tags in Structure panel
  • WI-36100 — Docker compose: phpcs validation can't be canceled
  • WI-36102 — Docker-compose: entry point can't be overrided
  • WI-36113 — Language Level: does not choke on declare(strict_types=1) if the php language level is set below 5.6
  • WI-36115 — Incomplete MongoDBDriver stubs
  • WI-36143 — Blade: type of infered variable is lost inside @foreach tag
  • WI-36274 — Incorrect FNM_NOESCAPE and FNM_PATHNAME values in standard_defines.php
  • WI-36277 — Japanese / Asian(?) character cause freeze
  • WI-36281 — Complete current statement works improperly with uniform variable syntax
  • WI-36307 — Incorrect default stubs path message shows too many messages
  • WI-36308 — Hierarchy check: Declaration incompatibility is not detected in case constructor has different number of arguments in comparision to parent class that implements interface
  • WI-36347 — First PHPDoc comment doesn't respect settings
  • WI-36362 — New Project From Existing Source: Empty tree for remote server
  • WI-36363 — Create new project from existing source: Project root and all other button disabled during the indexing
  • WI-36525 — Composer command line parameters not obeyed for update
  • WI-36531 — Varable type lost when using short array destructuring assignment
  • WI-36550 — New .idea/php.xml project structure breaks compatibility
  • WI-36557 — Behat: wrong error message if configuration file is not set
  • WI-36576 — Docker-compose: save all project before evaluating interpreter information
  • WI-36589 — File header should stick to an opening tag
  • WI-36594 — Reformat Code on Directory help button link is wrong
  • WI-36607 — Docker-Compose Unit Tests: Unable to locate container name for service "php" from docker-compose output when trying to run method unit test
  • WI-36614 — Sometimes missing Tools | Composer action group
  • WI-36617 — PhpGeneratePhpDocBlocksActionHandler leaks project
  • WI-36629 — Reformat code: method named "as" will be wrongfully be surrounded with spaces
  • WI-36656 — checkbox *save password* not saved
  • WI-36675 — Creation of method via UML for interface leads to method with a body
  • WI-36676 — Change signature: removes type in @return type on return type change
  • WI-36686 — Sync with deployed to skips changed files for no reason
  • WI-36764 — Password/passphrase entered in "Login to ... by SFTP" is not saved and used regardless checkbox Remember state
  • WI-36875 — Show folding for all structured directives (also @php and @endphp)
  • WI-36944 — IDE hangs on typing "define(("
  • WI-36967 — Static method of interface is always incompatible with parent method declaration
  • WI-36996 — Docker Compose: cannot execute single test method
  • WI-37018 — PHP 7.2 alpha 2 interpreter always started as interactive shell
  • Cosmetics:
  • WI-36003 — Blade: make directive background equal to Template language
  • WI-36739 — New project: core extenstions notification invisible
  • WI-36893 — Fix Type ComboBox alignment in workshop project generator
  • Exception:
  • WI-36009 — Frameworks settings: disabling all frameworks plugins leads to exception
  • WI-36139 — Exception raises in CompletionContributor#isNotIterable in the case of "SpCollectionImporter" namespace
  • WI-36679 — Change signature: Exception is thrown if return type is invalid
  • WI-36751 — Detect extensions: NPE is thrown in Default Settings
  • WI-36765 — NPE is thrown in case mapping folder is not a subfolder for mounted folder deployment server
  • WI-36812 — Project configuration: Exception occurs when selecting misconfigured remote interpreter
  • Feature:
  • WI-982 — New inspection: undefined field in constructor
  • WI-2164 — Please highlight $this usages
  • WI-3515 — Detect enabled/disabled extensions for the current PHP interpreter
  • WI-5053 — Autostart listening of debug connections
  • WI-6966 — Add parenthesis options for "if" statement
  • WI-8409 — UML: Implement "Add member" operations for PHP UML diagrams
  • WI-9161 — Separate bracket formatting options for closures from method/function options
  • WI-9428 — Allow keeping format for PHP statements on a single line
  • WI-10550 — More detailed PHP Formatter as for blank lines
  • WI-18735 — Run PHPUnit Tests automatically
  • WI-19413 — Implement groovyScript support in Live Templates
  • WI-22370 — Add new actions: update, install, upgrade, self_update
  • WI-23202 — New inspection: probable bug: "... statement is empty" for conditional statements/loops
  • WI-24611 — Hint PSR-x roots from composer.json files
  • WI-27256 — Additional item to the menu Deployment: Compare with Deploeyd version on ...
  • WI-30065 — Code Style and Formatting related to Null Coalesce Operator
  • WI-30844 — Method from class using NESTED trait is not found inside trait ($this,static,parent)
  • WI-31601 — New setting: after '{' (in section "Keep Maximum Blank Lines")
  • WI-32145 — Allow to choose visibility level for Extract constant refactoring
  • WI-33149 — Php formatter option for return type: same line/new line as function declaration
  • WI-33800 — Support docker-compose configuration
  • WI-34408 — Simplify settings for frameworks
  • WI-34471 — Detect PHP version from composer.json
  • WI-34840 — Variable might have not been defined inside of isset with field reference
  • WI-35633 — Add a code setting style to enforce a newline between `

New in PhpStorm 2017.2 Build 172.3198.4 EAP (Jun 28, 2017)

  • The most important changes from PHP side include:
  • PHP Language Level detection from composer.json
  • Extract constant refactoring allows choosing visibility level for PHP 7.1
  • New inspection: Statement has empty block
  • Simplified PHP settings page
  • Quick Fix "Remove unused parameter" now updates function calls
  • From platform side the update brings:
  • TypeScript: Support of default generics
  • Bug:
  • WI-15215 — Hierarchy check: Incompatibility in method signature between interface and parent class isn't detected
  • WI-28139 — Quick Fix: "Remove unused parameter" should update function calls too
  • WI-31939 — @method overwrite for inherited method causes "Missing parent call"
  • WI-35927 — Don't make true, false and null fully-qualifyed in namespaces
  • WI-36113 — Language Level: does not choke on declare(strict_types=1) if the php language level is set below 5.6
  • WI-36967 — Static method of interface is always incompatible with parent method declaration
  • Cosmetics:
  • WI-36893 — Fix Type ComboBox alignment in workshop project generator
  • Feature:
  • WI-23202 — New inspection: probable bug: "... statement is empty" for conditional statements/loops
  • WI-32145 — Allow to choose visibility level for Extract constant refactoring
  • WI-34471 — Detect PHP version from composer.json
  • WI-36811 — Rework refresh mechanics for PHP interpreters
  • Usability Problem:
  • WI-36574 — Improve usability of synchronization between composer.json and IDE settings
  • WI-36752 — Provide visual feedback on clicking Reload button
  • WI-36898 — Statement has empty body: Add option to ignore while cycle without body
  • WI-36900 — Empty statement: doesn't detect empty switch/try/finally/
  • WI-36928 — Navigate to active settings from run-configuration
  • WI-36963 — Empty statement: doesn't detect empty for cycle

New in PhpStorm 2017.2 Build 172.3095.16 EAP (Jun 22, 2017)

  • New formatting option: Spaces around null coalescing operator:
  • We continue working on PHP 7 and formatter, this time we bring you a new option (Settings|Editor|Code Style|PHP|Spaces|Around Operators|Null coalesce operator). The null coalescing operator (??) appeared in PHP 7 returns its first operand if it exists and is not NULL; otherwise it returns its second operand.null_coalescing
  • Apart from new features, this build brings many bug fixes, including these:
  • Mark as Plain text doesn’t work for External Libraries: WI-22649
  • Comment line action produces php code with errors if the line contains a string with PHP delimiter ?>: WI-9321
  • From the platform side the update brings:
  • JSDoc: param’s types are missing in auto-generated JSDoc: WEB-17218
  • TypeScript: Improve a way to show type inference information (auto declaration) for variables and expressions: WEB-19686
  • JavaScript: Extra inspection ‘The value assigned is never used’ inside ‘if’ section: WEB-15524
  • JavaScript: Optimize imports should respect code style settings: WEB-25192
  • Bug:
  • WI-9321 — Comment line action produces php code with errors if the line contains a string with PHP delimiter ?>
  • WI-22649 — Mark as Plain text doesn't work for External Libraries
  • WI-35248 — Docker remote CLI Interpreter + PHPUnit with filter
  • WI-35330 — Tab completion partially eats the next line when inserting a method reference
  • WI-35809 — Formatting of include() and require() methods adds extra space
  • WI-36557 — Behat: wrong error message if configuration file is not set
  • WI-36576 — Docker-compose: save all project before evaluating interpreter information
  • WI-36607 — Docker-Compose Unit Tests: Unable to locate container name for service "php" from docker-compose output when trying to run method unit test
  • WI-36675 — Creation of method via UML for interface leads to method with a body
  • Exception:
  • WI-36765 — NPE is thrown in case mapping folder is not a subfolder for mounted folder deployment server
  • WI-36812 — Project configuration: Exception occurs when selecting misconfigured remote interpreter
  • Feature:
  • WI-30065 — Code Style and Formatting related to Null Coalesce Operator
  • WI-36884 — Allow "Spaces around relational operators" to control spaceship operator
  • Task:
  • WI-36824 — Make notifications to use actions instead of hyperlinks
  • Usability Problem:
  • WI-20382 — Uninitialized syntax highlight context in the Live Template editor
  • WI-36137 — Docker-compose: allow to avoid manual saving of docker-compose

New in PhpStorm 2017.2 Build 172.2953.13 EAP (Jun 15, 2017)

  • Improved UI for PHP settings page:
  • In the previous EAP, we’ve added a new feature which automatically detects and synchronize project configuration with enabled extensions for PHP interpreter. Thanks to the feedback from our users we found out that the UI was not clear enough. In this build, we’ve reworked it. Now the button “Sync Extensions with Interpreter” has been moved into the PHP runtime tab and became more visible (Settings | Languages & Frameworks | PHP). We’ve also removed previously added notification “Would you like to detect extensions…?”.
  • From the platform side the update brings:
  • Support for CSS modules: WEB-17218
  • Bug:
  • WI-34145 — Inspection "Assignment replaceable with increment or decrement" produces IDE exception
  • WI-36274 — Incorrect FNM_NOESCAPE and FNM_PATHNAME values in standard_defines.php
  • WI-36764 — Password/passphrase entered in "Login to ... by SFTP" is not saved and used regardless checkbox Remember state
  • Cosmetics:
  • WI-36739 — New project: core extenstions notification invisible
  • Exception:
  • WI-36751 — Detect extensions: NPE is thrown in Default Settings
  • Feature:
  • WI-5053 — Autostart listening of debug connections
  • WI-36682 — Change signature: provide completion for return types
  • Usability Problem:
  • WI-36008 — Frameworks settings: don't resize the main dialog on collapsing/decollapsing
  • WI-36104 — Docker-compose: make name of interpreter to be the service name
  • WI-36750 — "Detect PHP Extensions" notification should be shown only for PHP projects
  • WI-36759 — I don't get the new Would you like to detect extension...

New in PhpStorm 2017.2 Build 172.2827.17 EAP (Jun 8, 2017)

  • The most important changes from PHP side include:
  • New Composer actions: remove package
  • Change signature refactoring: support of return types
  • UML: New Add field/method actions
  • New action to detect PHP extensions
  • Preserve state of Start Listening for PHP Debug Connection option
  • From platform side the update brings:
  • Configurable Patterns for Automatic Nesting of Transpiled Files
  • 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
  • Run single Karma test
  • Improved navigation in TypeScript

New in PhpStorm 2017.2 Build 172.2273.9 EAP (May 19, 2017)

  • HIGHLIGHTS:
  • Reworked polymorphic types support($this, static, parent):
  • We’ve completely reworked support of polymorphic types such as $this, static and parent. That has fixed a missing type in chain call if a method has a double return type (WI-30131), type loosing with new static() call if method from base class returns $this (WI-27532), returning self in traits is not resolved correctly (WI-32050) and many others issues requiring complicated type juggling.
  • $this highlighting:
  • When you place your caret on $this, PhpStorm highlights all usages of this variable across the whole class. That helps you to visually find usages of the variable.
  • New formatting options:
  • We’ve added new formatting options that help you to tune your project more precisely according to your company requirements or personal taste.
  • Also improved the way single line PHP blocks are treated so now braces will never be moved to the next line.
  • SSH-Agent support:
  • If you prefer to keep your SSH keys safe using SSH agent (on Linux and macOS) or Pageant (on Windows), this is now supported in PhpStorm. Just set authentication type to authentication agent when setting up your SSH connection.
  • Bug fixes:
  • Window is not restored in proper maximized state on Windows OS: IDEA-96168
  • Flow object type spread is not supported WEB-26408
  • FIXED ISSUES:
  • Bug:
  • WI-4438 — PHP: function inside method: self, static, parent erroneously resolved to the method's class
  • WI-20723 — Text from @return PHPDoc block not shown in Quick Documentation window in some cases
  • WI-21930 — Udefined class static in @method static static PhpDoc for a class
  • WI-27532 — PhpStorm loses auto-completion with `new static`, and method from base class returning $this
  • WI-28344 — Return $this leaks into other classes
  • WI-29641 — @method annotation is not recognized if return type is array[]
  • WI-30131 — Code completion not working on chained method calls if method has double return type
  • WI-31010 — Other type is ignored if there in @return static|OtherType expression (or $this, self)
  • WI-32050 — return self in traits is not resolved correctly
  • WI-34737 — Minimum blank lines value in "Before "Use" statement" in editor is one line less when namespace is omitted
  • WI-35018 — Wrong function parameter type detection in closure «use» construct
  • WI-35079 — Inspection Parameter type: False negative for static[] variable type
  • WI-36115 — Incomplete MongoDBDriver stubs
  • WI-36281 — Complete current statement works improperly with uniform variable syntax
  • WI-36307 — Incorrect default stubs path message shows too many messages
  • WI-36308 — Hierarchy check: Declaration incompatibility is not detected in case constructor has different number of arguments in comparision to parent class that implements interface
  • WI-36347 — First PHPDoc comment doesn't respect settings
  • WI-36362 — New Project From Existing Source: Empty tree for remote server
  • WI-36363 — Create new project from existing source: Project root and all other button disabled during the indexing
  • Feature:
  • WI-2164 — Please highlight $this usages
  • WI-6966 — Add parenthesis options for "if" statement
  • WI-9161 — Separate bracket formatting options for closures from method/function options
  • WI-9428 — Allow keeping format for PHP statements on a single line
  • WI-19413 — Implement groovyScript support in Live Templates
  • WI-35633 — Add a code setting style to enforce a newline between `

New in PhpStorm 2017.1.4 Build 171.4694.2 (May 16, 2017)

  • Bug:
  • WI-16531 — Function name must be callable - a string, Closure or class implementing __invoke, currently array
  • WI-25522 — Complete current statement: alternative syntax: endelseif is inserted after elseif
  • WI-28826 — "Invalid escape sequence" highlighted as "Bad character"
  • WI-28980 — On statement move collapsed Multi-line Comment opens again
  • WI-33726 — Array should be acceptable default type for iterable
  • WI-35606 — Hierarchy check: False Positive Declaration must be compatible error for constructor in case of different number of arguments
  • WI-35651 — 'Parameter type' inspection does not work with results of method call if called class implements any interface
  • WI-36042 — Autocomplete constant in a multi parameter method call skips to next parameter when passing a class constant
  • WI-36130 — Tip of the day "new scratch file" points to wrong menu
  • WI-36195 — Unused imports recognized wrongly with multiple namespaces in one file
  • WI-36237 — Autocomplete trait names and alias issue
  • Feature:
  • WI-5429 — Allow 'Complete Class Name' to work inside string literals
  • Usability Problem:
  • WI-28433 — $this- after typing - sign, function list
  • WI-35769 — Non-strict object equality: ignore all classes that extends DateTime and DateTime itself
  • WI-35771 — Non-strict object equality: shows warning in case there are multiple types and one of them is not primitive

New in PhpStorm 2017.2 Build 172.2103.5 EAP (May 10, 2017)

  • The most important changes from PHP side include:
  • Support docker-compose based PHP interpreter
  • PSR-0/4 roots detection from composer.json
  • Automatic PHPUnit Tests run with specific interval
  • New inspection: undefined field in constructor
  • Unified settings for PHP frameworks
  • Notable bug fixes and usability improvements:
  • Default path for "New Project from Existing Files..:" is always "/"
  • Array should be acceptable default type for iterable
  • Many fixes for Return type doesn't match inspection
  • @method annotation doesn't support keywords callable, $this, self and static
  • From platform side the update brings:
  • Find in Path: gutter icons, local change markers, focus
  • Better HiDPI support: per-monitor, auto-adjusted font-sizes
  • Recursive calls detection in Javascript
  • Parameter hints for TypeScript
  • Code rearranging for Javascript

New in PhpStorm 2017.1.3 Build 171.4424.11 (Apr 28, 2017)

  • Fixed indentation in multiline method/functions calls/declarations
  • Better support of Unicode symbols and emojis in PHP identifiers
  • New Laravel Blade Tags @isset and @empty
  • New PHPDoc template for Trait

New in PhpStorm 2017.1.3 Build 171.4330.2 EAP (Apr 20, 2017)

  • The most important changes from PHP side include:
  • Fixed indentation in multiline method/functions calls/declarations
  • Better support of Unicode symbols and emojis in PHP identifiers
  • Bug:
  • WI-15538 — Add to function[code 159] valid identifiers
  • WI-15990 — Syntax highlighting support for unicode characters
  • WI-21015 — Parser cannot parse (obscure) valid token names
  • WI-26694 — PhpStorm does not support (all) utf8 variable name characters which PHP actually supports
  • WI-33725 — Default value: False positive: constant can have a primitive type that differs from the declared one
  • WI-35313 — Default value: False positive: mixed type is not accepted as a primitive type
  • WI-35676 — Automatic indentation is wrong for multi line method parameters
  • WI-35770 — Non-strict object equality: comparison of arrays lead to warning
  • WI-35805 — View value of parent private array/object property in namespaced class shows `can not get property`
  • WI-35937 — Type inference doesn't work for short list syntax
  • Feature:
  • WI-23640 — Code Template: PHP Trait Doc Comment
  • WI-29741 — Unwrap: support foreach loop
  • Usability Problem:
  • WI-15929 — PHP Code Completion Ignores Code Style when inserting function call
  • WI-35973 — "Advanced settings" pane under "PHP Runtime" should be opened if "Default stubs path" is not empty

New in PhpStorm 2017.1.2 Build 171.4249.3 (Apr 13, 2017)

  • This build brings bug fixes for the most annoying issues from the last update. In addition, it delivers a couple of new features.
  • The most important changes include:
  • Fixed highlighting of concatenated strings for custom color schemes
  • Fixed REST client
  • New folding for blocks
  • Optimized memory usage for large XDebug profiler snapshots
  • Fixed class method displayed as italic if name coincides with any internal function
  • Bug:
  • WI-11172 — PHP: don't offer 'Surround with 'isset'', '!empty' intentions for variable write access
  • WI-24248 — Allow usage of ArrayObject in place of array for array_* functions
  • WI-27179 — Do not browse server tree from root in places other than choosing root path
  • WI-29847 — Mappings for single file doesn't work
  • WI-34841 — alternate syntax (if - endif) brace matcher fail - further brackets are not autocompleted
  • WI-35002 — alternate syntax (foreach, for, while) brace matcher fail - further brackets are not autocompleted
  • WI-35346 — All children of Traversable are not accepted as iterable
  • WI-35348 — iterable shouldn't be suggest in new/extends/use/::class statements
  • WI-35581 — Force braces on `new Class` setting breaks anonymous classes creation
  • WI-35651 — 'Parameter type' inspection does not work with results of method call if called class implements any interface
  • WI-35682 — Illegal string offset: False Positive: in case type of offset is unknown or mixed
  • WI-35805 — View value of parent private array/object property in namespaced class shows `can not get property`
  • WI-35806 — Remote PHPUnit uses wrong path delimiters using Composer autoloader on Windows
  • WI-35882 — Language Level: Null reserved keyword
  • WI-35899 — New Joomla projects are empty
  • WI-35954 — Injection by comment doesn't work for JDatabaseQuery string arguments
  • Cosmetics:
  • WI-954 — Class method displayed as italic if name coincides with any internal function
  • WI-35481 — "too many parameters" inspection tooltip is shown twice for the method in a class
  • Exception:
  • WI-35673 — Incorrect trait conflict resolving
  • Feature:
  • WI-993 — Folding: Add 'Collapse/Expand Top Level' functionalityFeature: Folding of blocks
  • WI-21339 — WordPress: Auto-recognize Well-known WordPress Global Variables
  • WI-21807 — Detect Attempt to unset static property
  • Performance Problem:
  • WI-35842 — Unused imports inspection works slow
  • Usability Problem:
  • WI-35775 — Highlighting of concatenated strings overrides line highlighting
  • WI-35789 — Breadcrumb for anonymous class is empty

New in PhpStorm 2017.1.1 Build 171.4163.3 EAP (Apr 5, 2017)

  • The most important changes from PHP side:
  • Option to always show parameter name hints
  • Unified icons for PHP classes, interfaces, traits in Editor Tabs, File Switcher, and other
  • Possibility to skip files in step debugging
  • Support of JDatabaseQuery and JDatabaseDriver
  • PhpStorm Workshop project
  • Recursion detection
  • Inspection to detect disabled extension stubs and illegal string offset
  • String access as hash
  • Breadcrumbs improvements for PHP
  • Improved anonymous classes support
  • Emoji support in PHP identifiers and double quoted strings
  • Important bug fixes:
  • Font is wrong and without anti-aliasing: JRE-205
  • Regression: “Select All” does not Work: JRE-280
  • Crash when typing “Special Key” on Keyboard: JRE-282
  • Scroll from source inside a scope changes scope to “Project Files”: IDEA-169461
  • ESLint: wrong linebreak-style: WEB-25487
  • Bug:
  • WI-14956 — PHP breadcrumbs for functions doesn't take into account namespaces
  • WI-24366 — Blade support: Does not recognize inline sections
  • WI-25830 — Blade: not inline sections with complex mix of quotes and commas are recognized as inline
  • WI-29914 — Undefined variable: variables passed by reference are marked as undefined in case of multiresolve
  • WI-33262 — Emoji unicode characters in double quote string cause syntax error
  • WI-33334 — mcrypt - extend
  • WI-33365 — External Documentation can't resolve @link tag
  • WI-34414 — Parameter hint: blacklist doesn't match PHP functions/method
  • WI-34495 — Return type inspection: anonymous classes don't really extend/implement declared classes/interfaces
  • WI-34540 — Parameter Hints for variables are shown only if there is at least one literal
  • WI-34673 — Braces counter bug
  • WI-35212 — Brace matcher: insert additional closing brace for statements inside if/else/endif statement
  • WI-35215 — Brace matcher fails on if/elseif without braces if statement inside if is long enough
  • WI-35225 — Blade Slot directive doesn't allow for second parameter
  • WI-35260 — Brace matcher: editor inserting excessive closing bracket ("}") in case there is if/else in alternative syntax
  • WI-35344 — New Project dialog reuses previous state instead of default project settings
  • WI-35379 — Stubs are not recognised: Restart is required
  • WI-35428 — Sorted include paths move up and down in a strange manner
  • WI-35486 — Brace matcher: Wrong closing curly brace on weird combination of parameter count and type hints
  • WI-35587 — CLI Interpreter: set Configuration options not visible
  • WI-35598 — Blade: Directive is not closed is triggered for valid directives
  • WI-35619 — PHPDoc block not generated if Insert string concatenation on Enter is disabled for SQL
  • WI-35685 — Configure extension stubs quick fix shouldn't be available for batch run with multiple problems
  • WI-35686 — Undefined function: inspection doesn't work for function in stubs
  • WI-35687 — Configure extension stub: doesn't highlight stub in tree when configured stubs are used
  • WI-35772 — Blade: ignore Vue.js directives
  • WI-35776 — Wrong brace auto-complement where there is a goto label
  • Cosmetics:
  • WI-33298 — Mouse hover on breadcrumb shows PhpClass for interfaces and traits
  • WI-33565 — File Transfer tab capitalizes "k" for kilobit prefix
  • WI-35496 — Empty block in function path (breadcrumbs) for PHP closure
  • Exception:
  • WI-28566 — An exception occurs during indexing of a PHP file with a lot of traits
  • WI-35514 — Exception is thrown on analysis of array_shift function
  • WI-35680 — Exception is thrown on typing inside string array
  • Feature:
  • WI-741 — continuous single line comments with triple slash (///)
  • WI-3824 — New inspection: Add non-strict object equality comparison inspection
  • WI-28722 — Implement skipping files when stepping into
  • WI-32214 — Support JDatabaseQuery
  • WI-32976 — String access as hash
  • WI-33319 — Symbol icons on PHP file tabs
  • WI-33979 — Symbol icons in File switcher
  • WI-34519 — Provide parameter hints for array argument
  • WI-35123 — Support PHPDoc in @php @endphp tags
  • WI-35186 — Support Emoji in PHP identifiers
  • WI-35353 — Recursion detection like in GO plugin
  • WI-35389 — Option to always show parameter name hint
  • WI-35431 — Provide PhpStorm workshop in create new project dialog
  • WI-35517 — Inspection to detect disabled extension stubs which are used in a project
  • Usability Problem:
  • WI-31724 — Type inference: doesn't work for anonymous class that implements interface or extends class
  • WI-34496 — Simplify representation of type for anonymous class
  • WI-35479 — Interpreters: improve naming for new interpreter options
  • WI-35787 — Update window unscrollable

New in PhpStorm 2017.1.1 Build 171.4073.14 EAP (Mar 30, 2017)

  • The most important changes from PHP side include:
  • Option to always show parameter name hints
  • Unified icons for PHP classes, interfaces, traits in Editor Tabs, File Switcher and etc.
  • Possibility to skip files in step debugging
  • Joomla!: Support JDatabaseQuery
  • PhpStorm Workshop project type
  • Recursion detection
  • New inspection: Detect disabled extension stubs
  • New inspection: Illegal string offset
  • Breadcrumbs improvements for PHP
  • Initial Emoji support in PHP identifiers and double quoted strings
  • Important bug fixes:
  • Font rendering
  • "Select All" does not Work on macOS
  • Crash when typing "Special Key" on Keyboard
  • Scroll from source inside a scope changes scope to "Project Files"
  • ESLint: wrong linebreak-style

New in PhpStorm 2017.1 Build 171.3780.104 (Mar 23, 2017)

  • Tools and frameworks:
  • Support of the Codeception testing framework
  • Support of PHPUnit 6
  • Blade Support Improvements
  • Editing experience:
  • Parameter Hints
  • Improved support of PSR-0 and Rename Refactoring
  • Recognition of PHP class names in strings
  • Improved PHP formatting
  • Improvements in auto-import functionality:
  • Auto-import of functions and constants
  • Auto-import from the global namespace
  • PHP language support:
  • Full support of PHP 7 Uniform Variable Syntax
  • Current scope highlighting for alternative syntax
  • PHP 7.1: Improved support for anonymous classes
  • New code highlights
  • Configurable PHP runtime
  • Code quality analysis:
  • Detect and convert PHP 4 style constructors to PHP 5.3+
  • New quick-fix for undefined variables
  • PHP debugging:
  • Grouping of user-defined constants in Debugger
  • Allow choosing IP to be sent to Zend Debugger

New in PhpStorm 2017.1 Build 171.3780.55 RC 1 (Mar 16, 2017)

  • Tools and frameworks:
  • Support of the Codeception
  • testing framework
  • Support of PHPUnit 6
  • Blade Support Improvements
  • Editing Experience:
  • Parameter Hints
  • Improved support of PSR-0 and Rename Refactoring
  • Recognition of PHP class names in strings
  • Improved PHP formatting
  • PHP language support:
  • PHP 7 and 7.1: Uniform Variable Syntax, anonymous classes and iterable
  • Current scope highlighting for alternative syntax
  • Auto-import of functions and constants
  • Auto-import from the global namespace
  • New code highlights
  • Configurable PHP runtime
  • Code quality analysis:
  • Detect and convert PHP 4 style constructors to PHP 5.3+
  • New quick-fix for undefined variables
  • PHP debugging:
  • Grouping of user-defined constants in Debugger
  • Allow choosing IP to be sent to Zend Debugger
  • Web Technologies:
  • Vue
  • .js
  • support
  • Integration with Jest
  • Completion for modules in package.json
  • IDE improvements:
  • Many VCS improvements
  • Update Find in Path dialog
  • Improvements in Database tools

New in PhpStorm 2017.1 Build 171.3780.27 EAP (Mar 9, 2017)

  • Tools and frameworks:
  • Support of the Codeception testing framework
  • Support of PHPUnit 6
  • Blade Support Improvements
  • Editing experience:
  • Parameter Hints
  • Improved support of PSR-0 and Rename Refactoring
  • Recognition of PHP class names in strings
  • Improved PHP formatting
  • Improvements in auto-import functionality:
  • Auto-import of functions and constants
  • Auto-import from the global namespace
  • PHP language support:
  • Full support of PHP 7 Uniform Variable Syntax
  • Current scope highlighting for alternative syntax
  • PHP 7.1: Improved support for anonymous classes
  • New code highlights
  • Configurable PHP runtime
  • Code quality analysis:
  • Detect and convert PHP 4 style constructors to PHP 5.3+
  • New quick-fix for undefined variables
  • PHP debugging:
  • Grouping of user-defined constants in Debugger
  • Allow choosing IP to be sent to Zend Debugger
  • Bug:
  • WI-3491 — PHP: good code stays red on adding case block into switch
  • WI-5015 — PHP reparse: typing or changing a declaration after namespace or adding namespace causes "good code is red" until file completely reparsed
  • WI-5586 — False error in switch - on typing in new default
  • WI-5622 — Parsing: if/endif: Problems with typing in else
  • WI-6175 — False error on if - endif syntax when typing in else/elseif
  • WI-7195 — Switch - typing in new case clause - expecting statement stuck
  • WI-8108 — Resolve and find usages has issues for use aliases
  • WI-12231 — Blank line rules disobeyed if comment exists outside block
  • WI-13620 — Call static function with dynamic name
  • WI-19138 — Class keyword isn't allowed in instanceof expression
  • WI-19755 — Simplify FQN: for FQN class makes import undefined
  • WI-21344 — Extend xdebug protocol implementation
  • WI-22750 — Import class: validate if the alias already used in the same file on different namespace psi
  • WI-23299 — Expressions containing namespace separator cannot be evaluated in watchers (in safe mode)
  • WI-23666 — Rename refactoring of parameter breaks PHPDoc if Keep blank lines in PHPDoc is disabled and Blank lines around parameters is enabled
  • WI-23908 — Conflicting import is not detected (functions, consts, classes)
  • WI-26645 — Auto-suggest with constants used in constructor breaks after a random, short delay.
  • WI-26731 — PHPDoc autocompletion ignores "Use FQ class name" code style in cases where import can be avoided
  • WI-26786 — PHP Code Style : Other > Blank line before return statement doesn't work if there is a comment before
  • WI-26878 — Cannot connect to pure IPv6 host from Mac OS X Yosemite 10.10
  • WI-28450 — Use of function and class with same name results in error
  • WI-29163 — Dataflow to: proper handling of global variables
  • WI-29362 — Dataflow: doesn't know about anonymous class with parameter
  • WI-29746 — Undefined constant CURLOPT_POSTREDIR
  • WI-30201 — Typehint for unserialize warns on new PHP7 second parameter
  • WI-30768 — Autoimport can't reuse group use statements for functions and constants
  • WI-30836 — Do not insert spaces inside declare statements to abide PSR-2
  • WI-31069 — Blade: support injection in @inject
  • WI-31762 — Wrong / outdated file_get_contents() documentation
  • WI-32323 — Incorrect metaphone() phpdoc
  • WI-32388 — Variable that holds anonymous class doesn't have type
  • WI-32390 — Smart step into has problem with code has Namespace
  • WI-32605 — New project dialog is not scrollable on Mac OS
  • WI-32626 — Completion items become invalid during typing when a live template is active
  • WI-32953 — Provide completion for self/static inside anonymous class
  • WI-33042 — Don't allow creation of two interpreters with identical names
  • WI-33090 — PHPCS/PHPMD: create docker container with parameters defined for interpreter
  • WI-33253 — Download project files will trigger "auto upload external changes"
  • WI-33451 — Refactor extract method creates premature return statements
  • WI-33530 — PHAR file in project leads to empty project view and throws exception
  • WI-33577 — Generate PHPDoc: confusing 'int|null|null' type
  • WI-33587 — PHPSpec: provide better error reporting for wrong path to phpspec
  • WI-33588 — User defined constants: do not seem to obey "Sort values Alphabetically" option
  • WI-33741 — Mixed namespace declarations are not detected
  • WI-33799 — Memcache increment documentation error
  • WI-34180 — Project Templates: List in Tools | Manage Project Templates is nonscrollable vertically
  • WI-34188 — New project... from Welcome screen might have noncontrollably wide list area
  • WI-34254 — Incompatible method declaration warning because of annotation in interface
  • WI-34269 — Resize New Project dialog that is invoked from project view
  • WI-34312 — PHPDebug: Cant step into function when first line is a conditional break point
  • WI-34314 — False positive on "Default value for parameters" with ::class constant
  • WI-34363 — overidden class declaration inspector and comparison case sensitivity for constructor
  • WI-34399 — Add to use: works wrong if there is a reference in use statement
  • WI-34400 — getopt(): "Expected int, got array"
  • WI-34401 — Add to use: doesn't produces broken code in case there is return type
  • WI-34403 — Problems with handling characters in variable and property names
  • WI-34411 — Parameter hint shows "..._" for anonymous function call
  • WI-34427 — Sync with deployed encoding problem
  • WI-34479 — Unable to launch 2017.1 on Windows x64 -- installer installed 64-bit bundled JDK, but offered to create shortcut for 32-bit launcher only
  • WI-34509 — If there is a function with return type double closing curly braces are inserted on pressing enter
  • WI-34512 — Scope highlighting doesn't work for elseif alternative syntax
  • WI-34515 — Else statement and ternary operator produces incorrect matching
  • WI-34518 — Short array syntax destructuring does not allow for key in foreach()
  • WI-34526 — Add method: Cancel doesn't work
  • WI-34556 — IML file is changed when project is shared between PhpStorm and IDEA
  • WI-34579 — Invalid closing brace always inserted on switch-default-foreach construct
  • WI-34584 — Autocomplete not efficient in array
  • WI-34599 — Do not create PHP Runtime library on start
  • WI-34600 — Download From ... server selection popup has label for upload
  • WI-34601 — Deployment popup doesn't have Download From ... option
  • WI-34627 — Blade: support injection in @includeIf
  • WI-34641 — Regexp to detect copyright in comments not working
  • WI-34664 — SFTP authentication fails because of unsupported request format
  • WI-34701 — Line indent for Complex Curly syntax ${some_var} does not work properly since 2016.3.2 (including EAP)
  • WI-34724 — Extract Interface: doesn't import method's return type
  • WI-34733 — brace matcher fails on if/elseif without braces
  • WI-34738 — Currying functions in PHP7 marked as invalid syntax
  • WI-34748 — Case sensitivity with Core classes leads to unused imports
  • WI-34757 — getopt(): "Required parameter $optind missing"
  • WI-34758 — No closing curly brace is auto-appended after elseif and further weird behavior of braces completion in file
  • WI-34769 — Namespace alias is case insensitive
  • WI-34790 — Evaluate Expression reports a parse error in command when expanding an array
  • WI-34796 — Download from... in ProjectView always uses default server
  • WI-34819 — False positive for float scalar hint inspection
  • WI-34831 — Using two classes with same name and different namespaces inside one of namespace
  • WI-34841 — alternate syntax (if - endif) brace matcher fail - further brackets are not autocompleted
  • WI-34845 — Dot is added as PHP Include on project creation, causing PhpStorm to index the whole home dir
  • WI-34851 — Empty password ignored (sftp)
  • WI-34897 — Find usage for constructor doesn't look through aliased classes
  • WI-34902 — Auto Import: avoid import of magic constants from global namespace
  • WI-34903 — Auto Import: avoid import of unset/exit/die/list/array/... from global namespace
  • WI-34906 — Undefined variable: Argument that is passed as a reference into a constructor is marked as undefined
  • WI-34909 — Auto-import of functions/constants doesn't handle conflicts
  • WI-34910 — Conflict of import with declared function/constant is not detected
  • WI-34913 — Completion of constants/functions from global namespace omit prefix in case when constant/function from the same namespace already exists
  • WI-34917 — Command Line Tool Support is Incompatible with Latest WebStorm
  • WI-34920 — Find usage for old style constructor doesn't look through aliased classes
  • WI-34992 — Codeception: < 2.2.6 doesn't support running a single method
  • WI-34993 — Codeception: versions for PHP 5.4/PHP 5.5 are not supported
  • WI-34998 — Xdebug: backslashes should be escaped in 'property_get' request
  • WI-35004 — Rename class: references of renamed childs are not updated
  • WI-35008 — Shouldn't new __construct inspector fix callers?
  • WI-35029 — Constants defined using 'define()' are not resolved
  • WI-35030 — Constants defined improperly using 'define()' are still resolved
  • WI-35031 — False positive: Cannot use 'CONSTANT' because name is already in use for constant's use
  • WI-35052 — Auto-import of functions/constants doesn't handle conflicts inside a file
  • WI-35061 — False positive: Unnecessary fully qualified name when class is declared in another namespace
  • WI-35118 — Filter or encode unicode characters during detecting php info
  • WI-35127 — PhpStorm can't be started on Windows: tools.jar is not found
  • WI-35151 — Problems with imported symbols with the same name
  • WI-35167 — PSR Renaming file with interface renames file and inheritors but doesn't rename inheritors file
  • WI-35179 — Support drag'n'drop between Remote Host and Project Files/Test tabs of Project View
  • WI-35183 — Log to File Transfer toolwindow remote to remote transfers
  • WI-35190 — Remote Host panel is not refreshed on D'n'D operations
  • WI-35246 — Class is not imported if there's a function with the same name
  • WI-35345 — iterable in namespaces is treated like a usual class
  • WI-35360 — iterable is inserted as usual class in namespaced code
  • Cosmetics:
  • WI-23960 — Add power operator to description of "Multiplicative operators"
  • WI-34396 — after commit: Upload files to
  • Exception:
  • WI-20091 — Rename refactoring produces unexpected results damaging code
  • WI-34335 — Exception is thrown after import of test configurations in 2017.1
  • WI-34468 — Exception is thrown on generating PHPDoc
  • WI-34469 — Exception is thrown on generating constructor
  • WI-34497 — Exception is thrown on field initialization
  • WI-34524 — 'Add field' quick fix throws exception
  • WI-34525 — 'Add method' quick fix throws Exception
  • WI-34921 — Exception is thrown on import class intention
  • WI-35044 — Exception is thrown on attempt to complete namespaced class in Watch panel
  • WI-35076 — Exception is thrown inside Debug Console
  • WI-35148 — Exception is thrown on expansion of Live Template
  • Feature:
  • WI-4228 — Undefined variable: New QuickFix: resolve undefined variable by declaring it as imported in closure
  • WI-4274 — Rename: Rename class -> Rename inheritors: propose rename child classes files as well
  • WI-4452 — New inspection: Detect PHP4 constructors and Convert to PHP 5.3 constructors
  • WI-5276 — "Download from..." option for deployment
  • WI-5731 — Provide a way to remove unused (not installed/enabled?) PHP extension stubs from completion and all other places.
  • WI-7192 — Control generated "Add method" and "Add field"
  • WI-10916 — Align assignment doesn't align shorthand operators
  • WI-12579 — Codestyle, format writing of elseif statement
  • WI-13996 — Provide "Copy Class Name" action
  • WI-14517 — Highlighting of alternate php syntax tags in PhpStorm
  • WI-15676 — Auto-import: Option to use full qualified namespace in PHPDoc type description
  • WI-16350 — Codeception testing framework integration
  • WI-17223 — Add a code style setting to specify the maximum and minimum blank lines above namespace
  • WI-17975 — Jump to Classes from the Debugger Variables View
  • WI-21111 — Support copy (with copy-paste and drag'n'drop) in RemoteHost
  • WI-21208 — Class Refactoring Rename only changes file name
  • WI-21385 — Import namespaces when evaluating an expression
  • WI-22800 — Remote Interpreter: support debug with Zend Debugger
  • WI-24262 — 'Go to declaration' with PHP class name string literals
  • WI-25169 — Refactor-Rename filesystem directory in PSR-0 root does not change namespace
  • WI-26501 — Support basic PhpDoc in Blade injections
  • WI-26767 — Add ability to enable auto-import from the global namespace
  • WI-27425 — phpstorm always enters the function/constant FQN inline rather than adding "use function|const ..." in imports
  • WI-27451 — Support PHP 7 "Uniform Variable Syntax"
  • WI-29616 — Dataflow: should take into account __toString() magic method
  • WI-30147 — Ability to omit brackets in autocompletion if class does not have a constructor
  • WI-30294 — Add code-style option without braces after constructor without parameters
  • WI-32063 — Highlight all places where an exception is thrown (for 'try' and 'catch')
  • WI-32064 — Highlight all places where an exception is thrown (for '@throws')
  • WI-32140 — Unused import: namespace aliases are not supported
  • WI-32141 — Unused import: function aliases are not supported
  • WI-32142 — Unused import: constant aliases are not supported
  • WI-32227 — PSR-12 — instantinating a class must have parenthesis present
  • WI-32378 — Implement `iterable` pseudo type
  • WI-33396 — Allow user to toggle class separator for PHP 7+ anonymous classes
  • WI-33585 — User-defined constants: Provide an option to show/hide them ... or at least group them under dedicated/artificial node
  • WI-34033 — Show parameter hint for method/functions calls right in the editor
  • WI-34228 — Add fromCallable static function to Closure
  • WI-34259 — Highlight all extended / implemented methods
  • WI-34262 — Highlight all places where an import is used
  • WI-34407 — Simplify settings for PHP debug
  • WI-34412 — Provide parameter hint for constructors
  • WI-34446 — Provide an options to prepend function/constant from root namespace with or import them explicitly
  • WI-34477 — Add Parameter Hints to variables too
  • WI-34501 — Joomla support: Joomla! boilerplate update
  • WI-34566 — Blade: Allow usage of completion.contributor and gotoDeclarationHandler without register directive in settings
  • WI-34628 — Blade: support @component and @slot directive with nesting
  • WI-34630 — Spaces inside declare statements should be configurable
  • WI-34643 — Support regex in "Allow replacing copyright if old copyright contains" field
  • WI-34694 — Provide detailed message about unnecessary import instead of general not used one
  • WI-34755 — Inline add method/field fixes
  • WI-34804 — Add void as forbidden class name in PHP 7.1
  • WI-34855 — Add composer.json to JetBrains/phpstorm-stubs and publish on packagist
  • WI-34957 — PhpUnit 6 test case is not recognized
  • WI-35048 — Insert FQN on completion inside Evaluate Expression and Watches panel
  • WI-35051 — Import namespaces when evaluating an expression in Debug Console
  • WI-35060 — Import namespaces when evaluating an expression in Watches
  • WI-35284 — Provide option Ignore imports and formatting in Diff dialog for PHP
  • Meta Issue:
  • WI-31604 — Problems with PHP 7 anonymous classes support
  • Task:
  • WI-26794 — DBGP debugger should cache "context_names" response.
  • WI-33237 — Split embedded stubs into modules
  • WI-34894 — Merge "Language Level" and "PHP 7 Compatibility" inspections
  • WI-34976 — "Indent as template language unless PHP-only" option no longer exists.
  • WI-35178 — Remove dialogs from drag'n'drop and copy-paste between Project View and Remote Host
  • Usability Problem:
  • WI-566 — Highlight current scope for alternative syntax
  • WI-7465 — Allow choosing IP to be sent to Zend Debugger on machine with multiple IPs
  • WI-22133 — dragging files from remote host to project folder removes them on the server
  • WI-28559 — Debug console: Make it visually clear where is user input and where is output
  • WI-31361 — Allow HEREDOC/NOWDOC to be closed when reusing identifier *before* existing usages
  • WI-32845 — PHPUnit: cache and show in ui detected phpunit version
  • WI-33783 — Remove Anonymous option from sftp as nonexistent
  • WI-33859 — 'Application-level' concept isn't described anywhere
  • WI-34289 — PHP Tests: save configuration on the same level as corresponding interpreter
  • WI-34334 — Renaming interpreter from Test Settings lead to
  • WI-34489 — Parameter hint: provide option to set color
  • WI-34559 — instanceof should not suggest a trait in autocomplete
  • WI-34586 — generate phpdoc does not add null annotation for typed parameter with null default value
  • WI-34596 — Disable the warning about immutable stubs
  • WI-34777 — Preserve expanded/collapsed state for 'Constants' between debug sessions
  • WI-34825 — User-defined constants: don't add empty 'Constants' node
  • WI-34899 — Rename file: don't show "Rename class" option if not applicable
  • WI-34914 — Import of constant/function may change meaning of code
  • WI-34928 — Remove functions and constants that can't be imported from completion list
  • WI-34972 — PHPUnit 6: create file templates for new version
  • WI-35053 — Import of constant/function may change meaning of code inside a file
  • WI-35163 — Inappropriate live template is suggested for autocompletion
  • WI-35191 — Remove, creation, renaming and permission change of folders and files are not logged.
  • WI-35275 — Sort "include path" alphabetically
  • WI-35279 — Provide error message in case PHP version is not compatible with PHPUnit version

New in PhpStorm 2017.1 Build 171.3691.14 EAP (Mar 1, 2017)

  • Drag’n’Drop to/from Remote Host copies files instead of moving:
  • In this build, we’ve fixed one of the major pain-points, which stayed in the IDE for a long time. Now PhpStorm behaves like all other tools for deployment: when you are dragging files or folders from a remote host to a project or vice versa, they are copied instead of moving. Dragging files/folders within Remote Host or Project panel moves them as before.
  • Rename namespace/folder follows PSR-0 rules:
  • Now if you use Rename Refactoring for a directory in PSR-0 root, it also changes the namespace where your class is located. It also works the opposite way, if you rename a namespace, the folder is renamed as well.
  • Apart from new features, this build brings many bug fixes, including these:
  • Show query time taken in status bar: DBE-3063
  • RAISE NOTICE not displaying timely: DBE-1884
  • Bug:
  • WI-19138 — Class keyword isn't allowed in instanceof expression
  • WI-21344 — Extend xdebug protocol implementation
  • WI-29746 — Undefined constant CURLOPT_POSTREDIR
  • WI-30201 — Typehint for unserialize warns on new PHP7 second parameter
  • WI-31762 — Wrong / outdated file_get_contents() documentation
  • WI-33587 — PHPSpec: provide better error reporting for wrong path to phpspec
  • WI-33799 — Memcache increment documentation error
  • WI-34400 — getopt(): "Expected int, got array"
  • WI-34701 — Line indent for Complex Curly syntax ${some_var} does not work properly since 2016.3.2 (including EAP)
  • WI-34757 — getopt(): "Required parameter $optind missing"
  • WI-35151 — Problems with imported symbols with the same name
  • WI-35179 — Support drag'n'drop between Remote Host and Project Files/Test tabs of Project View
  • WI-35183 — Log to File Transfer toolwindow remote to remote transfers
  • WI-35190 — Remote Host panel is not refreshed on D'n'D operations
  • Exception:
  • WI-34921 — Exception is thrown on import class intention
  • Feature:
  • WI-21111 — Support copy (with copy-paste and drag'n'drop) in RemoteHost
  • WI-25169 — Refactor-Rename filesystem directory in PSR-0 root does not change namespace
  • WI-34228 — Add fromCallable static function to Closure
  • Task:
  • WI-34976 — "Indent as template language unless PHP-only" option no longer exists.
  • WI-35178 — Remove dialogs from drag'n'drop and copy-paste between Project View and Remote Host
  • Usability Problem:
  • WI-22133 — dragging files from remote host to project folder removes them on the server
  • WI-32845 — PHPUnit: cache and show in ui detected phpunit version
  • WI-35163 — Inappropriate live template is suggested for autocompletion

New in PhpStorm 2017.1 Build 171.3566.28 EAP (Feb 22, 2017)

  • The most important changes include:
  • Allow choosing IP to be sent to Zend Debugger
  • Redesigned Find In Path
  • Highlighting of current editor tab for Darcula
  • Many other features and changes from IntelliJ platform and web are also included.

New in PhpStorm 2017.1 Build 171.3224.10 EAP (Feb 16, 2017)

  • PHP Debug: Use namespace and imports from execution point in Watches, Evaluate Expression and Debug Console.
  • Simplified PHP Debug Settings page.
  • Improved Auto-import and Unnecessary fully qualified name inspection.
  • Many other features and changes from IntelliJ platform and web are also included.
  • More info about this update is available at https://blog.jetbrains.com/phpstorm/2017/02/phpstorm-2017-1-eap-171-3224.

New in PhpStorm 2017.1 Build 171.3019.12 EAP (Feb 8, 2017)

  • The most important changes from PHP side include:
  • Codeception test framework support
  • PHPUnit 6 support
  • Rename Class Refactoring renames files of child classes
  • New Code Style option: Spaces inside declare statements
  • New inspection: Detect and convert PHP4 style constructors
  • Many other features and changes from IntelliJ platform and web are also included.

New in PhpStorm 2017.1 Build 171.2822.14 EAP (Feb 1, 2017)

  • The most important changes from PHP side include:
  • Support PHPDoc in Blade
  • Recognition of PHP class names in strings
  • Improvements in auto-import functionality including better alias support
  • Many other features and changes from IntelliJ platform and web are also included
  • Bug:
  • WI-8108 — Resolve and find usages has issues for use aliases
  • WI-34819 — False positive for float scalar hint inspection
  • WI-34845 — Dot is added as PHP Include on project creation, causing PhpStorm to index the whole home dir
  • WI-34897 — Find usage for constructor doesn't look through aliased classes
  • WI-34902 — Auto Import: avoid import of magic constants from global namespace
  • WI-34903 — Auto Import: avoid import of unset/exit/die/list/array/... from global namespace
  • Cosmetics:
  • WI-23960 — Add power operator to description of "Multiplicative operators"
  • Feature:
  • WI-21208 — Class Refactoring Rename only changes file name
  • WI-24262 — 'Go to declaration' with PHP class name string literals
  • WI-26501 — Support basic PhpDoc in Blade injections
  • WI-34694 — Provide detailed message about unnecessary import instead of general not used one
  • WI-34804 — Add void as forbidden class name in PHP 7.1
  • WI-34855 — Add composer.json to JetBrains/phpstorm-stubs and publish on packagist
  • Task:
  • WI-34894 — Merge "Language Level" and "PHP 7 Compatibility" inspections
  • Usability Problem:
  • WI-34777 — Preserve expanded/collapsed state for 'Constants' between debug sessions
  • WI-34825 — User-defined constants: don't add empty 'Constants' node
  • WI-34899 — Rename file: don't show "Rename class" option if not applicable

New in PhpStorm 2017.1 Build 171.2455.9 EAP (Jan 19, 2017)

  • The most important changes from PHP side include:
  • Improvements in support of PHP 7 Uniform Variable Syntax
  • Auto-import of functions and constants
  • Auto-import from the global namespace
  • Fully-qualified class names in PHPDoc type description
  • Support of function/constant/namespace aliases in unused imports
  • Many other features and changes from IntelliJ platform and web are also included.

New in PhpStorm 2017.1 Build 171.2272.10 EAP (Jan 11, 2017)

  • The most important changes from PHP side include:
  • New option to omit/force parenthesis in class instantiating without arguments
  • New option to force either else if or elseif
  • Regex support for Copyright Plugin
  • Many other features and changes from IntelliJ platform and web are also included.

New in PhpStorm 2017.1 Build 171.2152.2 EAP (Jan 4, 2017)

  • The most important changes from PHP side include:
  • New option for minimum blank lines before namespace
  • Align assignments now works for shorthand operators
  • New Download From ... action
  • Copy Type and Jump to Type Source action in Debugger Variables View
  • Many other features and changes from IntelliJ platform and web are also included.

New in PhpStorm 2017.1 Build 171.2014.12 EAP (Dec 29, 2016)

  • The most important changes from PHP side include:
  • Fixes of reparse errors for alternative syntax, switch statement and namespace names
  • Current scope highlighting for alternative syntax
  • Visibility selector for Add Method quick fix
  • Improvements for Parameter Hints (color selector and hints for constructor)
  • PHP 7.1: Improved support for anonymous classes
  • From platform side the update brings:
  • Read-only repositories can be used for settings storage
  • Fixes of reparse errors for alternative syntax, switch statement and namespace names:
  • We’ve fixed a lot of reparse errors so you can forget Cut/Paste technique for the following scenarios: alternative syntax statement for writing if/elseif/else; a new case or default inside a switch statement; writing namespace name that starts with a keyword.
  • Current scope highlighting for alternative syntax:
  • We’ve implemented current scope highlighting for alternative syntax statements similar to curly braces. Now you can easily see and navigate to matching pair in pHTML templates.
  • Visibility selector for Add Method quick fix:
  • Now you can choose visibility for a new method in the Add Method quick fix.
  • Improvements for Parameter Hints:
  • Recently we’ve implemented Parameter Hints for PHP, and many of you asked about the option to change their representation to fit a custom color scheme. The new color setting can be found in Settings|Editor|Colors&Fonts|Language Defaults|Inline parameter hint. We’ve also added Parameter Hints to constructor invocations.
  • PHP 7.1: Improved support for anonymous classes:
  • We continue to improve our PHP 7.1 support and this time we’ve refined support for anonymous classes. Now they have a proper type so methods of anonymous classes will be correctly resolved and you can use all power of PhpStorm including Code Inspections, Find Usages, Rename Refactoring, Navigate to Declaration and more.
  • Other features worth noting:
  • Support for read-only repositories for settings storage
  • Bug:
  • WI-3491 — PHP: good code stays red on adding case block into switch
  • WI-5015 — PHP reparse: typing or changing a declaration after namespace or adding namespace causes "good code is red" until file completely reparsed
  • WI-5586 — False error in switch - on typing in new default
  • WI-5622 — Parsing: if/endif: Problems with typing in else
  • WI-6175 — False error on if - endif syntax when typing in else/elseif
  • WI-7195 — Switch - typing in new case clause - expecting statement stuck
  • WI-13620 — Call static function with dynamic name
  • WI-32388 — Variable that holds anonymous class doesn't have type
  • WI-32605 — New project dialog is not scrollable on Mac OS
  • WI-32953 — Provide completion for self/static inside anonymous class
  • WI-34403 — Problems with handling characters in variable and property names
  • WI-34411 — Parameter hint shows "..._" for anonymous function call
  • WI-34427 — Sync with deployed encoding problem
  • WI-34479 — Unable to launch 2017.1 on Windows x64 -- installer installed 64-bit bundled JDK, but offered to create shortcut for 32-bit launcher only
  • WI-34509 — If there is a function with return type double closing curly braces are inserted on pressing enter
  • WI-34512 — Scope highlighting doesn't work for elseif alternative syntax
  • WI-34515 — Else statement and ternary operator produces incorrect matching
  • WI-34526 — Add method: Cancel doesn't work
  • Exception:
  • WI-34468 — Exception is thrown on generating PHPDoc
  • WI-34469 — Exception is thrown on generating constructor
  • WI-34497 — Exception is thrown on field initialization
  • WI-34524 — 'Add field' quick fix throws exception
  • WI-34525 — 'Add method' quick fix throws Exception
  • Feature:
  • WI-7192 — Control generated "Add method" and "Add field"
  • WI-33396 — Allow user to toggle class separator for PHP 7+ anonymous classes
  • WI-34412 — Provide parameter hint for constructors
  • WI-34477 — Add Parameter Hints to variables too
  • WI-34501 — Joomla support: Joomla! boilerplate update
  • Meta Issue:
  • WI-31604 — Problems with PHP 7 anonymous classes support
  • Usability Problem:
  • WI-566 — Highlight current scope for alternative syntax
  • WI-34489 — Parameter hint: provide option to set color

New in PhpStorm 2017.1 Build 171.1834.12 EAP (Dec 23, 2016)

  • The most important changes from PHP side include:
  • New code highlights for use, extends, implements, throws and catch keywords
  • Parameter hint for method/functions calls
  • New quick-fix to add undefined variables to closure import
  • From platform side the update brings:
  • Support for emoji in the editor
  • Zero-latency typing is now enabled by default
  • Better Mocha testing experience
  • Integration with the Angular language service
  • Faster start with linters
  • Many other features and changes from IntelliJ platform and web are also included.

New in PhpStorm 2016.3.2 Build 163.10504.2 (Dec 21, 2016)

  • PHP 7.1: Support square bracket syntax for array destructuring assignment:
  • PHP 7.1 support is improved and includes now square bracket syntax for array destructing assignments. We’ve also updated “Language level inspection” and implemented a quick fix for fast language level change.
  • Apart from new features, this build brings many bug fixes, the most remarkable of them:
  • Horizontal scrolling with SHIFT key is no longer working: IDEA-164094
  • IDEA strips trailing spaces even in the line under caret: IDEA-164345
  • Project Opening options are ignored, confirmation window is shown regardless of settings: PY-17836
  • Bug:
  • WI-27829 — Pull members up suggests to move member to "object" class
  • WI-30435 — Introduce variable suggests "this" as a variable name
  • WI-33182 — Can't add ZFTool as a command line tool
  • WI-34071 — pcntl_async_signals() is unknown to PhpStorm
  • WI-34109 — Can't open the link in the "PHP interpreter is not configured" popup
  • WI-34134 — getExtendsList must not return null
  • WI-34156 — array_sum returns number, not int|float
  • WI-34226 — Extract variable: Exclude superglobals from variable name suggestion
  • WI-34248 — Blade: parameter info is not shown in PHP tags
  • WI-34264 — Create New Project from Existing Source doesn't work for a new server
  • WI-34273 — Remote PHPCS and PHPMD don't work
  • WI-34285 — Usage in annotations is not detected (PHP Annotation plugin)
  • WI-34286 — Directories setting page is blank if there is no content roots
  • WI-34310 — PHPCS/PHPMD: it's not possible to choose file in configuration text field
  • WI-34349 — Can't rename deployment configurations if they're not default
  • WI-34355 — Create parameter: works incorrectly for variables in use statement for closures
  • Feature:
  • WI-32531 — Support Square bracket syntax for array destructuring assignment in PHP 7.1
  • WI-32535 — ALL mcrypt* functions are deprecated in PHP 7.1
  • WI-32617 — Add new curl functions in PHP 7.1 curl_multi_errno() and curl_share_errno()
  • WI-34300 — [OpenAPI, FR]: add PhpEval visitor
  • WI-34301 — [OpenAPI, FR] add PhpLoop interface (While, ForeachStatement, For, DoWhile)
  • WI-34325 — Add missing UConverter intl stubs
  • Usability Problem:
  • WI-34347 — PHPDoc for variable has the wrong example

New in PhpStorm 2016.3.2 Build 163.10154.2 EAP (Dec 14, 2016)

  • This build delivers new features, bug fixes and improvements for PHP and the Web, and takes on the latest improvements in IntelliJ Platform.
  • Bug:
  • WI-27829 — Pull members up suggests to move member to "object" class
  • WI-30435 — Introduce variable suggests "this" as a variable name
  • WI-33182 — Can't add ZFTool as a command line tool
  • WI-34071 — pcntl_async_signals() is unknown to PhpStorm
  • WI-34109 — Can't open the link in the "PHP interpreter is not configured" popup
  • WI-34134 — getExtendsList must not return null
  • WI-34156 — array_sum returns number, not int|float
  • WI-34226 — Extract variable: Exclude superglobals from variable name suggestion
  • WI-34248 — Blade: parameter info is not shown in PHP tags
  • WI-34264 — Create New Project from Existing Source doesn't work for a new server
  • WI-34285 — Usage in annotations is not detected (PHP Annotation plugin)
  • WI-34286 — Directories setting page is blank if there is no content roots
  • WI-34310 — PHPCS/PHPMD: it's not possible to choose file in configuration text field
  • Feature:
  • WI-32531 — Support Square bracket syntax for array destructuring assignment in PHP 7.1
  • WI-32535 — ALL mcrypt* functions are deprecated in PHP 7.1
  • WI-32617 — Add new curl functions in PHP 7.1 curl_multi_errno() and curl_share_errno()
  • WI-34300 — [OpenAPI, FR]: add PhpEval visitor
  • WI-34301 — [OpenAPI, FR] add PhpLoop interface (While, ForeachStatement, For, DoWhile)
  • WI-34325 — Add missing UConverter intl stubs

New in PhpStorm 2016.3.1 Build 163.9735.1 (Dec 7, 2016)

  • The most important changes include:
  • Variable naming style (camelCase or snake_case)
  • Support of __invoke method
  • New Inspection/Quick Fix for Combined and Incremental/Decremental Assignment
  • Variable name completion for compact arguments
  • Other features:
  • Improved detection of runtime errors
  • Current file name is suggested for a new class name
  • Completion for dynamically declared properties for all objects
  • New sort order in Override and Implement methods dialogs

New in PhpStorm 2016.3.1 Build 163.9166.11 EAP (Dec 1, 2016)

  • Variable naming style:
  • We’ve implemented a new option which allows you to choose a style of variable names that PhpStorm suggests you in completion and Introduce Variable refactoring. Available styles are camelCase, snake_case and Mixed (default behavior identical to the previous versions). You can change it in Settings->Editor->Code Style->PHP->Variable Naming style. We updated framework specific code styles as well to get full advantage of the new option. Please note that the option doesn’t affect Reformat Code action.
  • New Inspection/Quick Fix for Combined Assignment:
  • We’ve introduced new Quick Fix and Inspection that reports and fix assignment operations which can be replaced by combined assignment. The inspection has by default No highlighting, only fix severity but you can modify it in Settings->Editor->Inspections->PHP->Assignment replaceable with operator assignment.
  • New Inspection/Quick Fix for Incremental/Decremental Assignments:
  • We’ve also introduced new Quick Fix and Inspection that reports and fix assignment operations which can be replaced by increment or decrement. The inspection has by default No highlighting, only fix severity but you can change it in Settings->Editor->Inspections->PHP->Assignment replaceable with increment or decrement.
  • Apart from new features, this build brings many bug fixes, the most remarkable of them:
  • Attach to the current project asks additional question: WI-33637
  • Local Terminal did not accept German Keyboard Layout: IDEA-115276
  • Bug:
  • WI-33077 — Directories page in Settings is empty if more than one project is opened
  • WI-33303 — Find results write access usages excludes writing to a property by reference.
  • WI-33637 — Attach to the current project asks additional question
  • WI-34097 — Open in Editor action doesn't work
  • WI-34153 — Variable Naming Style: if field is snake case and style is set to mixed suggestion name will be glued
  • Exception:
  • WI-33837 — ClassCastException is thrown on Upload to and Sync to actions
  • WI-34125 — Exception is thrown on typing ? before the parameter name
  • Feature:
  • WI-9169 — New intention: replace . with .=
  • WI-26738 — Have ability to change suggested option from camelCase to Underscores
  • WI-33789 — PhpStorm Advanced MetaData - allow overriding parameter-less calls.
  • WI-34151 — Variable naming style: Provide settings for framework specific code styles
  • Usability Problem:
  • WI-34154 — Variable name completion: if there is a cast only standard names are suggested

New in PhpStorm 2016.3.1 Build 163.8703.22 EAP (Nov 28, 2016)

  • Bug:
  • WI-9437 — String passed to array-hinted parameter: fatal error isn't detected
  • WI-14783 — Reserved keywords can't be used after "extends"
  • WI-14804 — Interface can't extend other interface twice
  • WI-16123 — Class names self and parent are not allowed in PHP
  • WI-16252 — $this can't be an argument for method
  • WI-17137 — Parameter type inspection doesn't work for __invoke method
  • WI-17680 — Interface can't implement itself
  • WI-21221 — Call to protected method is not detected for invocation of protected method of first child class in a second one if base classes is equal for these child classes
  • WI-31873 — Structural search inspections not working
  • WI-33157 — 'self' and 'parent' are special class names
  • WI-33527 — Save password checkbox can't be applied
  • WI-33597 — Login dialog: Remember checkbox behaves as it's always enabled
  • WI-33618 — Test connection button doesn't use unapplied credentials
  • WI-33664 — Remote interpreters should not spoil keychain with credentials of temporal servers
  • WI-33778 — Save passphrase checkbox doesn't reflect the actual state
  • WI-33840 — Server with the name of removed server won't work till PhpStorm restart
  • WI-33842 — If SFTP server with incorrect password was used to create a PHP Interpreter it's not possible to fix the server to fix the configuration
  • WI-33851 — Function parameter not spacing correctly if type given
  • WI-33855 — Indent is missing on the next line after pressing enter after do keyword
  • WI-33880 — There is no autocompletion for 'use' when defining an anonymous function inside function call
  • WI-33888 — Space is forced between ? and type for nullable parameter type
  • WI-33919 — Passphrase is not saved for a new SFTP server
  • WI-33923 — Filter $this from completion results in 'use'
  • WI-33926 — Completion list contains undeclared variables (without icons)
  • WI-33929 — Visible only for this project checkbox can't be set
  • WI-33930 — Application level copy of deployment server loses username and password settings
  • WI-34058 — Server disappears after Testing connection with Remember checkbox enabled
  • Exception:
  • WI-33843 — Exception is thrown during editing of Remote Interpreters
  • WI-33916 — NPE is thrown on connection testing
  • Feature:
  • WI-18635 — use ($this) in closure isn't detected
  • WI-24584 — Variable name completion for compact() arguments
  • WI-32597 — Smart completion: provide string variables after concatenation operator
  • WI-32598 — Smart completion: provide applicable variants after shortcut assignments
  • WI-32599 — Smart completion: provide applicable variants after bitwise and logical operators
  • WI-33886 — Extract method: Support void type
  • WI-33887 — Add parentheses after `use` for anonymous function
  • Task:
  • WI-33960 — Remove &&= and ||= operators
  • Usability Problem:
  • WI-30716 — Follow PSR-2 conventions for boolean type hinting
  • WI-34002 — PHP internal methods/classes are not visible in IDEA 2016.3 with PHP plugin
  • WI-34038 — Naming convention inspections and PHP superglobals

New in PhpStorm 2016.3 Build 163.7743.50 (Nov 24, 2016)

  • Highlights:
  • Frameworks, Tools, more: Support of Docker in Remote Interpreters, support of PHPSpec test framework, auto-detection and configuration of PHPUnit, Behat, and PHPSpec, ability to open multiple projects in one frame
  • PHP Language & Editing Experience: Semantic highlighting for variables and parameters, completion of overridden methods and fields without function and var keyword, improved support of PSR-0/PSR-4
  • Code Quality Analysis: Project-wide PHP 7 strict types, new naming convention inspections, improved Runtime Error Prevention
  • Bug:
  • WI-5526 — Builtin functions are not always syntax colored properly
  • WI-7950 — "Wrap when code reaches right margin" does not respect language structure
  • WI-9426 — No warning about incorrect magic methods visibility type
  • WI-9427 — No warning/fatal error about incorrect magic methods static/non-static type
  • WI-11936 — Undefined class: 'Undefined class' warning by usage of class_alias()
  • WI-14462 — Add syntax check that nested namespaces are not allowed
  • WI-14678 — Strict standarts: declaration of overridden method should be compatible with parent class
  • WI-14680 — Green code marked Error: Cannot redeclare non static private variable as static
  • WI-14781 — Default value for parameters with array type hint can only be an array or NULL
  • WI-14782 — Method __clone cannot accept any argument
  • WI-17786 — Honor HTML Indentation Settings in PHP Files
  • WI-20186 — Caret isn't indented if there is a comment after block start statement
  • WI-23909 — It should be possible to add optional argument to match signature
  • WI-23967 — Parameter type inspection - false positive: type of unpacked arguments are not inferred
  • WI-24952 — Required parameter wrongly reported when unpacking arguments
  • WI-28496 — ">" is eaten only on the first line for $this-> completion
  • WI-28795 — No continuation indent on multiline binary expressions in return statement
  • WI-29696 — namespace keyword creates unintended indentation for non-docblock multi-line comment
  • WI-30502 — Grouping parentheses affects PHP callable keywords
  • WI-30747 — HTML injected into email addresses literal (false positive "Unknown html tag")
  • WI-30855 — Member has protected access error for protected parent class method/field usage in trait
  • WI-31265 — PHP HTTP Request: it's not possible to pass request body as key-value
  • WI-31354 — yield inside if breaks method checking
  • WI-31618 — Function opening brace is moved to the next line when arguments span multiple lines an a return type (PHP 7) is specified
  • WI-31754 — Regression with Recursive resolve of constant values inside include expressions
  • WI-32005 — .htaccess plugin: Regex in FilesMatch is duplicated when edited
  • WI-32006 — .htaccess plugin: The regex check in FilesMatch does not respect the quotes
  • WI-32240 — Diagrams shows only one class for hierarchy in case of different namespace but identical name
  • WI-32284 — Anonymous class constructor unused variables from outside.
  • WI-32308 — Paths for Docker interpreter are invalid on Windows
  • WI-32310 — Functions with yield may only declare a return type of Generator, Iterator or Traversable
  • WI-32606 — PHPCS: If custom ruleset contains "swp" argument phpcs fails with E error
  • WI-32610 — Allow custom filename.xml.dist for PHPCS config
  • WI-32631 — Generate getter action has fully qualified class name in docs for arrays, even though it was imported already
  • WI-32709 — Analyze Stacktrace cannot parse filenames / line numbers anymore
  • WI-32737 — Generator function may legally return a non-Generator value
  • WI-32748 — 'break on first line' while attempting debug validation hangs PHPStorem
  • WI-32752 — "Missing yield statement" when yielding from another function call
  • WI-32849 — Incorrectly inferred type resulting from usage of the combined comparison "spaceship" operator
  • WI-32851 — Blade continuation shouldn't affects JS continuation
  • WI-32875 — HTML injected into hashcode/key literal
  • WI-32954 — self and static are not resolved inside anonymous class
  • WI-32959 — PHP plugin pollutes non-php modules with its default config
  • WI-32980 — There should be no keywords in completion after HEREDOC
  • WI-32992 — PHP 7 Compatibility: Resource, Object, Mixed, Numeric are not a reserved type
  • WI-33007 — Moving class to global namespace breaks @see statement
  • WI-33037 — Caret isn't indented if there is a comment multiline comment after block start statement
  • WI-33039 — Exception is thrown in PHP Interpreters if deployment xmls have been removed
  • WI-33041 — Apply button doesn't work in Deployment settings
  • WI-33043 — Making global interpreter project-level and back lead to misleading message in Event Log
  • WI-33044 — Global level configuration is not copied to project if interpreter level is changed in project where configuration hasn't been created
  • WI-33045 — Two popups appear in case there is no corresponding PHPUnit configuration
  • WI-33046 — Link opens dialog window on hover instead of clicking
  • WI-33051 — Optimize imports throws Access is allowed from event dispatch thread only
  • WI-33066 — Overriding a Method through Tab-Completion doesn't import the Use Statement for a Type-Hinted Parameter
  • WI-33078 — "Path mappings are not configured for selected interpreter" open settings on mouse hover instead of click
  • WI-33086 — Return type is not imported when overriding a method from the completion list
  • WI-33091 — UML: UML diagram shows only one class
  • WI-33102 — Missing declare types inspection: Don't show inspection warning in a mixed code
  • WI-33125 — Setter is suggested in completion list even if it was already inserted when field is in a superclass
  • WI-33126 — Overridden methods: Abstract functions inserted with abstract keyword and a body
  • WI-33127 — Overridden methods completion: lacks methods and fields from traits
  • WI-33130 — Overridden methods completion: of constants with visibility modifier doesn't insert const keyword
  • WI-33131 — Overridden methods completion: inserts broken elements from @method and @property entities
  • WI-33147 — Project templates: Sometimes iml of an attached project can't be found
  • WI-33159 — Completion: Suggest magic methods after "private function"
  • WI-33164 — Overridden methods completion: doesn't take into account static methods in @method
  • WI-33168 — Application no longer takes focus when hitting a breakpoint in 2016.3 EAP during PHP Debug
  • WI-33196 — __clone, __construct and __destruct cannot be static
  • WI-33206 — java.lang.StringIndexOutOfBoundsException is thrown
  • WI-33219 — False positive warning for namespaced constant: "Import is never used"
  • WI-33222 — Change modifiers: creates invalid signature for Interfaces
  • WI-33387 — Function with Iterator return type hint expects return statement while yielding values.
  • WI-33400 — deployment: username and password forgotten after phpstorm restart
  • WI-33446 — Find usage of constants and functions with multiple declaration depends on the place of invocation
  • WI-33450 — Multi line comment is not completed between case and break in switch statement
  • WI-33457 — Naming conventions: prefix Class is obsolete in inspection message
  • WI-33460 — Naming convention: add magic methods and $this to exclude list
  • WI-33466 — PHP 7.1: Private constant not indicating as being used in class.
  • WI-33475 — Link to download Behat is unexpectedly editable
  • WI-33528 — Password and user name are saved on tab switching
  • WI-33529 — Login as anonymous checkbox doesn't force password field to be uneditable
  • WI-33531 — Impossible to save just user name without password
  • WI-33534 — "Login to..." dialog doesn't work without "Save password" checkbox enabled
  • WI-33542 — SSH Deployment server can't be used for Remote Tools
  • WI-33563 — Docker: addition of a new docker interpreter cause the first one to forget image name
  • WI-33574 — Authentication popup doesn't appear in case password is missing
  • WI-33576 — Switching Auth type in anonymous mode is not saved
  • WI-33584 — Code Analysis stops with SOE on 2016.2 (2016.1 is ok)
  • WI-33594 — Behat 3.2.0+: if there is undefined step the suite will hang
  • WI-33609 — Include expression is not analyzed if contains repetitive constants
  • WI-33612 — Cannot use argument unpacking with strict types enabled
  • WI-33615 — PHPSpec: execution hangs on questions
  • WI-33629 — Categorization of constant in Find Usage depends on the code location
  • WI-33638 — Find usages doesn't group imports of constants and functions
  • WI-33648 — Refactor -> Extract -> Method uses "void" return type on PHP 7.0
  • WI-33666 — False positive: "Declaration must be compatible" when overridden method has var arg
  • WI-33675 — Strict standarts: parameters in constructor should be excluded from overrided inspection
  • WI-33679 — Strict standards: Parameters don’t have to match when overriding trait’s method.
  • WI-33680 — Strict standards: return type (by-value or by-reference) incompatibility is not detected
  • WI-33681 — Strict standards: Parameter with default null value should be matched with the same default value or type ?type when overriding
  • WI-33688 — False positive: "Can't inherit abstract function" on traits
  • WI-33691 — Invalid PHP Inspection - Missing return statement (due to assert())
  • WI-33701 — Can't connect with SSH using Deployment Settings
  • WI-33703 — Strict standards: Method signature don’t have to match when overriding trait’s method.
  • WI-33704 — False positive: Cannot make non abstract method abstract is shown for traits
  • WI-33753 — Password saved as passphrase
  • WI-33757 — Blade: Support hasSection control structure directive
  • WI-33761 — Extract method: PHP: When return type of one of extracted method doc comment is mixed, new method gets mixed return type in php 7
  • WI-33777 — Anonymous login still uses previous saved password
  • WI-33798 — Passphrases are not imported from 2016.2
  • WI-33836 — Error about missing passphrase is not updated when "anonymous" checkbox is selected
  • WI-33856 — Missing return statement: false positive for return type void
  • Cosmetics:
  • WI-31713 — Keymap Reference
  • WI-32607 — PHPCS: In Custom Coding Standard dialog "Root directory" label should be renamed
  • WI-33047 — Interpreter: php.ini section without main ini looks bad formatted
  • WI-33194 — Magic method visibility: Change method visibility label is confusing
  • WI-33655 — Deployment - "User name not specified" error with local folder
  • Exception:
  • WI-30653 — NPE is thrown on attempt to open settings for remote interpreter
  • WI-33023 — Exception is thrown if @see tag exists and there is two identical import statements
  • WI-33038 — java.lang.IllegalStateException: Unknown connection type is thrown after openning Docker enabled interpreter with disabled PHP Docker plugin
  • WI-33052 — NPE is thrown if section about phpunit is removed from composer.json
  • WI-33073 — Save project template doesn't work
  • WI-33087 — Exception is thrown on invocation of "Show Parents" and "Show Implementation" in UML on folder
  • WI-33145 — StackOverflowException is thrown on attempt to build UML for class that extends itself
  • WI-33209 — java.lang.RuntimeException: Invalid Signature is thrown on Symfony 3 project during offline inspection
  • WI-33456 — Method name naming: Exception is thrown on removing method name
  • WI-33557 — Docker: NPE is thrown on attempt to change docker mappings
  • WI-33687 — Exception is thrown if parameter produces hierarchy warning and then becomes commented
  • WI-33746 — The regex injection thrown Exception on editing empty text in quoutes in FilesMatch
  • WI-33813 — IndexNotReadyException during indexing a project with 'class_alias'
  • Feature:
  • WI-2442 — Store (S)FTP passwords using PasswordSafe platform infrastructure
  • WI-2500 — Make option "Honor $ sign when selecting words on double click" setting in IDE Settings -> Editor
  • WI-8623 — UML: PHP UML diagram on folder - add "scan sub-folders" option
  • WI-12067 — CodeStyle: Need option to surround chars '->' with spaces
  • WI-14477 — Annotator: Add syntax check that verifies the correctness of "use" statement
  • WI-15187 — Project management feature: Ability to open more then one related PhpStorm project in current frame
  • WI-18150 — CodeIgniter coding style support
  • WI-20192 — list() and array of objects support
  • WI-21884 — Semantic highlighting - each $var in scope can has own distinct color
  • WI-22641 — Auto-detect PHPUnit with composer
  • WI-22743 — Create an Extension Point to extend build-in "PHP stubs"/scope.
  • WI-24955 — Add template variables to PHPUnit test class generation
  • WI-27157 — Provide quick fix for case-insensitive inspection
  • WI-29645 — PHP Remote Interpreter with Docker
  • WI-30134 — Attach stubs as an external library
  • WI-30320 — PHP7 Return type code style
  • WI-30905 — New PHP class: allow to choose non existent directory
  • WI-31777 — Support TempFile task
  • WI-32253 — Support running Code Sniffer and Mess Detector in Docker container
  • WI-32294 — Show Docker container volumes in Edit Path Mappings dialog
  • WI-32772 — Auto-detect Behat with composer
  • WI-32773 — Autorecognition of existing composer.json
  • WI-32967 — New Inspection/Intention - Project wide PHP 7 strict types
  • WI-32986 — Allow to complete overridden methods and fields without `function` and `var` keywords respectively
  • WI-33124 — Provide object methods on second invocation for overridden methods completion
  • WI-33179 — Don't add folders under vendor to External Folders
  • WI-33328 — PHPSpec: method from mocked class should be resolved inside spec
  • WI-33329 — PHPSpec: 'should*' methods are not be resolved to 'Subject' methods
  • WI-33330 — PHPSpec: methods from 'Collaborator' class should be resolved for test method parameters
  • WI-33331 — PHPSpec: parameter methods should return `MethodProphecy`
  • WI-33336 — PHPSpec: create run-configuration to start PHPSpec tests
  • WI-33337 — PHPSpec: detect and enable support automatically
  • WI-33352 — PHPSpec: Support custom spec_prefix from phpspec.yml
  • WI-33354 — PHPSpec: Support beConstructedThrough
  • WI-33355 — PHPSpec: Support type matchers
  • WI-33370 — Make completion aware of assert($x instanceof Y)
  • WI-33386 — PHPSpec: 'should*' methods are not resolved for PHPSpec 2
  • WI-33411 — List php interpreters instaled by homebrew in Select Interpreter Path
  • WI-33447 — Pack of name convention inspections
  • WI-33455 — Add new naming inspection for constants
  • WI-33586 — PHPSpec: support phar executable
  • Performance Problem:
  • WI-33780 — Completion works slow on array indexes
  • Task:
  • WI-32889 — Investigate whether "Windows 7 sometimes breaks FTP connections on Java 7" notification is relevant for Java 8
  • WI-33076 — Save unsaved passwords and passphrases as memory-only in PasswordSafe
  • Usability Problem:
  • WI-21890 — Suggest directory according PSR-0 on PHPUnit test creation
  • WI-24358 — PHPUnit: on creating new test suggest "test source" directory instead of "source"
  • WI-30229 — Improve generators order in project generator
  • WI-31407 — Order of visiblity keyword and static should be changed
  • WI-32131 — Invoke Refresh action after Debuger extension changing
  • WI-32134 — Reload interpreter after configuration option change
  • WI-32585 — Interpreter: doesn't show additional configuration file if main doesn't exist
  • WI-32793 — PHPUnit: save configuration on the same level as corresponding interpreter/deployment
  • WI-32794 — PHPUnit: show warning if user is trying to delete interpreter with dependent phpunit configuration
  • WI-32834 — New PHP class: suggest directory based on namespace
  • WI-32920 — Remote Interpreter: edit path mappings is not opening for invalid interpreter
  • WI-32948 — Blinking file icons, when editing
  • WI-33048 — Create New Test: Open newly created test in an editor
  • WI-33055 — Detection via composer: Message about changed PHPUnit configuration is shown even in case there has been no change
  • WI-33342 — Overriding class property cursor placement is not useful
  • WI-33361 — PHPSpec: Don't group notification about PHPSpec detection with PHPUnit and Behat
  • WI-33459 — Variable naming convention: show warnings only on declarations
  • WI-33478 — Naming conventions: move inspections to a separate category inside PHP
  • WI-33532 — Unecessary space character after autocomplete for "implements "
  • WI-33537 — PHPSpec: allow only PHPSpec configuration for the PHPSpecs files
  • WI-33555 — PHPSpec: Class that doesn't ends with Spec in PHPSpec file doesn't provide additional output to test log
  • WI-33660 — Behat: update link to behat.phar
  • WI-33661 — PHPUnit: add hyperlink to download phpunit.phar
  • WI-33673 — PHPSpec: provide link to phpspec.phar

New in PhpStorm 2016.3 Build 163.7342.9 Public Preview (Nov 2, 2016)

  • Frameworks, Tools, more:
  • Support of Docker in Remote Interpreters
  • Support of PHPSpec test framework
  • Auto-detection and configuration of PHPUnit, Behat, and PHPSpec from composer.json
  • Ability to open multiple projects in one frame
  • Support of Codeigniter Code Style
  • PHP Language & Editing Experience:
  • Semantic highlighting for variables and parameters
  • Сompletion of overridden methods and fields without function and var keyword
  • Improved support of PSR-0/PSR-4
  • New setting to select variable name without ‘$’ on double click
  • Support of list() and array of objects
  • Improvements in support for anonymous classes
  • Code Style Settings for PHP 7 return types
  • Code Quality Analysis:
  • Project-wide PHP 7 strict types,
  • New naming convention inspections
  • Improved Runtime Error Prevention
  • Bug:
  • WI-5526 — Builtin functions are not always syntax colored properly
  • WI-7950 — "Wrap when code reaches right margin" does not respect language structure
  • WI-9426 — No warning about incorrect magic methods visibility type
  • WI-9427 — No warning/fatal error about incorrect magic methods static/non-static type
  • WI-14462 — Add syntax check that nested namespaces are not allowed
  • WI-14678 — Strict standarts: declaration of overridden method should be compatible with parent class
  • WI-14680 — Green code marked Error: Cannot redeclare non static private variable as static
  • WI-14781 — Default value for parameters with array type hint can only be an array or NULL
  • WI-14782 — Method __clone cannot accept any argument
  • WI-17786 — Honor HTML Indentation Settings in PHP Files
  • WI-20186 — Caret isn't indented if there is a comment after block start statement
  • WI-23909 — It should be possible to add optional argument to match signature
  • WI-23967 — Parameter type inspection - false positive: type of unpacked arguments are not inferred
  • WI-24952 — Required parameter wrongly reported when unpacking arguments
  • WI-28496 — ">" is eaten only on the first line for $this-> completion
  • WI-28795 — No continuation indent on multiline binary expressions in return statement
  • WI-29696 — namespace keyword creates unintended indentation for non-docblock multi-line comment
  • WI-30502 — Grouping parentheses affects PHP callable keywords
  • WI-30747 — HTML injected into email addresses literal (false positive "Unknown html tag")
  • WI-30855 — Member has protected access error for protected parent class method/field usage in trait
  • WI-31265 — PHP HTTP Request: it's not possible to pass request body as key-value
  • WI-31354 — yield inside if breaks method checking
  • WI-31618 — Function opening brace is moved to the next line when arguments span multiple lines an a return type (PHP 7) is specified
  • WI-31754 — Regression with Recursive resolve of constant values inside include expressions
  • WI-32240 — Diagrams shows only one class for hierarchy in case of different namespace but identical name
  • WI-32284 — Anonymous class constructor unused variables from outside.
  • WI-32308 — Paths for Docker interpreter are invalid on Windows
  • WI-32310 — Functions with yield may only declare a return type of Generator, Iterator or Traversable
  • WI-32606 — PHPCS: If custom ruleset contains "swp" argument phpcs fails with E error
  • WI-32610 — Allow custom filename.xml.dist for PHPCS config
  • WI-32631 — Generate getter action has fully qualified class name in docs for arrays, even though it was imported already
  • WI-32709 — Analyze Stacktrace cannot parse filenames / line numbers anymore
  • WI-32737 — Generator function may legally return a non-Generator value
  • WI-32748 — 'break on first line' while attempting debug validation hangs PHPStorem
  • WI-32752 — "Missing yield statement" when yielding from another function call
  • WI-32849 — Incorrectly inferred type resulting from usage of the combined comparison "spaceship" operator
  • WI-32851 — Blade continuation shouldn't affects JS continuation
  • WI-32875 — HTML injected into hashcode/key literal
  • WI-32954 — self and static are not resolved inside anonymous class
  • WI-32959 — PHP plugin pollutes non-php modules with its default config
  • WI-32980 — There should be no keywords in completion after HEREDOC
  • WI-32992 — PHP 7 Compatibility: Resource, Object, Mixed, Numeric are not a reserved type
  • WI-33007 — Moving class to global namespace breaks @see statement
  • WI-33037 — Caret isn't indented if there is a comment multiline comment after block start statement
  • WI-33039 — Exception is thrown in PHP Interpreters if deployment xmls have been removed
  • WI-33041 — Apply button doesn't work in Deployment settings
  • WI-33043 — Making global interpreter project-level and back lead to misleading message in Event Log
  • WI-33044 — Global level configuration is not copied to project if interpreter level is changed in project where configuration hasn't been created
  • WI-33045 — Two popups appear in case there is no corresponding PHPUnit configuration
  • WI-33046 — Link opens dialog window on hover instead of clicking
  • WI-33051 — Optimize imports throws Access is allowed from event dispatch thread only
  • WI-33066 — Overriding a Method through Tab-Completion doesn't import the Use Statement for a Type-Hinted Parameter
  • WI-33078 — "Path mappings are not configured for selected interpreter" open settings on mouse hover instead of click
  • WI-33086 — Return type is not imported when overriding a method from the completion list
  • WI-33091 — UML: UML diagram shows only one class
  • WI-33102 — Missing declare types inspection: Don't show inspection warning in a mixed code
  • WI-33125 — Setter is suggested in completion list even if it was already inserted when field is in a superclass
  • WI-33126 — Overridden methods: Abstract functions inserted with abstract keyword and a body
  • WI-33127 — Overridden methods completion: lacks methods and fields from traits
  • WI-33130 — Overridden methods completion: of constants with visibility modifier doesn't insert const keyword
  • WI-33131 — Overridden methods completion: inserts broken elements from @method and @property entities
  • WI-33147 — Project templates: Sometimes iml of an attached project can't be found
  • WI-33159 — Completion: Suggest magic methods after "private function"
  • WI-33164 — Overridden methods completion: doesn't take into account static methods in @method
  • WI-33196 — __clone, __construct and __destruct cannot be static
  • WI-33206 — java.lang.StringIndexOutOfBoundsException is thrown
  • WI-33219 — False positive warning for namespaced constant: "Import is never used"
  • WI-33222 — Change modifiers: creates invalid signature for Interfaces
  • WI-33387 — Function with Iterator return type hint expects return statement while yielding values.
  • WI-33400 — deployment: username and password forgotten after phpstorm restart
  • WI-33446 — Find usage of constants and functions with multiple declaration depends on the place of invocation
  • WI-33450 — Multi line comment is not completed between case and break in switch statement
  • WI-33457 — Naming conventions: prefix Class is obsolete in inspection message
  • WI-33460 — Naming convention: add magic methods and $this to exclude list
  • WI-33466 — PHP 7.1: Private constant not indicating as being used in class.
  • WI-33475 — Link to download Behat is unexpectedly editable
  • WI-33528 — Password and user name are saved on tab switching
  • WI-33529 — Login as anonymous checkbox doesn't force password field to be uneditable
  • WI-33531 — Impossible to save just user name without password
  • WI-33534 — "Login to..." dialog doesn't work without "Save password" checkbox enabled
  • WI-33542 — SSH Deployment server can't be used for Remote Tools
  • WI-33563 — Docker: addition of a new docker interpreter cause the first one to forget image name
  • WI-33574 — Authentication popup doesn't appear in case password is missing
  • WI-33576 — Switching Auth type in anonymous mode is not saved
  • WI-33594 — Behat 3.2.0+: if there is undefined step the suite will hang
  • WI-33609 — Include expression is not analyzed if contains repetitive constants
  • WI-33612 — Cannot use argument unpacking with strict types enabled
  • WI-33615 — PHPSpec: execution hangs on questions
  • WI-33629 — Categorization of constant in Find Usage depends on the code location
  • WI-33638 — Find usages doesn't group imports of constants and functions
  • WI-33666 — False positive: "Declaration must be compatible" when overridden method has var arg
  • WI-33675 — Strict standarts: parameters in constructor should be excluded from overrided inspection
  • WI-33679 — Strict standards: Parameters don’t have to match when overriding trait’s method.
  • WI-33680 — Strict standards: return type (by-value or by-reference) incompatibility is not detected
  • WI-33681 — Strict standards: Parameter with default null value should be matched with the same default value or type ?type when overriding
  • WI-33688 — False positive: "Can't inherit abstract function" on traits
  • WI-33691 — Invalid PHP Inspection - Missing return statement (due to assert())
  • WI-33701 — Can't connect with SSH using Deployment Settings
  • WI-33703 — Strict standards: Method signature don’t have to match when overriding trait’s method.
  • WI-33704 — False positive: Cannot make non abstract method abstract is shown for traits
  • Cosmetics:
  • WI-31713 — Keymap Reference
  • WI-32607 — PHPCS: In Custom Coding Standard dialog "Root directory" label should be renamed
  • WI-33047 — Interpreter: php.ini section without main ini looks bad formatted
  • WI-33194 — Magic method visibility: Change method visibility label is confusing
  • WI-33655 — Deployment - "User name not specified" error with local folder
  • Exception:
  • WI-30653 — NPE is thrown on attempt to open settings for remote interpreter
  • WI-33023 — Exception is thrown if @see tag exists and there is two identical import statements
  • WI-33038 — java.lang.IllegalStateException: Unknown connection type is thrown after openning Docker enabled interpreter with disabled PHP Docker plugin
  • WI-33052 — NPE is thrown if section about phpunit is removed from composer.json
  • WI-33073 — Save project template doesn't work
  • WI-33087 — Exception is thrown on invocation of "Show Parents" and "Show Implementation" in UML on folder
  • WI-33145 — StackOverflowException is thrown on attempt to build UML for class that extends itself
  • WI-33209 — java.lang.RuntimeException: Invalid Signature is thrown on Symfony 3 project during offline inspection
  • WI-33456 — Method name naming: Exception is thrown on removing method name
  • WI-33557 — Docker: NPE is thrown on attempt to change docker mappings
  • WI-33687 — Exception is thrown if parameter produces hierarchy warning and then becomes commented
  • Feature:
  • WI-2442 — Store (S)FTP passwords using PasswordSafe platform infrastructure
  • WI-2500 — Make option "Honor $ sign when selecting words on double click" setting in IDE Settings -> Editor
  • WI-8623 — UML: PHP UML diagram on folder - add "scan sub-folders" option
  • WI-12067 — CodeStyle: Need option to surround chars '->' with spaces
  • WI-14477 — Annotator: Add syntax check that verifies the correctness of "use" statement
  • WI-15187 — Project management feature: Ability to open more then one related PhpStorm project in current frame
  • WI-18150 — CodeIgniter coding style support
  • WI-20192 — list() and array of objects support
  • WI-21884 — Semantic highlighting - each $var in scope can has own distinct color
  • WI-22641 — Auto-detect PHPUnit with composer
  • WI-22743 — Create an Extension Point to extend build-in "PHP stubs"/scope.
  • WI-24955 — Add template variables to PHPUnit test class generation
  • WI-27157 — Provide quick fix for case-insensitive inspection
  • WI-29645 — PHP Remote Interpreter with Docker
  • WI-30134 — Attach stubs as an external library
  • WI-30320 — PHP7 Return type code style
  • WI-30905 — New PHP class: allow to choose non existent directory
  • WI-31777 — Support TempFile task
  • WI-32253 — Support running Code Sniffer and Mess Detector in Docker container
  • WI-32294 — Show Docker container volumes in Edit Path Mappings dialog
  • WI-32772 — Auto-detect Behat with composer
  • WI-32773 — Autorecognition of existing composer.json
  • WI-32967 — New Inspection/Intention - Project wide PHP 7 strict types
  • WI-32986 — Allow to complete overridden methods and fields without `function` and `var` keywords respectively
  • WI-33124 — Provide object methods on second invocation for overridden methods completion
  • WI-33179 — Don't add folders under vendor to External Folders
  • WI-33328 — PHPSpec: method from mocked class should be resolved inside spec
  • WI-33329 — PHPSpec: 'should*' methods are not be resolved to 'Subject' methods
  • WI-33330 — PHPSpec: methods from 'Collaborator' class should be resolved for test method parameters
  • WI-33331 — PHPSpec: parameter methods should return `MethodProphecy`
  • WI-33336 — PHPSpec: create run-configuration to start PHPSpec tests
  • WI-33337 — PHPSpec: detect and enable support automatically
  • WI-33352 — PHPSpec: Support custom spec_prefix from phpspec.yml
  • WI-33354 — PHPSpec: Support beConstructedThrough
  • WI-33355 — PHPSpec: Support type matchers
  • WI-33370 — Make completion aware of assert($x instanceof Y)
  • WI-33386 — PHPSpec: 'should*' methods are not resolved for PHPSpec 2
  • WI-33447 — Pack of name convention inspections
  • WI-33455 — Add new naming inspection for constants
  • WI-33586 — PHPSpec: support phar executable
  • Task:
  • WI-32889 — Investigate whether "Windows 7 sometimes breaks FTP connections on Java 7" notification is relevant for Java 8
  • WI-33076 — Save unsaved passwords and passphrases as memory-only in PasswordSafe
  • Usability Problem:
  • WI-21890 — Suggest directory according PSR-0 on PHPUnit test creation
  • WI-24358 — PHPUnit: on creating new test suggest "test source" directory instead of "source"
  • WI-30229 — Improve generators order in project generator
  • WI-31407 — Order of visiblity keyword and static should be changed
  • WI-32131 — Invoke Refresh action after Debuger extension changing
  • WI-32134 — Reload interpreter after configuration option change
  • WI-32585 — Interpreter: doesn't show additional configuration file if main doesn't exist
  • WI-32793 — PHPUnit: save configuration on the same level as corresponding interpreter/deployment
  • WI-32794 — PHPUnit: show warning if user is trying to delete interpreter with dependent phpunit configuration
  • WI-32834 — New PHP class: suggest directory based on namespace
  • WI-32920 — Remote Interpreter: edit path mappings is not opening for invalid interpreter
  • WI-32948 — Blinking file icons, when editing
  • WI-33048 — Create New Test: Open newly created test in an editor
  • WI-33055 — Detection via composer: Message about changed PHPUnit configuration is shown even in case there has been no change
  • WI-33342 — Overriding class property cursor placement is not useful
  • WI-33361 — PHPSpec: Don't group notification about PHPSpec detection with PHPUnit and Behat
  • WI-33459 — Variable naming convention: show warnings only on declarations
  • WI-33478 — Naming conventions: move inspections to a separate category inside PHP
  • WI-33532 — Unecessary space character after autocomplete for "implements "
  • WI-33537 — PHPSpec: allow only PHPSpec configuration for the PHPSpecs files
  • WI-33555 — PHPSpec: Class that doesn't ends with Spec in PHPSpec file doesn't provide additional output to test log
  • WI-33660 — Behat: update link to behat.phar
  • WI-33661 — PHPUnit: add hyperlink to download phpunit.phar

New in PhpStorm 2016.3 Build 163.6957.13 EAP (Oct 27, 2016)

  • The most important changes include:
  • New Inspection: Strict Standard: Declaration of overriden method is incompatible
  • Support of assert($x instanceof Y) for type inference
  • PHPSpec: Support of PHAR executable
  • Fixed WI-31754: Recursive resolve of constant values inside include expressions
  • and other bug fixes and improvements
  • New Inspection for Strict Standards:
  • New inspection for strict standards was added: Declaration of overriden method should be compatible with parent class.
  • Support of assert($x instanceof Y) for type inference:
  • In PhpStorm 2016.3 the assert($x instanceof Y) is supported for type inference.
  • PHPSpec: Support of PHAR executable:
  • We continue to improve PHPSpec support in PhpStorm 2016.3. Now the PHAR executable is also supported.
  • Bug:
  • WI-14678 — Strict standarts: declaration of overridden method should be compatible with parent class
  • WI-14680 — Green code marked Error: Cannot redeclare non static private variable as static
  • WI-23909 — It should be possible to add optional argument to match signature
  • WI-23967 — Parameter type inspection - false positive: type of unpacked arguments are not inferred
  • WI-24952 — Required parameter wrongly reported when unpacking arguments
  • WI-30855 — Member has protected access error for protected parent class method/field usage in trait
  • WI-32709 — Analyze Stacktrace cannot parse filenames / line numbers anymore
  • WI-32748 — 'break on first line' while attempting debug validation hangs PHPStorem
  • WI-33007 — Moving class to global namespace breaks @see statement
  • WI-33102 — Missing declare types inspection: Don't show inspection warning in a mixed code
  • WI-33222 — Change modifiers: creates invalid signature for Interfaces
  • WI-33466 — PHP 7.1: Private constant not indicating as being used in class.
  • WI-33475 — Link to download Behat is unexpectedly editable
  • WI-33563 — Docker: addition of a new docker interpreter cause the first one to forget image name
  • WI-33594 — Behat 3.2.0+: if there is undefined step the suite will hang
  • WI-33612 — Cannot use argument unpacking with strict types enabled
  • WI-33629 — Categorization of constant in Find Usage depends on the code location
  • WI-33638 — Find usages doesn't group imports of constants and functions
  • WI-33666 — False positive: "Declaration must be compatible" when overridden method has var arg
  • WI-33675 — Strict standarts: parameters in constructor should be excluded from overrided inspection
  • WI-33680 — Strict standards: return type (by-value or by-reference) incompatibility is not detected
  • WI-33681 — Strict standards: Parameter with default null value should be matched with the same default value or type ?type when overriding
  • Cosmetics:
  • WI-33655 — Deployment - "User name not specified" error with local folder
  • Exception:
  • WI-33557 — Docker: NPE is thrown on attempt to change docker mappings
  • Feature:
  • WI-33370 — Make completion aware of assert($x instanceof Y)
  • WI-33586 — PHPSpec: support phar executable
  • Usability Problem:
  • WI-33342 — Overriding class property cursor placement is not useful
  • WI-33532 — Unecessary space character after autocomplete for "implements "
  • WI-33537 — PHPSpec: allow only PHPSpec configuration for the PHPSpecs files
  • WI-33555 — PHPSpec: Class that doesn't ends with Spec in PHPSpec file doesn't provide additional output to test log
  • WI-33660 — Behat: update link to behat.phar
  • WI-33661 — PHPUnit: add hyperlink to download phpunit.phar

New in PhpStorm 2016.2.2 Build 162.2380.11 (Oct 24, 2016)

  • This release brings new features, bug fixes and usability improvements:
  • Fixed scrolling on macOS Sierra
  • Other changes from IntelliJ platform and web are also included.
  • Data Viewer:
  • Bug: DBE-2992: Database Console: Boolean field cannot be rendered in result view
  • Bug: DBE-2993: PostgreSQL: Table editor does not support CITEXT
  • Bug: DBE-3091: Export data from data view action exports only first page
  • Bug: DBE-3076: Database's datagrid shows only one row when the table has more than one row
  • Bug: DBE-3032: Next page of results are not part of the original query
  • SQL Code Style:
  • Bug: DBE-3112: Inorrect reformating SQL query
  • JavaScript:
  • Bug: WEB-22839: Debug files in JavaScript library reclassified as release on index
  • JavaScript. Frameworks:
  • Bug: WEB-22969: Jasmine focused specs: Impossible jump to the test's source
  • JavaScript. Inspections:
  • Bug: WEB-23044: Code analysis after most recent update is very slow
  • Node.js:
  • Bug: WEB-23009: File .idea/jsLibraryMappings.xml is created automatically when opening a new project with node_modules
  • Bug: WEB-22900: Log is spammed by WARN - ry.NodeModulesDirectoryManager messages
  • Bug: WEB-22909: node_modules folder is always marked as "library root" with no ability to change the setting

New in PhpStorm 2016.3 Build 163.6512.15 EAP (Oct 19, 2016)

  • Highlights:
  • Initial support of CodeIgniter
  • New naming inspection for constants
  • PHPSpec improvements: support of spec_prefix and beConstructedThrough method
  • Fixed WI-31754: Regression with Recursive resolve of constant values inside include expressions
  • Fixed WI-33542: SSH Deployment server can't be used for Remote Tools
  • and other bug fixes and improvements.
  • Initial support of CodeIgniter Framework:
  • Good news for the CodeIgniter users! We’ve added an initial support of CodeIgniter Framework. Now after you enable the CodeIgniter support you will get the support of the code style, also CodeIgniter inspection profile will be set up automatically.
  • New naming inspection for constants:
  • In previous build we’ve added new naming convention inspections. Now new naming convention inspections are also available for constants. These inspections will highlight those constants that don’t follow naming convention in current project.
  • Improvements in PHPSpec support:
  • We are continue working on PHPSpec support in PhpStorm. This build brings support of spec_prefix and beConstructedThrough method in addition to the previously introduced features.
  • Apart new features, this build brings many bugfixes, the most remarkable of them:
  • Fix of WI-33542: SSH Deployment server can’t be used for Remote Tools
  • Fix of WI-31754: Regression with Recursive resolve of constant values inside include expressions
  • Bug:
  • WI-28795 — No continuation indent on multiline binary expressions in return statement
  • WI-29696 — namespace keyword creates unintended indentation for non-docblock multi-line comment
  • WI-30502 — Grouping parentheses affects PHP callable keywords
  • WI-31754 — Regression with Recursive resolve of constant values inside include expressions
  • WI-32849 — Incorrectly inferred type resulting from usage of the combined comparison "spaceship" operator
  • WI-33446 — Find usage of constants and functions with multiple declaration depends on the place of invocation
  • WI-33528 — Password and user name are saved on tab switching
  • WI-33529 — Login as anonymous checkbox doesn't force password field to be uneditable
  • WI-33531 — Impossible to save just user name without password
  • WI-33534 — "Login to..." dialog doesn't work without "Save password" checkbox enabled
  • WI-33542 — SSH Deployment server can't be used for Remote Tools
  • WI-33574 — Authentication popup doesn't appear in case password is missing
  • WI-33576 — Switching Auth type in anonymous mode is not saved
  • WI-33609 — Include expression is not analyzed if contains repetitive constants
  • WI-33615 — PHPSpec: execution hangs on questions
  • Exception:
  • WI-33038 — java.lang.IllegalStateException: Unknown connection type is thrown after openning Docker enabled interpreter with disabled PHP Docker plugin
  • Feature:
  • WI-18150 — CodeIgniter coding style support
  • WI-33352 — PHPSpec: Support custom spec_prefix from phpspec.yml
  • WI-33354 — PHPSpec: Support beConstructedThrough
  • WI-33455 — Add new naming inspection for constants
  • WI-33604 — Set CodeIgniter inspection profile automatically
  • Usability Problem:
  • WI-33478 — Naming conventions: move inspections to a separate category inside PHP

New in PhpStorm 2016.3 Build 163.6110.10 EAP (Oct 12, 2016)

  • The most important changes include:
  • New Naming Convention inspections
  • PHPSpec Run Configurations
  • Fixed WI-33400: username forgotten after phpstorm restart in deployment
  • and other bug fixes and improvements.

New in PhpStorm 2016.3 Build 163.4830.18 EAP (Sep 21, 2016)

  • Semantic highlighting for variables and parameters:
  • In PhpStorm 2016.3 we’ve added a semantic highlighting for parameters and local variables where each of them has has it’s own distinct color. The unique color of each parameter and variable makes structure of code easier to understand as it’s described in the “Coding in color” by Evan Brooks.
  • To start using this feature you should check the “Unique color for each parameter and local variable” checkbox, which can be found under Settings|Editor|Colors and Fonts|Language Defaults|Semantic highlighting. You will be suggested a default colors gradient for your variables, but you can easily customize it by choosing the colors at the each “Stop” of color gradient. Give it a try and let us know what you think!
  • New setting to select variable name without ‘$’ on double click:
  • In PhpStorm 2016.3 we’ve added a new option to select variable name without the “$” sign on double click. In PHP all the variables are starting with the “$” and by default when you press double click the variable is selected with the “$” sign . However in many cases it might be more convenient to select variable without “$”, thus we’ve added this option. Now if you put the cursor at the variable name, then only the name of the variable will be selected, if you you need it to be selected with “$” just put the cursor before the the “$” sign and double click.
  • This setting can be found under Settings|Editor|General|Smart Keys|Select variable name without ‘$’ sign.
  • Keep ‘)’ and ‘{‘ on one line for PHP 7 return type:
  • In this EAP “Keep ‘)’ and ‘{‘ on one line” setting works also for return types in PHP 7. The setting can be found under Settings|PHP|Code Style|Wrapping and Braces|Function declaration parameters.
  • Bug:
  • WI-31618 — Function opening brace is moved to the next line when arguments span multiple lines an a return type (PHP 7) is specified
  • Feature:
  • WI-2500 — Make option "Honor $ sign when selecting words on double click" setting in IDE Settings -> Editor

New in PhpStorm 2016.3 Build 163.4396.15 EAP (Sep 14, 2016)

  • New extension point that allows to provide PHP files into projects:
  • We are working on improvement of the open API in PhpStorm. Now new extension point was implemented which allows to provide easily PHP files into a project, the sample plugin can be found here. You will find this feature extremely helpful if you use “magic” files for your projects. Before you had to copy such files into each project separately, but now you can just create a simple plugin to add the files into your projects. Also if you were using PhpStorm Helpers before, now you can just create a simple plugin as well.
  • Quick fix for case-insensitive inspection:
  • In PhpStorm 2016.3 we’ve added a quick fix for case-insensitive inspection. Now you can just press Alt+Enter to easily fix the call/usage of the method according to the declaration case.
  • Composer doesn’t add vendor subfolders to External Libraries:
  • In this version all the vendor sub-folders are only available in a project tree and don’t have their duplicates in External Libraries. The folders are still treated like a libraries but are not shown in the Project tree like it’s done now for phars, which makes it more convenient.
  • Improved VCS Log:
  • The layout of VCS Log is improved in this version. Now the commit details have moved to the right, giving more space to the Log itself and commit messages in the table are now aligned which makes them more readable.
  • Bug:
  • WI-9426 — No warning about incorrect magic methods visibility type
  • WI-33164 — Overridden methods completion: doesn't take into account static methods in @method
  • WI-33196 — __clone, __construct and __destruct cannot be static
  • WI-33206 — java.lang.StringIndexOutOfBoundsException is thrown
  • Cosmetics:
  • WI-33194 — Magic method visibility: Change method visibility label is confusing
  • Exception:
  • WI-33209 — java.lang.RuntimeException: Invalid Signature is thrown on Symfony 3 project during offline inspection
  • Feature:
  • WI-22743 — Create an Extension Point to extend build-in "PHP stubs"/scope.
  • WI-27157 — Provide quick fix for case-insensitive inspection
  • WI-33179 — Don't add folders under vendor to External Folders

New in PhpStorm 2016.3 Build 163.3983.3 EAP (Sep 7, 2016)

  • Highlights:
  • Code Style Settings for PHP 7 return types (Spaces->Other in Code Style)
  • Improvements in completion for overriding methods/fields and many other bug fixes and improvements.
  • Bug:
  • WI-33037 — Caret isn't indented if there is a comment multiline comment after block start statement
  • WI-33044 — Global level configuration is not copied to project if interpreter level is changed in project where configuration hasn't been created
  • WI-33066 — Overriding a Method through Tab-Completion doesn't import the Use Statement for a Type-Hinted Parameter
  • WI-33086 — Return type is not imported when overriding a method from the completion list
  • WI-33091 — UML: UML diagram shows only one class
  • WI-33125 — Setter is suggested in completion list even if it was already inserted when field is in a superclass
  • WI-33126 — Overridden methods: Abstract functions inserted with abstract keyword and a body
  • WI-33127 — Overridden methods completion: lacks methods and fields from traits
  • WI-33130 — Overridden methods completion: of constants with visibility modifier doesn't insert const keyword
  • WI-33131 — Overridden methods completion: inserts broken elements from @method and @property entities
  • WI-33147 — Project templates: Sometimes iml of an attached project can't be found
  • WI-33159 — Completion: Suggest magic methods after "private function"
  • Cosmetics
  • WI-32607 — PHPCS: In Custom Coding Standard dialog "Root directory" label should be renamed
  • Exception:
  • WI-33073 — Save project template doesn't work
  • WI-33087 — Exception is thrown on invocation of "Show Parents" and "Show Implementation" in UML on folder
  • WI-33145 — StackOverflowException is thrown on attempt to build UML for class that extends itself
  • Feature:
  • WI-30320 — PHP7 Return type code style
  • WI-33124 — Provide object methods on second invocation for overridden methods completion

New in PhpStorm 2016.3 Build 163.3512.10 EAP (Sep 2, 2016)

  • Ability to open several PhpStorm projects in one frame:
  • In PhpStorm 2016.3 EAP you have a possibility to attach/detach a project to the current one. This will allow you to do a cross-project refactoring. Please note that all the settings will be taken from the primary project, so no per-project PHP settings are allowed.
  • Support of Docker in Remote Interpreters:
  • Now you can add Docker as a remote PHP interpreter in the “Configure Remote PHP Interpreter” settings in PhpStorm. Thus it becomes even easier to setup your development environment with Docker and start the PHP Scripts, PHPUnit tests, Behat tests, PHP CodeSniffer or PHP Mess Detector inside Docker.
  • Сompletion of overridden methods and fields without function and var keyword:
  • In PhpStorm 2016.3 it’s allowed to complete overridden methods and fields without function and var keywords. When you invoke completion you will see a method and a field available to override.
  • Project wide PHP 7 strict types:
  • We’ve added a “Missing Strict Types Declaration” inspection which enables strict type mode in PhpStorm (Settings|Editor|Code Style|Inspections|PHP|Type Compatibility). It gives a warning if you didn’t have declare(strict_types=1); as the first line of the file. There is also an intention which allows you to fix this across the whole project. This is especially useful if you are converting a whole project to PHP 7 and want to enable strict types.
  • Improved support of PSR-0/PSR-4:
  • “Create new test” and “Create new class” actions were improved and now they take into account PSR-0/PSR-4 and allow you to generate new folders. Also if you have a folder marked as “Test Source Root” this folder will be picked up automatically in the directory field when you create a new test.
  • Auto-detection and configuration of PHPUnit and Behat:
  • We made it easier to set up PHPUnit and Behat for your project. Now existence of these test frameworks will be detected from the composer.json and you will get a popup tooltip suggesting configure them automatically.
  • PHP stubs are shown as external libraries:
  • Now PHP stubs are shown as an external library in PhpStorm.
  • PHP UML support directories:
  • In PhpStorm 2016.3 we’ve added support of directories for UML diagrams. You can expand classes/subfolder by clicking Expand in directory context menu.
  • Support of list() and array of objects:
  • PhpStorm 2016.3 correctly sets up types of variables inside list() if on the right side of assignment is a array of objects.
  • New option to surround chars ‘->’ with spaces:
  • We’ve added an option which allow automatically surround ‘->‘ with spaces. You can activate it in Settings|Editor|Code Style|PHP and check Object access operator (->) in the Spaces tab.
  • Improvements from platform side:
  • This update brings many Version Control improvements, such as Undo commit, Restore and Delete tracked branch actions, Sign-off commit, and Scope highlighting and other changes. You can find more details in the IntelliJ blog.
  • JavaScript and CSS:
  • PhpStorm 2016.3 also brings major improvements in its support of top-notch web technologies, such as integration with Flow, PostCSS support, smarter rename for TypeScript, more Angular CLI, grouping generated files in ProjectView, and generation of .editorconfig. You can find more details in the WebStorm blog.
  • Other Changes:
  • Improvements in anonymous classes support
  • Support of PHPUnit application-level configurations

New in PhpStorm 2016.2.1 Build 162.1889.1 (Aug 25, 2016)

  • PHP Completion:
  • Feature - WI-32632 - Add code completion for php settings in ini_set function
  • Feature - WI-29334 - Provide completion for $this inside anonymous class
  • Feature - WI-29333 - Provide completion for variables that contains object of anonymous class
  • Feature - WI-30925 - Provide custom prefixes for HEREDOC injections
  • Feature - WI-32276 - Smart completion: provide filtering after specific operators
  • Feature - WI-12220 - Strg+Space suggest stdObject member which were used before
  • Feature - WI-9403 - Add option to filter out static methods from $this-> completion
  • Feature - WI-14098 - Complete unresolved/undefined but already used in scope php variable names
  • Feature - WI-32530 - Static methods should be shown after $this-> for PHPUnit tests
  • Feature - WI-30467 - Provide completion for methods after @see tag
  • Feature - WI-23014 - Add argument completion for catch block
  • Bug - WI-32436 - Static methods are filtered after $this::
  • Bug - WI-32272 - Smart Completion: doesn't work for yield statement
  • Bug - WI-23392 - Autocomplete does not strike out @deprecated vars inherited from @property
  • Bug - WI-32533 - Exceptions completion doesn't respect namespace separator
  • Bug - WI-32453 - Do not suggest 'class' keyword after $this
  • Bug - WI-32612 - instanceof autocompletion is not recognized in return statements
  • Bug - WI-30468 - There's nothing suggested in a namespace context after @see tag
  • Usability - WI-30059 - Space before { is lost after extends/implements.
  • Usability - WI-26644 - Unable to resize suggestions popup, popup size varies depending on invocation ?
  • Usability - WI-32493 - Extend a lookup advertisement with the completion shortcut
  • Usability - WI-24995 - Incorrectly auto-completes ClassName::class constant with language level below 5.5
  • Usability - WI-23317 - Dot triggers autocomplete
  • Usability - WI-32613 - Give more priority to built-in constants and functions
  • PHP Formatter:
  • Feature - WI-26507 - Array initializer parentheses option insert spaces for empty declaration
  • Bug - WI-30196 - Complete current statement: works wrong for function if there is no line beneath
  • PHP Inspections:
  • Feature - WI-21501 - Allow custom filename.xml for PHPCS config
  • Bug - WI-32146 - Class hierarchy check: should check constant visibility
  • Bug - WI-32636 - "Declaration must be compatible" false positive
  • Bug - WI-31549 - PHP null coalescing operator: invalid unreachable statement
  • Bug - WI-31311 - Unused Local Variable with break (N) continue (N)
  • Bug - WI-32404 - Incompatible type inspection: doesn't detect multiple return statement on the single line
  • Bug - WI-32160 - Class hierarchy check: Nullability should be taken into account for method overriding
  • Bug - WI-32488 - Inconsistent return points: warns about missing return statement when 'yield' is used
  • Bug - WI-32376 - Method toString inspection resolves global function to namespaced one
  • Bug - WI-31292 - Should warn for missing return statement if @return tag or return type is present
  • Bug - WI-26721 - Imported classes from namespaces inside test sources are marked as "never used"
  • Bug - WI-30219 - PHP Import/Alias is marked as never used if files are located in separate IDEA modules
  • Bug - WI-32182 - Class is marked as unused if it's used as a part of @see tag
  • Bug - WI-31942 - Incorrect "unused variable" warning when used near @lang PhpDoc
  • Bug - WI-32621 - "strict_types declaration must be the very first statement in the script" error with shebang
  • Bug - WI-32693 - Using the backtick (execution) operator always results in expression unused warning
  • Bug - WI-32551 - Strict type: Incorrect "error" type warning for int return types
  • Bug - WI-32552 - Incompatible return type: Returning $this in a trait violates self return type hint
  • Bug - WI-30281 - Null Coalesce Operator triggers access warnings on classes
  • Bug - WI-28320 - Declarations of method in an interface/parent class and a child class should be compatible in terms of return type
  • Bug - WI-32904 - @return self annotated initializer for field constructor leaks self to field type.
  • Usability - WI-31984 - Fail to execute code sniffer with directory dependent ruleset
  • Usability - WI-32205 - Show errors that appears due to broken PHPMD/PHPCS installation
  • Usability - WI-30132 - Inspection "Static function should not be abstract" should be disabled by default in PHP versions 7+
  • Cosmetics - WI-32678 - Typo in "Static method called as dynamic" inspection results
  • PHP Refactoring:
  • Feature - WI-30301 - Extract method refactoring should generate typehints when it can
  • Bug - WI-20911 - Rename refactoring can't rename class field inside @see tag
  • Bug - WI-30425 - Unable to read tip of the day: introduce constant
  • Bug - WI-20909 - Rename refactoring doesn't rename class name in @see tag
  • Bug - WI-30247 - Extract Interface fails to update "self" return type declarations causing Fatal Errors [PHP7]
  • Bug - WI-20910 - Rename refactoring doesn't rename function in @see tag more than once
  • Bug - WI-30255 - Incorrect @return docblock on protected methods after extracting Interface [PHP7]
  • Bug - WI-32848 - Extract Interface doesn't update parent type hint in extracted Interface
  • Bug - WI-26688 - 'Import class' ignores PHPDoc 'Use fully-qualified class names' setting
  • PHP debug:
  • Cosmetics - WI-32568 - When configuring a PHP interpreter, and php.ini does not exist, there is a grammar error: "Configuration php.ini file does not exists"
  • PHP lang:
  • Bug - WI-30659 - Scalar type hints are available in PHP7 only
  • Bug - WI-32579 - Static return type is not allowed in method declaration
  • Bug - WI-31354 - yield inside if breaks method checking
  • Bug - WI-32801 - Inconsistent document structure for DOC_STATIC inside doc arrays
  • Bug - WI-30388 - "Resource" is not a PHP 7 scalar type
  • Bug - WI-32596 - array_map Invalid return type type inferred
  • Bug - WI-22069 - $argc and $argv is reported as "undefined" inside namespace
  • Bug - WI-29916 - Array type being lost after overriding or pushing additional items to the array
  • Bug - WI-21808 - Type Inference: overrides PHPDoc declaration in parent/trait class
  • Bug - WI-32252 - PHP language level set to "7.1" can't be stored
  • Bug - WI-31592 - PHP: Multiple parameters with same name should be marked as error
  • Bug - WI-32624 - @return namespace-like description containing SPACES not parsed properly
  • Bug - WI-25292 - Invoking Suppression action (adding @noinspection phpdoc) breaks regular PhpDoc e.g. on class.
  • Usability - WI-30540 - Bring back "Predefined symbol" highlighting for built-in functions
  • PHP test:
  • Bug - WI-32379 - PHPUnit: Provide a name of a broken configuration or a link to it in case of missing bootstrap or configuration file
  • Usability - WI-32380 - PHPUnit: make behavior consistent for missing path in PHPUnit configuration
  • Plugin: Deployment _ FTP..:
  • Bug - WI-32635 - New Project from Existing Files: Excluded from Download color doesn't get changed
  • Bug - WI-32677 - Function "select in remote host" not working
  • Bug - WI-32764 - Remote Host freezing on unavailable host
  • Bug - WI-29900 - SFTP: deployment shouldn't retry login on purely wrong credentials
  • Task - WI-32722 - Move auth data to separate files out of usual VCS integration and settings repository
  • Exception - WI-32519 - Impossible to create a new project from existing files from Welcome Screen
  • Plugin: htaccess:
  • Bug - WI-32540 - Adding javascript reference causes the IDE to freeze and all CPUs to run at max
  • No subsystem:
  • Cosmetics - WI-32618 - The colours for elements in the theme change on startup. Changing theme and changing back solve the issue.
  • PHP Run:
  • Bug - WI-28391 - Show progress indicator on gathering PHP info
  • Plugin: Joomla!:
  • Bug - WI-32527 - Project generator doesn't change some file names in Component to project name
  • Bug - WI-32502 - Joomla project generator shouldn't create root folder 'component' for Component type
  • Documentation:
  • Usability - IDEA-158071 - Documentation of com.intellij.psi.tree.* API classes
  • No subsystem:
  • Bug - IDEA-132965 - Hitting enter in the Expression field in the Edit Template Variables dialog does not save the value
  • Bug - IDEA-157874 - ERROR - #com.intellij.ide.plugins.PluginManager - Argument for @NotNull parameter 'action' of com/intellij/openapi/actionSystem/AnActionEvent.createFromAnAction must not be null
  • Bug - IDEA-156993 - Project Name replaced with Directory Basename in Welcome Screen (EAP, Regression)
  • Bug - IDEA-157266 - Safe delete: Exclude file is enable
  • Performance - IDEA-158360 - IDEA IU-162.1121.32 ConcurrentModificationException
  • Usability - IDEA-158213 - Inconsistent soft wraps all state
  • Code Analysis. Inspection:
  • Bug - IDEA-157966 - Inspection result tool window shows only one result instead of several for one line when grouping by severity enabled
  • Bug - IDEA-157068 - Inspection result tool window - 'Nothing here' in quickfix pop-up after using Go Next/Prev problem
  • Bug - IDEA-157777 - Case where View Offline Inspection Results doesn't show results
  • Usability - IDEA-155319 - "Run inspection by name" should not reuse "Find Action" search pattern
  • Usability - IDEA-157156 - 'Unused declaration' - suppress &quickfix actions are available after applying
  • Exception - IDEA-159043 - NPE running 'Unused declaration' inspection
  • Code Coverage:
  • Bug - IDEA-158755 - Export Coverage Report as HTML produces a NPE
  • Code Navigation:
  • Bug - IDEA-157772 - Breadcrumbs are shown incorrectly in the decompiled classes
  • Bug - IDEA-157786 - File matching pattern results showed twice for some files
  • Performance - IDEA-156735 - Bookmarks causing typing slowness
  • Console:
  • Bug - IDEA-132694 - ANSI colors need restart for a new settings to apply
  • Docker:
  • Feature - IDEA-142322 - Add possibility to close attached console
  • Bug - IDEA-155150 - Dockerfile editor misidentifies $(...) as syntax error
  • Bug - IDEA-155582 - Docker. Error is displayed for "!" in the correct Dockerfile in the Editor.
  • Bug - IDEA-155508 - Docker. Error is displayed for the correct Dockerfile in the Editor.
  • Usability - IDEA-155356 - Docker. Order containers and Images in the Docker View.
  • Editor. Editing Text:
  • Bug - IDEA-158038 - Multi-caret typing of a text where some characters are inserted automatically results to different content of the first and other lines
  • Find, Replace, Find Usages:
  • Bug - IDEA-120868 - Usage search "No Results" popup too small
  • HTML:
  • Bug - IDEA-157251 - Wrong autocomplete for opening tags
  • IDE Configuration:
  • Feature - IDEA-158388 - Add 'fromIDE' to all URLs that are opened from updates dialog
  • Bug - IDEA-156986 - Keymap: "English layout support" option gets disabled after reopening Preferences
  • Bug - IDEA-156742 - Save problem for Code Style Setting on Windows
  • Bug - IDEA-153585 - File Templates can't be exported/imported via Export/Import settings
  • Bug - IDEA-158422 - Keymap: for non-QWERTY keyboard layouts Ctrl is processed as Ctrl+Alt (Windows) or Alt (Mac OS) when combined with symbols
  • Bug - IDEA-156990 - Keymap: for non-QWERTY keyboard layouts semicolon is treated as colon in keyboard shortcuts
  • Exception - IDEA-158917 - Exception on startup
  • Indices:
  • Bug - IDEA-156411 - UI lockup on updating indices
  • Packaging and Installation:
  • Bug - IDEA-151793 - IDEA failed to restart after plugins activation
  • Project Configuration:
  • Bug - IDEA-159125 - intelij crashes and deletes whole project
  • Refactoring:
  • Usability - IDEA-158776 - Do not show 'Non-Project file protection' dialog when deleting/safe deleting files
  • Run | Debug configuration:
  • Bug - IDEA-158654 - Debug becomes disabled for Run Configuration with dependency in 'Before run' section
  • Usability - IDEA-155476 - Run/debug silently fails when 'Run another configuration' step is broken
  • User Interface:
  • Bug - IDEA-148656 - Should not add .txt extension to a file without extension after copying
  • Bug - IDEA-158318 - File selector in 'Version Control' -> 'History' doesn't work if window was hidden
  • Version Control:
  • Bug - IDEA-153272 - Files are lost during the movement of unversioned files to overwrite existing files with same names
  • Bug - IDEA-112589 - Unexpected clipboard content after Ctrl+C on shelf's files list
  • Performance - IDEA-158252 - IDE completely freezed after indices failure
  • Performance - IDEA-149091 - Editing is slow because of Local Changes view UI refresh
  • Usability - IDEA-155714 - Clone Repository - User has a Hard Stop if Directory exists, even after deleting Directory
  • Usability - IDEA-149027 - Not able to clone Repository into existing empty folder
  • Usability - IDEA-146640 - If Commit dialog is invoked when index is not built yet it suggests to wait to make code analysis available forever
  • Cosmetics - IDEA-155713 - Error message refers to a "Directory" and "Path" in the same context.
  • Version Control. Git:
  • Bug - IDEA-159580 - GIT project update hangs
  • Usability - IDEA-160000 - Keep second line empty in commit messages on git cherry-pick
  • Usability - IDEA-118140 - Don't add renamed or moved files to git index unless configured to do so
  • Usability - IDEA-135612 - Git clone dialog: "The parent path must exist" should be a warning
  • Version Control. Log:
  • Bug - IDEA-157907 - user filter shows no changes after scrolling down
  • Bug - IDEA-158666 - Cannot copy text from Details of Git "Show History"
  • Version Control. Mercurial:
  • Bug - IDEA-159546 - Problem with pullpush operation on hg
  • Exception - IDEA-159729 - CME at java.util.HashMap$HashIterator.nextNode
  • Exception - IDEA-159723 - SOE on UpdateProject invocation
  • Version Control. Subversion:
  • Cosmetics - IDEA-115024 - Grammar error in SVN error message
  • DB Connectivity:
  • Bug - DBE-2858 - Cannot select private key file while setting MySQL Database over SSH using Key pair
  • No subsystem:
  • Feature - WEB-22722 - Update bundled JSHint version to 2.9.2
  • Bug - WEB-22601 - When collapsing a react/jsx component it shows as instead of the component name.
  • Bug - WEB-21997 - Go to URL matches urls incorrectly if url contains $ in it
  • Bug - WEB-21664 - Unexpected "Cannot resolve symbol" error
  • Bug - WEB-22156 - Missing import statement
  • Bug - WEB-22163 - Add braces to arrow function statement — doesn't work as expected
  • Bug - WEB-22481 - quickdoc for array of mixed type is wrong
  • Build tools:
  • Bug - WEB-22578 - Debugging Gulp with Node.js v6: add --expose-debug-as=v8debug
  • Debugger:
  • Bug - WEB-22597 - Node 6.*: debugging multi-threaded applications doesn't work
  • Bug - WEB-21106 - Cannot change numeric value of Javascript property when stopped in debugger
  • Bug - WEB-22121 - Debugging Karma tests no longer works
  • Bug - WEB-22466 - Debug with node 6.3.0 don't work at WebStorm 2016.2
  • Bug - WEB-22522 - Debugger: java.nio.file.AccessDeniedException on Karma tests debug
  • File Watchers:
  • Bug - WEB-14871 - File Watcher hangs on "Executing Closure Compiler Task" when using wildcard
  • HTML:
  • Bug - WEB-313 - HTML Code Style - insert new line berfore bug
  • Bug - WEB-9936 - Strange tab (auto-complete) behaviour in html files.
  • Bug - WEB-426 - "onclick" attribute parse bug
  • Bug - WEB-12182 - Please remove u-tag decrepated alert
  • Bug - WEB-428 - php tags in className - broken breadcrumbs.
  • Cosmetics - WEB-430 - Tag bounds shower is not updated after a single-row tag is selected
  • JavaScript - :
  • Feature - WEB-22281 - Provide coding assistance for declaration names
  • Feature - WEB-20920 - JavaScript completion should be sorted by frequency
  • Feature - WEB-7522 - Support JSDoc's @template mechanism on a class level
  • Bug - WEB-22297 - babelrc doesn't recognize plugin options
  • Bug - WEB-20956 - ES6: re-exporteing default module causes 'default export not declared in imported module' error
  • Bug - WEB-21560 - "Replace with Template String" fails if original contains a backtick
  • Bug - WEB-21281 - folding object error
  • Bug - WEB-22285 - Live Templates: jsClassName() doesn't return AMD module name when expanded in ES6 method definition shorthand
  • Bug - WEB-22542 - JS: let is not considered a keyword
  • Bug - WEB-22521 - wrong style for js keyword operators (void, typeof)
  • Bug - WEB-22520 - [regression] [js] get and set are not styled as keywords
  • Bug - WEB-22096 - Node modules: @types should be always indexed
  • Bug - WEB-22369 - Convert to arrow function produces truncated result
  • Bug - WEB-21792 - Syntax errors on parsing object property with name 'views'
  • Bug - WEB-21350 - "get" keyword has wrong highlighting in JavaScript
  • Bug - WEB-15808 - 'Invalid' value in completion
  • Performance - WEB-22544 - Poor editor performance with 25000 line javascript file
  • Usability - WEB-22602 - ES6: inconsistent availability of "convert to arrow function"
  • Cosmetics - WEB-22215 - Exclude JSDoc from 'assignment' inspection
  • Exception - WEB-22218 - angular-ui-router diagram: ClassCastException when create a new note
  • JavaScript. Formatter:
  • Bug - WEB-22268 - Align var statement and assignments does not align ES6 destructuring assignments
  • Bug - WEB-21661 - Wrong 'Format Code' in React render code
  • JavaScript. Frameworks:
  • Feature - WEB-22233 - angular-ui-router diagram: add more info on chart
  • Bug - WEB-21527 - Intellij freezes when opening xml file
  • Bug - WEB-22219 - angular-ui-router diagram: remove element list from settings
  • Bug - WEB-21677 - JSX Children PropTypes incorrectly parsed
  • Bug - WEB-22292 - angular-ui-router: 'Show edge labels' is shown when shouldn't
  • Bug - WEB-22659 - React: don't report 'missing required attribute' error for required properties from defaultProps
  • Bug - WEB-22498 - Good code is red in JSX React syntax
  • Bug - WEB-22033 - angular-ui-router: missing .html on chart
  • Bug - WEB-22289 - angular-ui-router diagram is available for node.js project
  • Bug - WEB-22277 - JSX boolean attributes mistakenly reported as not boolean
  • Exception - WEB-22195 - angular ui-router: IllegalArgumentException, file is not open
  • Exception - WEB-22208 - angular-ui-router chart: Throwable
  • JavaScript. Inspections:
  • Feature - WEB-21946 - Linters: highlight the whole token
  • Feature - WEB-12565 - Exempt @class from function naming convention inspection
  • Bug - WEB-22116 - Intentions "Convert var to let", "Convert var to const" freeze large project
  • Bug - WEB-22503 - Inspections: "Convert to let": do not change operations order
  • Bug - WEB-22681 - Update built-in JSLint version
  • Bug - WEB-22135 - Convert to let should keep initialization together with declaration
  • Bug - WEB-22712 - Inspection 'validate file reference' false positive on resources with query
  • Bug - WEB-22228 - Incorrect "unresolved variable" warning after a destructing assignment from a require() in Node.js
  • Bug - WEB-22310 - Inspections: "Convert to let" leaves preceding comments untouched while moving declarations
  • Bug - WEB-19667 - Variable might not have been initialized with ES6 destructing
  • Bug - WEB-22502 - Inspections: "Convert to let": do not place result 'let' into another scope
  • Bug - WEB-22668 - Erroneous conversion to arrow function
  • Bug - WEB-22376 - "Missing import statement" in code inspection by mistake
  • Bug - WEB-21334 - Eslint config with strings
  • Bug - WEB-22166 - Intentions: "Add braces to arrow function statement" eats any preceding comment
  • Bug - WEB-22260 - Incorrect detection JSDoc in tag @typedef
  • Exception - WEB-22394 - Inspections: Throwable on applying "Convert to let"/"Convert to const" quick fix
  • Exception - WEB-22616 - Inspections: "Convert to let": IOOBE is thrown on applying quick fix to Fix all statements
  • JavaScript. Predefs:
  • Bug - WEB-22269 - EcmaScript6.js (Predefined JavaScript files) claims Array.prototype.fill will return "void"
  • JavaScript. Refactoring:
  • Bug - WEB-22132 - Convert to let should consider scope
  • Bug - WEB-22133 - NPE during var to let conversion
  • Bug - WEB-20067 - "Find Usages" and refactoring does not work, with es6 object definition
  • Node.js:
  • Feature - WEB-11419 - Provide better exclude rules for indexing.
  • Bug - WEB-22201 - Package.json repository field validation is wrong.
  • Bug - WEB-22327 - Can't open project. Cyclic dependency: [JSLibraryMappings, JSLibraryMappings]
  • Bug - WEB-22197 - Cannot enable node.js core library
  • Bug - WEB-22653 - Node.js: node_modules recognition: excluded folder of the removed library should not be added back as library
  • Bug - WEB-22652 - Node.js: node_modules recognition: correctly preserve enabled/disabled library state
  • Bug - WEB-22654 - Node.js: node_modules recognition: library becomes disabled after project opening in different versions
  • Bug - WEB-22620 - Node.js: node_modules recognition: each node_modules folder is treated as separate library
  • Bug - WEB-22430 - Node.js debug doesn't work with Error: Cannot find module at
  • Bug - WEB-22499 - Npm: Missing module dependency inspection: search in all package.json files in the project
  • Bug - WEB-22161 - Enabling Node.js Core Library breaks absolute imports
  • Bug - WEB-20278 - Node.js: update indexes on package.json update
  • Bug - WEB-22619 - Node.js: node_modules recognition: remove "Node.js dependencies for" library
  • Usability - WEB-22658 - Node.js: node_modules recognition: show folder as Excluded in Directories
  • Usability - WEB-22429 - Node.js: correctly mark node_modules as a library root in the Project View
  • Exception - WEB-22627 - Node.js: node_modules recognition: StackOverflowError on old project opening
  • Profiling:
  • Exception - WEB-22517 - FileTooBigException when compare large heap snapshots
  • TypeScript:
  • Feature - WEB-22280 - TypeScript 2.0: support 'include' option in tsconfig.json
  • Feature - WEB-22001 - Auto-imports are wrong when importing from a library that has pathMapping setup
  • Bug - WEB-22723 - TypeScript: Type checking for functions checks initializer type instead of type declaration
  • Bug - WEB-22213 - Typescript Auto Import does not work when TS compiler is enabled
  • Bug - WEB-22322 - TypeScript: Convert to shorthand arrow function creates invalid shorthand functions
  • Bug - WEB-22199 - TypeScript: correctly recognize "public static readonly" statement
  • Bug - WEB-22676 - Typescript: Module importing flags import as unused if only type is imported
  • Bug - WEB-22416 - Additional TypeScript annotator in plugin breaks semantic highlighting of TS class names
  • No subsystem:
  • Bug - JRE-2 - [IDEA-157673] After opening Preferences first time, controls are not editable, closing dialog leads to it be shown again. + exception thrown
  • No subsystem:
  • Bug - PY-19573 - Python console - no output under OS X
  • Docker:
  • Bug - PY-19983 - '404 page not found' two times and interpreter is added long
  • Bug - PY-19886 - Docker for Mac Beta v1.12 Doesn't Support HostConfig
  • Vagrant:
  • Feature - PY-19781 - Add 'Vagrant Share' command to Tools > Vagrant
  • HAML:
  • Bug - RUBY-18415 - RubyMine 2016.2.1 freezes while open HAML file
  • Bug - RUBY-18231 - HAML following javascript filter blocks is marked as red/unresolved
  • Bug - RUBY-18289 - IntelliJ 2016.2 freezes while indexing HAML file
  • Markdown - :
  • Bug - RUBY-18237 - URLs with dashes are not rendered correctly in Markdown JavaFX preview panel
  • YAML:
  • Feature - RUBY-17496 - Update breadcrumbs to show the element values
  • Bug - RUBY-18147 - Unexpected multi typing is appear in InjectionEditor
  • Bug - RUBY-18290 - Сan not open yml file

New in PhpStorm 2016.2.1 Build 162.1628.23 EAP (Aug 11, 2016)

  • This build brings many bug fixes and improvements. From the PHP side, this build delivers:
  • Autocomplete on previously declared properties for stdClass objects
  • Predefined function highlighting is back (WI-30540)
  • Fixed type detection getting broken after evaluating in debug (WI-32620)
  • Completion of static methods after $this-> for PHPUnit tests is back (read related blog post)
  • Fixed creation a new project from existing files (WI-32519)
  • Completion for php settings in ini_set function
  • Improved completion after @see tag
  • and other bug fixes and improvements (see full list in our issue tracker).
  • PHP Completion:
  • Feature: WI-32632: Add code completion for php settings in ini_set function
  • Feature: WI-29334: Provide completion for $this inside anonymous class
  • Feature: WI-29333: Provide completion for variables that contains object of anonymous class
  • Feature: WI-12220: Strg+Space suggest stdObject member which were used before
  • Feature: WI-14098: Complete unresolved/undefined but already used in scope php variable names
  • Feature: WI-32530: Static methods should be shown after $this-> for PHPUnit tests
  • Feature: WI-30467: Provide completion for methods after @see tag
  • Feature: WI-23014: Add argument completion for catch block
  • Bug: WI-23392: Autocomplete does not strike out @deprecated vars inherited from @property
  • Bug: WI-32612: instanceof autocompletion is not recognized in return statements
  • Bug: WI-30468: There's nothing suggested in a namespace context after @see tag
  • Usability: WI-30059: Space before { is lost after extends/implements.
  • Usability: WI-26644: Unable to resize suggestions popup, popup size varies depending on invocation ?
  • Usability: WI-24995: Incorrectly auto-completes ClassName::class constant with language level below 5.5
  • Usability: WI-23317: Dot triggers autocomplete
  • Usability: WI-32613: Give more priority to built-in constants and functions
  • PHP Inspections:
  • Bug: WI-32636: "Declaration must be compatible" false positive
  • Bug: WI-32182: Class is marked as unused if it's used as a part of @see tag
  • Bug: WI-32621: "strict_types declaration must be the very first statement in the script" error with shebang
  • Bug: WI-32693: Using the backtick (execution) operator always results in expression unused warning
  • Bug: WI-32551: Strict type: Incorrect "error" type warning for int return types
  • Bug: WI-32552: Incompatible return type: Returning $this in a trait violates self return type hint
  • Cosmetics: WI-32678: Typo in "Static method called as dynamic" inspection results
  • PHP Refactoring:
  • Feature: WI-30301: Extract method refactoring should generate typehints when it can
  • Bug: WI-30425: Unable to read tip of the day: introduce constant
  • Bug: WI-20909: Rename refactoring doesn't rename class name in @see tag
  • Bug: WI-20911: Rename refactoring can't rename class field inside @see tag
  • Bug: WI-20910: Rename refactoring doesn't rename function in @see tag more than once
  • Bug: WI-30247: Extract Interface fails to update "self" return type declarations causing Fatal Errors [PHP7]
  • PHP debug: Cosmetics: WI-32568: When configuring a PHP interpreter, and php.ini does not exist, there is a grammar error: "Configuration php.ini file does not exists"
  • PHP lang:
  • Bug: WI-30659: Scalar type hints are available in PHP7 only
  • Bug: WI-31354: yield inside if breaks method checking
  • Bug: WI-32801: Inconsistent document structure for DOC_STATIC inside doc arrays
  • Bug: WI-30388: "Resource" is not a PHP 7 scalar type
  • Bug: WI-32596: array_map Invalid return type type inferred
  • Bug: WI-32252: PHP language level set to "7.1" can't be stored
  • Usability: WI-30540: Bring back "Predefined symbol" highlighting for built-in functions
  • Plugin: Deployment _ FTP..: Task: WI-32722: Move auth data to separate files out of usual VCS integration and settings repository
  • Exception: WI-32519: Impossible to create a new project from existing files from Welcome Screen
  • Code Analysis. Inspection:
  • Exception: IDEA-159043: NPE running 'Unused declaration' inspection
  • Code Navigation:
  • Performance: IDEA-156735: Bookmarks causing typing slowness
  • Console:
  • Bug: IDEA-132694: ANSI colors need restart for a new settings to apply
  • HTML:
  • Bug: IDEA-157251: Wrong autocomplete for opening tags
  • IDE Configuration:
  • Bug: IDEA-156742: Save problem for Code Style Setting on Windows
  • Exception: IDEA-158917
  • Exception on startup
  • Indices:
  • Bug: IDEA-156411: UI lockup on updating indices
  • Project Configuration:
  • Bug: IDEA-159125: intelij crashes and deletes whole project
  • Refactoring:
  • Usability: IDEA-158776: Do not show 'Non-Project file protection' dialog when deleting/safe deleting files
  • User Interface:
  • Bug: IDEA-148656: Should not add .txt extension to a file without extension after copying
  • Version Control:
  • Bug: IDEA-153272: Files are lost during the movement of unversioned files to overwrite existing files with same names
  • Version Control. Git:
  • Usability: IDEA-118140: Don't add renamed or moved files to git index unless configured to do so
  • DB Connectivity:
  • Bug: DBE-2858: Cannot select private key file while setting MySQL Database over SSH using Key pair
  • No subsystem:
  • Feature: WEB-22722: Update bundled JSHint version to 2.9.2
  • Bug: WEB-22601: When collapsing a react/jsx component it shows as instead of the component name.
  • Bug: WEB-21664: Unexpected "Cannot resolve symbol" error
  • Bug: WEB-22156: Missing import statement
  • Bug: WEB-22481: quickdoc for array of mixed type is wrong
  • Build tools:
  • Bug: WEB-22578: Debugging Gulp with Node.js v6: add --expose-debug-as=v8debug
  • Debugger:
  • Bug: WEB-22522: Debugger: java.nio.file.AccessDeniedException on Karma tests debug
  • File Watchers:
  • Bug: WEB-14871: File Watcher hangs on "Executing Closure Compiler Task" when using wildcard
  • JavaScript:
  • Bug: WEB-20956: ES6: re-exporteing default module causes 'default export not declared in imported module' error
  • Bug: WEB-21281: folding object error
  • Bug: WEB-22521: wrong style for js keyword operators (void, typeof)
  • Bug: WEB-22520: [regression] [js] get and set are not styled as keywords
  • Bug: WEB-22542: JS: let is not considered a keyword
  • Bug: WEB-22096: Node modules: @types should be always indexed
  • Performance: WEB-22544: Poor editor performance with 25000 line javascript file
  • JavaScript. Frameworks:
  • Feature: WEB-22233: angular-ui-router diagram: add more info on chart
  • Bug: WEB-21527: Intellij freezes when opening xml file
  • Bug: WEB-22659: React: don't report 'missing required attribute' error for required properties from defaultProps
  • Bug: WEB-22498: Good code is red in JSX React syntax
  • JavaScript. Inspections:
  • Bug: WEB-22503: Inspections: "Convert to let": do not change operations order
  • Bug: WEB-22681: Update built-in JSLint version
  • Bug: WEB-22502: Inspections: "Convert to let": do not place result 'let' into another scope
  • Bug: WEB-22376: "Missing import statement" in code inspection by mistake
  • Exception: WEB-22394: Inspections: Throwable on applying "Convert to let"/"Convert to const" quick fix
  • Node.js:
  • Feature: WEB-11419: Provide better exclude rules for indexing.
  • Bug: WEB-22327: Can't open project. Cyclic dependency: [JSLibraryMappings, JSLibraryMappings]
  • Bug: WEB-22653: Node.js: node_modules recognition: excluded folder of the removed library should not be added back as library
  • Bug: WEB-22652: Node.js: node_modules recognition: correctly preserve enabled/disabled library state
  • Bug: WEB-22654: Node.js: node_modules recognition: library becomes disabled after project opening in different versions
  • Bug: WEB-22620: Node.js: node_modules recognition: each node_modules folder is treated as separate library
  • Bug: WEB-22430: Node.js debug doesn't work with Error: Cannot find module at
  • Bug: WEB-22499: Npm: Missing module dependency inspection: search in all package.json files in the project
  • Bug: WEB-20278: Node.js: update indexes on package.json update
  • Bug: WEB-22619: Node.js: node_modules recognition: remove "Node.js dependencies for" library
  • Usability: WEB-22658: Node.js: node_modules recognition: show folder as Excluded in Directories
  • Usability: WEB-22429: Node.js: correctly mark node_modules as a library root in the Project View
  • Exception: WEB-22627: Node.js: node_modules recognition: StackOverflowError on old project opening
  • Profiling:
  • Exception: WEB-22517: FileTooBigException when compare large heap snapshots
  • Code: Indexing:
  • Bug: OC-13991: AppCode won't update project symbols on start
  • Code Coverage:
  • Performance: RUBY-18264: Slow UI performance after running tests
  • Cucumber:
  • Bug: RUBY-11046: Cucumber's resolve variant window should look more human
  • HAML:
  • Bug: RUBY-18289: IntelliJ 2016.2 freezes while indexing HAML file

New in PhpStorm 2016.2.1 Build 162.1447.5 EAP (Jul 20, 2016)

  • PHP Completion:
  • Feature - WI-30925 - Provide custom prefixes for HEREDOC injections
  • Feature - WI-32276 - Smart completion: provide filtering after specific operators
  • Bug - WI-32436 - Static methods are filtered after $this::
  • Bug - WI-32453 - Do not suggest 'class' keyword after $this
  • Bug - WI-32272 - Smart Completion: doesn't work for yield statement
  • Bug - WI-32533 - Exceptions completion doesn't respect namespace separator
  • Usability - WI-30059 - Space before { is lost after extends/implements.
  • Usability - WI-32493 - Extend a lookup advertisement with the completion shortcut
  • PHP Formatter:
  • Bug - WI-30196 - Complete current statement: works wrong for function if there is no line beneath
  • PHP Inspections:
  • Feature - WI-21501 - Allow custom filename.xml for PHPCS config
  • Bug - WI-30281 - Null Coalesce Operator triggers access warnings on classes
  • Bug - WI-32160 - Class hierarchy check: Nullability should be taken into account for method overriding
  • Bug - WI-32146 - Class hierarchy check: should check constant visibility
  • Bug - WI-31311 - Unused Local Variable with break (N) continue (N)
  • Bug - WI-26721 - Imported classes from namespaces inside test sources are marked as "never used"
  • Bug - WI-31942 - Incorrect "unused variable" warning when used near @lang PhpDoc
  • Bug - WI-31549 - PHP null coalescing operator: invalid unreachable statement
  • Bug - WI-32404 - Incompatible type inspection: doesn't detect multiple return statement on the single line
  • Bug - WI-32488 - Inconsistent return points: warns about missing return statement when 'yield' is used
  • Bug - WI-32551 - Strict type: Incorrect "error" type warning for int return types
  • Bug - WI-32552 - Incompatible return type: Returning $this in a trait violates self return type hint
  • Bug - WI-28320 - Declarations of method in an interface/parent class and a child class should be compatible in terms of return type
  • Bug - WI-31292 - Should warn for missing return statement if @return tag or return type is present
  • Bug - WI-32376 - Method toString inspection resolves global function to namespaced one
  • Usability - WI-32205 - Show errors that appears due to broken PHPMD/PHPCS installation
  • Usability - WI-31984 - Fail to execute code sniffer with directory dependent ruleset
  • PHP Refactoring:
  • Bug - WI-30425 - Unable to read tip of the day: introduce constant
  • PHP test:
  • Bug - WI-32379 - PHPUnit: Provide a name of a broken configuration or a link to it in case of missing bootstrap or configuration file
  • Usability - WI-32380 - PHPUnit: make behavior consistent for missing path in PHPUnit configuration
  • Plugin: htaccess:
  • Bug - WI-32540 - Adding javascript reference causes the IDE to freeze and all CPUs to run at max
  • Plugin: Joomla!:
  • Bug - WI-32527 - Project generator doesn't change some file names in Component to project name
  • Bug - WI-32502 - Joomla project generator shouldn't create root folder 'component' for Component type
  • Docker:
  • Bug - IDEA-155582 - Docker. Error is displayed for "!" in the correct Dockerfile in the Editor.
  • Bug - IDEA-155508 - Docker. Error is displayed for the correct Dockerfile in the Editor.
  • Bug - IDEA-155150 - Dockerfile editor misidentifies $(...) as syntax error
  • JavaScript:
  • Feature - WEB-22281 - Provide coding assistance for declaration names
  • Bug - WEB-22369 - Convert to arrow function produces truncated result
  • Bug - WEB-22285 - Live Templates: jsClassName() doesn't return AMD module name when expanded in ES6 method definition shorthand
  • JavaScript. Formatter:
  • Bug - WEB-22268 - Align var statement and assignments does not align ES6 destructuring assignments
  • JavaScript. Frameworks:
  • Bug - WEB-22219 - angular-ui-router diagram: remove element list from settings
  • JavaScript. Inspections:
  • Feature - WEB-21946 - Linters: highlight the whole token
  • Bug - WEB-22310 - Inspections: "Convert to let" leaves preceding comments untouched while moving declarations
  • Bug - WEB-22260 - Incorrect detection JSDoc in tag @typedef
  • Bug - WEB-21334 - Eslint config with strings
  • JavaScript. Refactoring:
  • Bug - WEB-20067 - "Find Usages" and refactoring does not work, with es6 object definition
  • Node.js:
  • Bug - WEB-22201 - Package.json repository field validation is wrong.
  • Bug - WEB-22161 - Enabling Node.js Core Library breaks absolute imports
  • TypeScript:
  • Feature - WEB-22280 - TypeScript 2.0: support 'include' option in tsconfig.json
  • Bug - WEB-22322 - TypeScript: Convert to shorthand arrow function creates invalid shorthand functions
  • Bug - WEB-22416 - Additional TypeScript annotator in plugin breaks semantic highlighting of TS class names

New in PhpStorm 2016.2 Build 162.1121.38 (Jul 13, 2016)

  • Highlights:
  • Better PHP language support: Improved type inference, strict type inspection for PHP 7, better parsing of PHP 7 and PHP 7.1, and improved getter and setter generation for PHP 7 (and higher).
  • New editing experience: Dynamic live template for smart completion of function parameters; values of class constants shown in completion lists; possibility to filter out static methods from completion list; smart type code completion; and various @throws improvements.
  • Code quality analysis: Reworked ‘Unused imports’ inspection for unused namespaces, functions, and constants; ‘Return type’ inspection; and ‘Dynamic call to static method’ inspection.
  • Frameworks, tools, and more: Template projects, better Joomla! support, and Xdebug On Demand for CLI PHP Scripts.

New in PhpStorm 2016.2 Build 162.1121.15 EAP (Jul 7, 2016)

  • Better PHP Language Support:
  • Improved type inference, strict type inspection for PHP 7, better parsing of PHP 7 and PHP 7.1, improved getters and setters generation for PHP 7 (and higher).
  • New Editing Experience:
  • Dynamic live template for smart function parameters completion, values of class constants are shown in completion lists, possibility to filter out static methods from completion list, smart type code completion, various @throws improvements.
  • Code Quality Analysis:
  • Reworked unused imports inspection for unused namespace, functions, constants; Return type inspection; Dynamic call to static method inspection.
  • Frameworks, Tools, and more:
  • More PhpStorm advanced metadata, template projects, Joomla! support, Xdebug On Demand for CLI PHP Scripts.
  • Brings major improvements in support of top-notch web technologies, such as:
  • TypeScript 2.0 support
  • Angular CLI and code snippets
  • Possibility to drag files into HTML
  • From the IntelliJ Platform this release borrows:
  • Improvements in working with patches
  • Improved Git/Mercurial Log Viewer
  • UI Improvements
  • Support for fonts with ligatures
  • FIXED ISSUES:
  • Bug:
  • WI-10302 — Missing PHPDoc for Directory class
  • WI-11805 — Code inspection fails to report missing @throws annotations when nesting method calls
  • WI-12046 — Diagrams are ignoring namespaces
  • WI-12728 — Strange behavior of todo
  • WI-17655 — Remote Host locks up editor when trying to connecting to FTP
  • WI-20533 — PHPDoc blocks are not properly generated (omitted @throws tag and extra "@throws Exception")
  • WI-22774 — Missing @throws tag: doesn't analyze PHPDoc for defined exception
  • WI-24401 — Remote Host dock panel freezes IDE
  • WI-26365 — Downloaded file is truncated on outdated size
  • WI-26997 — Default for strtotime is incorrect
  • WI-27459 — Unused import: support functions and constants
  • WI-27646 — No autocomplete for objects in array after array_filter
  • WI-28319 — Add inspection (PHP 7): declare(strict_types=1) should be the very first statement
  • WI-28627 — Unresolved include: doesn't interpolate values of class constants
  • WI-29705 — Completion after a function's parameter type
  • WI-30055 — only first property in list() keyword will be interpreted as write access
  • WI-30092 — expected, unexpected error in php files named *.json.php
  • WI-30769 — Re-running large number of failed unit tests failed with: preg_match(): Compilation failed: regular expression is too large
  • WI-31102 — PhpStorm Advanced Metadata for global factory functions called from within namespace doesn't work since version 2016.1
  • WI-31147 — Invalid intentionautocomplete in function args
  • WI-31505 — PHPStorm incorrectly uses ArrayAccess's offsetGet to determine types for iteration
  • WI-31518 — Broken node refresh in Remote Host
  • WI-31620 — Completion list contains closing control structures
  • WI-31643 — Completion doesn't insert parentheses for exceptions in throw
  • WI-31646 — Lock in connection creation
  • WI-31767 — key exchange algorithm not honored
  • WI-31768 — Imported constant (alias) is resolved ignoring case sensitivity
  • WI-31799 — Implementing interface with return typehint doesn't import the namespace
  • WI-31841 — Don't filter out Exception if other type is not a Throwable
  • WI-31846 — Change Signature refactoring: hange anonymous functions in multiassignment expression
  • WI-31887 — Remove Project Type for opening of an existent project
  • WI-31888 — Disable Datasource detection if integration is disabled
  • WI-31926 — 'Autopopup in (ms)' option has no effect
  • WI-31970 — Blade syntax highlighting is not visible in Settings preview
  • WI-31974 — Rename folder wrong change reference
  • WI-31995 — 'namespace' operator is not suggested as a part of FQN
  • WI-31997 — List of completion after 'namespace' operator when it's a part of FQN contains all types of elements that are not applicable
  • WI-32007 — Don't show class members after global keyword
  • WI-32017 — Second completion invocation on after namespace suggests all classes and lead to incorrect code
  • WI-32121 — PHPUnit version is not detected correctly for remote interpreters
  • WI-32132 — PhpStorm fails to run BEHAT tests using PHP 5.3
  • WI-32144 — Const keyword is missing after visibility modifiers
  • WI-32155 — WordPress module detection does not work for WordPress 4.4.1
  • WI-32164 — SFTP: SSH_MSG_KEX_DH_GEX_REQUEST(1024

New in PhpStorm 2016.2 Build 162.1120.13 EAP (Jun 29, 2016)

  • Strict Type Inspection for PHP 7:
  • In PhpStorm 2016.2 we’ve added new strict type inspection for PHP 7. With this type hinting support we made PHP 7 support within PhpStorm even better.
  • Smart Type Code Completion:
  • Smart Type code completion filters the suggestion list and includes only those types that are applicable to the current context. You can invoke it by pressing Ctrl+Shift+Space.
  • New Inspection to validate type of return statements against PHPDoc @return:
  • Now you will be warned if a declaration of a return type in phpDoc isn’t compatible with an actual return type of a method or a function.
  • Dynamic Call to Static Method Inspection:
  • PhpStorm 2016.2 brings new inspection for calling static method in a dynamic manner (via -> instead of ::).
  • Possibility to filter out static methods from $this-> completion:
  • PhpStorm 2016.2 won’t show static methods on the first invocation of completion for a dynamic call (via ->). Static methods will be shown only on the second invocation.
  • Getters and setters generation use PHP 7 capabilities:
  • If language level is set to PHP 7 or higher PhpStorm will generate getters and setters with return type and scalar parameter type hint.

New in PhpStorm 2016.2 Build 162.1024.10 EAP (Jun 22, 2016)

  • Unification of @throws generation and inspection:
  • Significant improvements were made in unification of @throws generation and inspection. Now you have one unified setting which control both generation as well as inspection for @throws tag. So you won’t have a discrepancy between code generation and inspection anymore. Settings can be adjusted in Settings-> Code Style -> PHP -> PHPDoc -> @throws Tag Analysis.
  • New option to analyse more than 1 call level for @throws generation and inspection:
  • In PhpStorm 2016.2 you will find a new option to analyse more than one call level for throws generation and inspection. The option can be found in Settings-> Code Style -> PHP -> PHPDoc -> @throw Tag Analysis. Please note that changing the option to the level higher than 1 may affect a performance of PhpStorm in complex projects.
  • Improvements in unused use inspection:
  • In PhpStorm 2016.2 we have completely reworked inspection of unused imports that includes now support of namespaces, functions and constants as well as other major changes.
  • Support of namespaces in UML Diagrams:
  • In PhpStorm 2016.2 namespaces are now supported in UML Diagrams. If you create a diagram with a class from one namespace and add another class with the same name but from a different namespace you will see both classes in this diagram.
  • Fixed issues:
  • WI-22979 — Joomla support - feature request
  • WI-11805 — Code inspection fails to report missing @throws annotations when nesting method calls
  • WI-31102 — PhpStorm Advanced Metadata for global factory functions called from within namespace doesn't work since version 2016.1
  • WI-941 — Add throw to method phpdoc if method call function which throws exception and method doesn't catch it.
  • WI-30092 — expected, unexpected error in php files named *.json.php
  • WI-12046 — Diagrams are ignoring namespaces
  • WI-22774 — Missing @throws tag: doesn't analyze PHPDoc for defined exception
  • WI-31667 — PhpStorm Advanced Metadata does not work on locally scoped variables
  • WI-27459 — Unused import: support functions and constants
  • WI-25024 — If "Analyze immediate calls" is off, PHPStorm should not auto-generate throws using "Recursive exception scan"
  • WI-15377 — Unused import: support namespaces import
  • WI-32220 — Return call tree analysis depth to initial value instead of 1 on selection of No in Performance Note
  • WI-32213 — Use statement is marked as unused if there is multiresolve and usage is inside PHPDoc
  • WI-32191 — Joomla Jtext::sprintf support
  • WI-32185 — Usage of 'class_exists' should not be considered as an import usage
  • WI-32174 — Use statements is not detected in PHPDoc annotations with PHP Annotation plugin
  • WI-32173 — Class use is marked as unused if there is a namespace with the same name
  • WI-32171 — Use statement mark as unused if class name case in use doesn't equal class name in declaration
  • WI-32170 — Namespace is marked as unused if it's used as partial import
  • WI-32169 — Exception is thrown on attempt to extend selection for unclosed namespace statement
  • WI-32155 — WordPress module detection does not work for WordPress 4.4.1
  • WI-32144 — Const keyword is missing after visibility modifiers
  • WI-32132 — PhpStorm fails to run BEHAT tests using PHP 5.3
  • WI-32129 — Remove ability to generate @type tag
  • WI-32113 — Move configuration of "Missing @throws tag(s)" to Code Style
  • WI-31872 — Keep last Wordpress installation as a setting
  • WI-31768 — Imported constant (alias) is resolved ignoring case sensitivity
  • WI-31767 — key exchange algorithm not honored

New in PhpStorm 2016.2 Build 162.917.12 EAP (Jun 16, 2016)

  • INITIAL SUPPORT FOR PHP 7.1:
  • The great news is we’ve added initial support for PHP 7.1! Now it supports visibility modifiers for class constants (WI-30762), keys in the list() construct (WI-30730), null return types and nullable arguments (WI-32002), and multiple catch exceptions (WI-32150).
  • This a first but important step towards supporting PHP 7.1. Parsing for PHP 7.1 works already, while we’re still working on refactorings, code inspections, and more (please see the related issues).
  • ON DEMAND LOAD OF DEBUG EXTENSION FOR CLI CONFIGURATIONS:
  • In PhpStorm 2016.2 you can load a Debug Extension for CLI on demand, e.g. when Debugger/Code coverage is required. This dramatically increases execution speed, by a factor of 2 to 3.
  • To take advantage of this feature, delete the path to debugger extension from CLI php.ini (just click Open in Editor in the Interpreter Settings dialog). Then specify this path in the Debugger Extension field within Interpreters setting. It’s implemented in such a way that when you use the Debugger extension option, -dzend_extension= is added for PHP when PHP CLI Debug is run and PHPUnit Coverage is configured.
  • TYPE INFERENCE: EXTEND TYPE INFERENCE OF ALREADY INFERRED VARIABLES:
  • When a type is already inferred, e.g. from a @var tag, it can now be extended by further inferences, e.g. by an instanceof condition.
  • TEMPLATE PROJECTS:
  • In PhpStorm 2016.2, you can save any project as a template and create a new one based on it. In the Tools menu you will find a new action, Save Project as Template. As soon as it’s saved, the Template is available as as user-defined template in the New Project window.
  • BUNDLED NODE.JS, ANGULARJS AND MARKDOWN PLUGINS:
  • PhpStorm now has Node.js, AngularJS and Markdown plugins bundled, meaning that you don’t have to search for the them in the repository anymore. Simply use them right off the bat.
  • FIXED ISSUES:
  • WI-15958 — Type inference: extend type inference of already inferred variables
  • WI-30762 — Support PHP 7.1 class constant visibility modifiers
  • WI-18933 — Dropdown menu "Absolute path on server" in Settings/PHP/Servers is unreadable when selected
  • WI-32002 — PHP 7.1 will have support for null return types and nullable arguments
  • WI-30730 — Support for keys in the list() construct in PHP 7.1
  • WI-28571 — Load XDebug extension on demand for CLI debug configurations
  • WI-32150 — Support multiple catch exceptions
  • WI-32121 — PHPUnit version is not detected correctly for remote interpreters
  • WI-31970 — Blade syntax highlighting is not visible in Settings preview
  • WI-31621 — Integrate template projects into PhpStorm
  • WI-27741 — Run PHPinfo with configuration options of selected PHP interpreter
  • FULL REALEASE NOTES:
  • PHP debug:
  • Feature: WI-28571: Load XDebug extension on demand for CLI debug configurations
  • Usability: WI-27741: Run PHPinfo with configuration options of selected PHP interpreter
  • Usability: WI-18933: Dropdown menu "Absolute path on server" in Settings/PHP/Servers is unreadable when selected
  • PHP lang:
  • Feature: WI-30762: Support PHP 7.1 class constant visibility modifiers
  • Feature: WI-32002: PHP 7.1 will have support for null return types and nullable arguments
  • Feature: WI-15958: Type inference: extend type inference of already inferred variables
  • PHP templates:
  • Bug: WI-31970: Blade syntax highlighting is not visible in Settings preview
  • PHP test:
  • Bug: WI-32121: PHPUnit version is not detected correctly for remote interpreters
  • PS specific:
  • Feature: WI-31621: Integrate template projects into PhpStorm
  • Usability: WI-32048: Template project: reuse Line Separator from Default settings
  • No subsystem:
  • Bug: IDEA-157371: Error updating com.intellij.openapi.editor.ex.util.LexerEditorHighlighter
  • Code Navigation:
  • Bug: IDEA-156984: Deadlock in inheritor search
  • Compiling Project:
  • Bug: IDEA-157216: External build may fail with 'Unable to create temporary file'
  • Editor. Editing Text:
  • Performance: IDEA-157087: Issue with Xml with Ligature
  • Usability: IDEA-156758: Disable non project files writing protection, when file is opened explicitly
  • Find, Replace, Find Usages:
  • Bug: IDEA-157351: Replace in Path: When next file is opening, code editor is blank (hangs) with "Loading" spinner
  • Bug: IDEA-156921: Find In Path toolwindow - focus is stolen by "Preview Occurrences" editor
  • Usability: IDEA-61493: Find Usages: Separate "Use soft wraps" option for the preview panel
  • User Interface:
  • Feature: IDEA-117223: Custom background image/colour for each project
  • Bug: IDEA-157035: Editor in separate window does not adopt background image
  • Usability: IDEA-157246: Background image: improve UX of removing the background
  • Version Control. Mercurial:
  • Bug: IDEA-157085: Mercurial: change even one line forces to mark all content fo file as new, until force refresh in "Version Control" tab
  • JavaScript:
  • Bug: WEB-14576: Ignore React JS Lifecycle components/properties in JSX files
  • JavaScript. Formatter:
  • Bug: WEB-21972: Indentation problems with JavaScript
  • TypeScript:
  • Feature: WEB-8658: That TypeScript .d.ts files were folded like .js and .js.map below .ts files in the Project view
  • Bug: WEB-21755: Re-exported type is not resolved

New in PhpStorm 2016.2 Build 162.646.18 EAP (Jun 9, 2016)

  • SUPPORT TYPE HINTING FOR IMPLEMENTATION OF ITERATORAGGREGATE/ITERATOR:
  • Type hinting for Iterator and IteratorAggregate (and their implementors) is now supported in PhpStorm. Support also includes the cases when implementors of IteratorAggregate returns array and possibility to iterate over \Traversable class.
  • IMPROVED GIT/MERCURIAL LOG VIEWER:
  • This PhpStorm EAP build brings improvements to the Git/Mercurial Log viewer thanks to our colleagues from the IntelliJ. The Log viewer now loads in the background on every change, such as commit, fetch, rebase, thus it’s always ready when you open it.
  • The way the loading progress is shown was changed too. Now, when refreshing, there’s athin stripe shown under the toolbar.
  • FIXED ISSUES:
  • WI-679 — Type inference: Support type hinting for implementors of Iterator / IteratorAggregate
  • WI-32045 — Type inference: Support type hinting for implementors of IteratorAggregate that returns array
  • WI-20533 — PHPDoc blocks are not properly generated (omitted @throws tag and extra "@throws Exception")
  • WI-31505 — PHPStorm incorrectly uses ArrayAccess's offsetGet to determine types for iteration
  • WI-18972 — Type inference: Support type hinting for iteration over implementors of Traversable
  • WI-32048 — Template project: reuse Line Separator from Default settings
  • WI-32017 — Second completion invocation on after namespace suggests all classes and lead to incorrect code
  • WI-32007 — Don't show class members after global keyword
  • WI-31974 — Rename folder wrong change reference
  • WI-30769 — Re-running large number of failed unit tests failed with: preg_match(): Compilation failed: regular expression is too large
  • WI-27741 — Run PHPinfo with configuration options of selected PHP interpreter
  • FULL RELEASE NOTES:
  • PHP Completion:
  • Feature: WI-31426: Manually invoke type-matching autocomplete list for function/method parameters
  • Bug: WI-31799: Implementing interface with return typehint doesn't import the namespace
  • Bug: WI-31995: 'namespace' operator is not suggested as a part of FQN
  • Bug: WI-31643: Completion doesn't insert parentheses for exceptions in throw
  • Bug: WI-32007: Don't show class members after global keyword
  • Bug: WI-31997: List of completion after 'namespace' operator when it's a part of FQN contains all types of elements that are not applicable
  • Bug: WI-32017: Second completion invocation on after namespace suggests all classes and lead to incorrect code
  • Usability: WI-31980: Disable completion of keywords after integers without space
  • Usability: WI-31375: Implement an option to disable function parameters completion
  • Usability: WI-3195: PHP: code completion in a global declaration inside a function could suggest global variables
  • PHP lang:
  • Feature: WI-32045: Type inference: Support type hinting for implementors of IteratorAggregate that returns array
  • Feature: WI-18972: Type inference: Support type hinting for iteration over implementors of Traversable
  • Feature: WI-679: Type inference: Support type hinting for implementors of Iterator / IteratorAggregate
  • Bug: WI-20533: PHPDoc blocks are not properly generated (omitted @throws tag and extra "@throws Exception")
  • Bug: WI-31841: Don't filter out Exception if other type is not a Throwable
  • Bug: WI-31505: PHPStorm incorrectly uses ArrayAccess's offsetGet to determine types for iteration
  • PHP test:
  • Bug: WI-30769: Re-running large number of failed unit tests failed with: preg_match(): Compilation failed: regular expression is too large
  • PS specific:
  • Performance: WI-31893: Template project: provide progress indicator for creating a new project
  • Usability: WI-31979: Template project: improve failure report usability
  • Plugin: htaccess:
  • Bug: WI-31974: Rename folder wrong change reference
  • No subsystem:
  • Bug: IDEA-143263: Find In Path is not autopopulating a selection from Find Preview window
  • Bug: IDEA-146153: Text label disappears when click on it
  • Bug: IDEA-156970: No classpath jar in command line on dynamic.classpath=true when too many files in tmp on Windows
  • Exception: IDEA-156293: NPE at com.intellij.ui.mac.MacGestureSupportForEditor$1.pressure
  • Exception: IDEA-156917: Throwable at com.intellij.openapi.application.TransactionGuardImpl.submitTransactionAndWait
  • Exception: IDEA-156466: AE at com.intellij.diagnostic.IdeMessagePanel.showErrorNotification
  • CSS:
  • Exception: IDEA-154246: Throwable at com.intellij.psi.css.impl.stubs.index.CssIndexUtil.processKeysInScope
  • Code Analysis. Inspection:
  • Bug: IDEA-157046: 'Unused declaration' inspection shows '1 instantiation found' for constructor of not used class
  • Bug: IDEA-157020: HTML export of inspection results - Unused declaration inspection always has only one Problem resolution item
  • Bug: IDEA-157014: XML offline inspection result - empty node for 'no longer valid' item
  • Bug: IDEA-157140: 'Inspection tool window' counter limited to 1 after rerun when grouping by directory enabled.
  • Bug: IDEA-157154: Throwable - 'No longer valid' nodes after export/import inspection results.
  • Bug: IDEA-156164: Inspection result toolwindow tree - exclude in one node also removes in another
  • Bug: IDEA-157007: XML offline inspection results are not sorted in alphabetical order
  • Usability: IDEA-156894: 'Inspection tool window' - preview scrolls to the beginning of the file after Excluding result
  • Exception: IDEA-155839: java.lang.IllegalArgumentException: Argument for @NotNull parameter 'parentNode' must not be null
  • Exception: IDEA-156891: Wrong offset: 13101. Should be in range: [0, 11760] - canceling inspection
  • Code Navigation:
  • Bug: IDEA-156984: Deadlock in inheritor search
  • Editor. Editing Text:
  • Bug: IDEA-156530: Trailing whitespace being stripped only from the file which editor tab is active
  • Find, Replace, Find Usages:
  • Exception: IDEA-149100: Crash with ConcurrentModificationException
  • IDE Configuration:
  • Bug: IDEA-149309: Set "-XX:HeapDumpPath" and "-XX:ErrorFile" in IDE launchers (was: Make process run in ${idea.system.path})
  • Indices:
  • Bug: IDEA-156849: Modal indexing
  • Packaging and Installation:
  • Bug: IDEA-156503: Can't update PhpStorm
  • Task Management:
  • Bug: IDEA-130279: sporadically missing actions/buttons in "Time Tracking" tool window
  • Template Languages. Velocity:
  • Feature: IDEA-152774: Need #capitalizeAndUnderscore method available for getter/setter templates or a way to extend the StringUtils class in use
  • User Interface:
  • Bug: IDEA-156745: Control mouse wheel shortcut works together with scrolling
  • Bug: IDEA-138256: High DPI monitor issue: New repository location dialog for SVN is cut off
  • Bug: IDEA-156959: Scrollbar in Log is not visible when scrolling
  • Performance: IDEA-156869: HintManagerImpl#myLastEditor leaks project
  • User Interface.Accessibility:
  • Bug: IDEA-156235: apply changes from AndroidStudio (2)
  • Bug: IDEA-156956: GithubLoginPanel doesn't allow to traverse focus to dialog buttons
  • Version Control:
  • Bug: IDEA-127833: Non-project file writing access could be bypassed by some VCS actions
  • XSLT:
  • Bug: IDEA-155079: Inspections build is hanging on TeamCity agent
  • No subsystem:
  • Bug: WEB-21928: JavaScript file that includes nothing but 'export' statements is recognized as minified (generated)
  • CoffeeScript:
  • Bug: WEB-21854: Opening coffee file throws exception
  • File Watchers:
  • Bug: WEB-17949: .es6 Babel file watcher watches incorrect files by default
  • JavaScript:
  • Bug: WEB-21560: "Replace with Template String" fails if original contains a backtick
  • Bug: WEB-21773: Inline type information in function parameters is not found when param. destructuring is used
  • JavaScript. Inspections:
  • Bug: WEB-21054: JavaScript useless warning Variable might not have been initialized
  • Bug: WEB-21903: 'Cannot resolve symbol' exported import es6
  • Bug: WEB-21878: Erroneous "type mismatch" inspection warnings when using arrow functions and promises
  • JavaScript. Refactoring:
  • Bug: WEB-16440: "Redundant variable" warning and "Inline variable" refactoring don't work on a destructuring variable declaration
  • Bug: WEB-21419: ES6: Intentions: add support inside HTML script tag and inside JS injections
  • Node.js:
  • Bug: WEB-21914: angular-cli: Cannot find angular-cli package
  • TypeScript:
  • Bug: WEB-21860: Good Code Red: @ngrx/db import
  • Docker:
  • Usability: PY-18674: Docker Compose: Service name may be chosen in select field

New in PhpStorm 2016.1.2 Build 145.1616 (Jun 2, 2016)

  • PHP Completion:
  • Usability - WI-31375 - Implement an option to disable function parameters completion
  • PHP test:
  • Performance - WI-31677 - IntelliJ uses a lot of CPU during editing and freezes when running an application with a lot of output
  • Plugin: Drupal support:
  • Usability - WI-24532 - Keep last Drupal installation as a setting
  • No subsystem:
  • Bug - IDEA-152472 - Editor looses focus on entering Distraction Free or Presentatipn Modes
  • Bug - IDEA-143263 - Find In Path is not autopopulating a selection from Find Preview window
  • Exception - IDEA-148715 - ClassCastException on creating new project
  • Find, Replace, Find Usages:
  • Feature - IDEA-150915 - Find in Path Dialog: Preview tab does allow F4 to jump to source when focus in code preview pane (lower half)
  • Bug - IDEA-153014 - Slow delete performance for results of Find in Path
  • Bug - IDEA-154525 - "Find in path"-Action // Previous searches popdown conflicts with live preview
  • Bug - IDEA-154342 - Find Usages: Editor preview should not animate scrolling to the selected line for newly opened file
  • Bug - IDEA-151531 - Amount of matches reported in search bar doesn't correspond to reality
  • IDE Configuration:
  • Bug - IDEA-152606 - IDEA fails on startup if one of plugins required for ruby or python plugin cannot be loaded
  • Bug - IDEA-155871 - Page 'http://localhost:63342/m?jar/resources/inherit.gif' requested without authorization popups
  • Packaging and Installation:
  • Bug - IDEA-156078 - "Open recent project" from Windows taskbar does nothing
  • Task Management:
  • Bug - IDEA-147006 - Task Manager - Youtrack Server - Wrong values for "update issue state"
  • User Interface:
  • Bug - IDEA-156246 - About font on Windows is hardcoded to Tahoma, doesn't support some glyphs (Chinese)
  • Bug - IDEA-153827 - Log tool window loses focus by TAB.
  • Bug - IDEA-152525 - IDE loses focus after closing toolwindow with a `Alt+[0-9]` shortcut
  • Usability - IDEA-156077 - Empty space instead of CLion app icon when minimize Welcome screen
  • Version Control. Git:
  • Bug - IDEA-153870 - Git throws exception on commit if a submodule is not registered in the Settings (even if trying to commit a file from the main repository)
  • Bug - IDEA-101222 - Non-Ascii name of Git branch is displayed incorrectly
  • Version Control. Subversion:
  • Bug - IDEA-153710 - Window drive root problem: names truncated in Version Control view
  • No subsystem:
  • Bug - WEB-21235 - Should be possible to attach .jsx files to JavaScript library
  • Build tools:
  • Feature - WEB-18917 - Grunt: make file paths clickable in Grunt console when using 'grunt-concurrent' task
  • Bug - WEB-20220 - babel syntax error source references do not get resolved as links to source
  • Bug - WEB-18416 - npm scripts/Gulp/Grunt: cannot add new file via popup with mouse
  • Bug - WEB-20560 - run gulp/grunt/npm task popup does not dissapear if applciation loses focus
  • Bug - WEB-21246 - "Cyclic scrolling in list" option doesn't save value if Settings dialog was opened over the opened Grunt/Gulp/npm popup
  • Bug - WEB-20472 - Gulp Settings menu closes when trying to open the Node interpreter dropdown menu
  • Debugger:
  • Bug - WEB-19583 - Node.js debugging: properties with numeric names are not displayed in the debugger variables
  • JavaScript:
  • Bug - WEB-21037 - Javascript code highlighting of Local and Global Variables overrides more specific highlighting
  • Bug - WEB-21191 - "Insert import statement" inserts import statement locally in jsx components
  • JavaScript. Inspections:
  • Feature - WEB-20744 - ESLint: recognize configuration file in all supported file formats
  • Bug - WEB-20613 - 'Run Inspection by name' doesn't found ESLint
  • Bug - WEB-21151 - JSCS Fix doesn't work for .jsx file
  • Bug - WEB-21387 - ESLint configuration: auto detect config files with JS/YAML/YML extensions
  • Node.js:
  • Feature - WEB-20706 - NPM script runner - optimize for 'test' keyword
  • Bug - WEB-21448 - A core node.js module is unknown to WS?
  • Bug - WEB-21558 - Node not found, "npm install" fails
  • Bug - WEB-21363 - Please specify npm package
  • TypeScript:
  • Bug - WEB-21528 - Good Code Red - angular-cli importing index.ts pattern
  • Bug - WEB-21612 - Chrome not loading ts files after security update
  • Bug - WEB-21013 - Typecript error "Element is not exported"
  • Bug - WEB-20872 - Stop appending .ts extension to paths altered during move refactoring in Typescript projects
  • Bug - WEB-21331 - Ws generates wrong code for constructor
  • Docker:
  • Bug - PY-19019 - Support overriding configuration with docker-compose.override.yml
  • Bug - PY-19115 - Always create Docker image and container with PyCharm helpers

New in PhpStorm 2016.2 Build 162.426.10 EAP (Jun 2, 2016)

  • PHP Completion:
  • Feature - WI-22487 - add argument naming suggestion without "Interface" suffix
  • Bug - WI-31620 - Completion list contains closing control structures
  • Bug - WI-29705 - Completion after a function's parameter type
  • Bug - WI-31147 - Invalid intention\autocomplete in function args
  • Usability - WI-31682 - Filter everything but exceptions (\Throwable) after @throws
  • PHP Inspections:
  • Feature - WI-28549 - Do not show warning for unused parameters in anonymous functions
  • Bug - WI-28627 - Unresolved include: doesn't interpolate values of class constants
  • PHP debug:
  • Usability - WI-30394 - Project interpreter: default interpreter is changed to application level one during the name collision resolve
  • PHP lang:
  • Feature - WI-28970 - Make parameter based type provider (Factory advanced metadata) work with constants as argument
  • Feature - WI-31357 - Show values of class constants in a completion list
  • Feature - WI-19377 - Make element access for array property Write Access
  • Bug - WI-30055 - only first property in list() keyword will be interpreted as write access
  • Usability - WI-31617 - PHPDoc generation adds unhelpful @throws null if type of throwable is Exception|null (and validator insists on it)
  • Plugin: Deployment _ FTP..:
  • Bug - WI-17655 - Remote Host locks up editor when trying to connecting to FTP
  • Bug - WI-31646 - Lock in connection creation
  • Bug - WI-31518 - Broken node refresh in Remote Host
  • No subsystem:
  • Bug - IDEA-152628 - shift-F1 displays two URL
  • Bug - IDEA-155297 - Inconsistent Launchpad Icon on Non-retina Display
  • Database:
  • Bug - IDEA-149374 - Import Database Schema from Oracle datasource can not detect varchar2 data type
  • Usability - IDEA-146810 - When you attach an previously-never-attached file to a console the console chooser shows lazily
  • Debugger:
  • Usability - IDEA-121775 - XDebugger: merge Watches and Variables in one view
  • Docker:
  • Bug - IDEA-146876 - Docker: code style for Dockerfile
  • Bug - IDEA-146347 - Docker Plugin fails to attach to container running on server bound to unix socket
  • Bug - IDEA-154429 - Docker Compose: start/stop action for services
  • Bug - IDEA-155691 - Docker: attach fails for remote Docker with insecured HTTP access
  • Bug - IDEA-153414 - Docker-compose Redeploy should rebuild before deploying
  • Bug - IDEA-154430 - Docker Compose: scale action for services
  • Bug - IDEA-150970 - Docker: edit container settings in the Docker view
  • Editor. Editing Text:
  • Feature - IDEA-152792 - Force reformat code for empty line when uncommenting several commented lines
  • Bug - IDEA-151783 - Copying and pasting "\0" does not work
  • Bug - IDEA-154663 - column selection mode error
  • Bug - IDEA-151101 - Double-clicking a word following an escape sequence (e.g. \t) includes the escape sequence letter in the selection
  • Indices:
  • Bug - IDEA-145785 - ArrayIndexOutOfBoundsException when requesting index stubs
  • JavaScript. Debugger:
  • Bug - IDEA-151992 - Debug watches for functions in Nashorn does not work
  • Run | Debug configuration:
  • Bug - IDEA-155610 - ModuleBasedConfiguration.createInstance() may produce wrong custom 'cloning'
  • SQL:
  • Bug - IDEA-152649 - nextval syntax for DB2 not supported
  • Cosmetics - IDEA-153121 - Input field 'Name' not high enough under tab Advanced of Database source
  • User Interface:
  • Bug - IDEA-125027 - File name displays with folder in the Editor tab for controller's views
  • Usability - IDEA-149590 - Open File dialog should display icons for registered directory types (e.g. bundles on OS X)
  • Cosmetics - IDEA-154631 - wrong directory's icon
  • Version Control:
  • Bug - IDEA-142061 - Applying patch deletes blank lines
  • Bug - IDEA-153138 - "Unshelve..." does not work properly when several files with the same name exist in the project
  • Version Control. Perforce:
  • Bug - IDEA-153867 - Perforce Job selection window cannot be resized
  • No subsystem:
  • Task - DBE-2657 - DataGrip should ask user if they want to associate *.sql files with DataGrip
  • DB Introspection:
  • Bug - DBE-2485 - Database-Window: OR-ing object filters does not work in datasource properties
  • DB Refactoring:
  • Bug - DBE-2535 - Add/Update rows with xml columns datatype
  • Data Viewer:
  • Feature - DBE-2604 - Unable to edit column with int4range (and potentially all range types) postgresql data type.
  • Feature - DBE-2565 - When copying rows as INSERT provide an option to include/exclude table autogenerated id
  • Feature - DBE-2586 - Change column widths with keyboard
  • Bug - DBE-273 - Sorting results grid with row selected causes horizontal scroll position to change
  • Bug - DBE-1955 - PostgreSQL: Table Editor: can't delete a row with not null timetz value
  • Bug - DBE-1956 - PostgreSQL: Table Editor: can't insert timetz and timestamptz values from Table Editor
  • Bug - DBE-2526 - copy as SQL syntax for postgres date ranges are wrong
  • Bug - DBE-2060 - Database > Table editor highlights wrong column after column position was changed
  • Usability - DBE-1119 - Table Editor: unexpected cells are highlighted after showing hidden columns
  • Usability - DBE-897 - PostgreSQL: allow setting 'infinity' and '-infinity' for DATE and TIMESTAMP columns
  • SQL Editing:
  • Bug - DBE-2534 - Surround With not exposing sql functions
  • No subsystem:
  • Feature - WEB-15190 - Ignore validity of library code
  • Bug - WEB-20986 - JSON Schema Files that are updated require a close and relauch to be used
  • Build tools:
  • Feature - WEB-16538 - Grunt option flag support
  • CoffeeScript:
  • Bug - WEB-16810 - Automatically defined variables triggering "Unresolved variable or type"
  • Bug - WEB-20734 - PyCharm does not navigate to CoffeeScript classes
  • Bug - WEB-15681 - CoffeeScript: Red code: escaped backtick inside inline JavaScript
  • Bug - WEB-15658 - CoffeeScript: Red code: range comprehension with step
  • Debugger:
  • Bug - WEB-20627 - Stepping: 'Step into' library file when 'Do not step into library files' is chosen
  • Bug - WEB-12844 - Debugger does not correctly interpret TypedArrays
  • Bug - WEB-21574 - FireFox: some breakpoints are skipped
  • Bug - WEB-19117 - Debugger is extremely slow to start w/ Node.js 5.0.0
  • Bug - WEB-20394 - JavaScript Debugger stepping out of library files
  • Bug - WEB-21447 - Attached files (.css, .js) are not served by built-in webserver
  • Bug - WEB-14454 - Breakpoints not hit when using inline sourcemaps produced by browserify
  • Bug - WEB-20543 - TypeError in Function scopes
  • Bug - WEB-20542 - TypeError when try to show array in 'Variables'
  • Exception - WEB-20546 - 'Step into' open temporary file in case of using sourcemaps (typescript)
  • HTML:
  • Feature - WEB-20704 - Emmet: allow to configure bem separators
  • Jade:
  • Task - WEB-21353 - Rename Jade plugin to Pug and support Pug language
  • JavaScript:
  • Feature - WEB-16444 - ES6 inside inline scripts
  • Feature - WEB-20977 - Flow: provide 'before type reference colon' and 'after type reference colon' options to Code Style/Javascript/Spaces
  • Feature - WEB-17571 - ReactJS - Should not add double quotes automatically to JSX/React Node attributes
  • Bug - WEB-19766 - Dummy suggestions for `function`
  • Bug - WEB-21301 - JSDoc: Alias for ES6 class
  • Bug - WEB-21288 - goto declaration of exported item will take you to the export statement not the declaration
  • Bug - WEB-21281 - folding object error
  • Bug - WEB-21197 - JSDoc update function parameters fails
  • Bug - WEB-21493 - Autocompletes JavaScript function call incorrectly.
  • Bug - WEB-21163 - Fix doc comment
  • Bug - WEB-21161 - JSAnnotator inspection doesn't allow to lower severity.
  • Bug - WEB-20633 - JSDoc: auto generation of comment is broken if "*/" is present as string
  • Bug - WEB-21530 - JSDoc, inherited nested objects code auto-complete doesn't work for additional child properties
  • Bug - WEB-21665 - Node exports not correctly detected
  • Bug - WEB-20965 - Type inferred from destructured function parameters is wrong
  • JavaScript. Formatter:
  • Bug - WEB-9210 - Wrong indentation for inline comments for multiple var statements
  • Bug - WEB-21149 - IntelliJ adds linefeed before opening brace in `switch-case` statement
  • JavaScript. Inspections:
  • Feature - WEB-20444 - WS should report conflicts between auto-detected types and types in JSDoc
  • Bug - WEB-21731 - Invalid return and break statements
  • Bug - WEB-21568 - Excessive vertical space in JSCS config description
  • Usability - WEB-19855 - ESLint configuration: add info about package.json
  • Usability - WEB-19586 - Unnecessary warning for Possible iteration over unexpected members
  • JavaScript. Refactoring:
  • Feature - WEB-16918 - New refactorings (JS): convert to arrow function/convert to anonymous function
  • Feature - WEB-17667 - ES6: Intention to convert arrow function to shorthand arrow function
  • Bug - WEB-21420 - ES6: Intentions: "Convert to Class": invalid result when invoked on constructor or exported module
  • Node.js:
  • Bug - WEB-21685 - .iml files contain ancient references
  • Bug - WEB-21519 - No Autocompletion for JSON Array Object Properties
  • Bug - WEB-21725 - node-globals-stub is wrong for process.hrtime
  • Bug - WEB-21652 - Different variable highlighting for Node.js core modules
  • SASS:
  • Bug - WEB-21416 - SCSS: extending Attribute selector is falsely marked as invalid syntax
  • TypeScript:
  • Bug - WEB-13903 - Typescript module completion includes duplicates
  • Unit Tests:
  • Feature - WEB-21636 - electron-mocha runner
  • Feature - WEB-15907 - Add for mocha analog of the throw FileComparisonFailure in JVM tests
  • Feature - WEB-15867 - Add for nodeunit tests analog of the throw FileComparisonFailure in JVM tests
  • Bug - WEB-21683 - Failed mocha tests aren't shown as failed
  • Bug - WEB-21184 - Cucumber step definitions that uses normal string or ES6 string literals are not linked to the .feature files
  • spy-js:
  • Bug - WEB-21228 - Spy-js: "Node interpreter" field doesn't show current version or (Project) label for selected Node

New in PhpStorm 2016.1.2 Build 162.426.10 EAP (May 25, 2016)

  • THE KEY CHANGES ON THE PHP SIDE INCLUDE:
  • Better Joomla! support
  • Values of class constants are shown in completion lists
  • New option, “Do not show warning for unused parameters in anonymous functions”
  • Fixed freezes in Remote Host tab when Remote Server is unavailable
  • FROM THE PLATFORM AND WEB SIDES, THIS BUILD BRINGS:
  • Improvements in working with patches. Patches can now be applied from the clipboard or by dragging a file into the IDE. In case a file has been moved or renamed since a patch was created for it, the IDE will try to figure that out or let you manually choose the file to apply the patch to.
  • Drag images, JavaScript or CSS files into the HTML file in the editor to automatically generate img, script or tags for them.
  • The Windows installer now comes with our custom JDK build that addresses some known issues with focus and font rendering.
  • The Watches views has been merged with Variables for more convenience.
  • Commit dialog now shows unversioned files.
  • FIXED ISSUES:
  • Bug:
  • WI-31666 — Advanced Meta: support name->value lookup for namespaced constants
  • Feature:
  • WI-31683 — Provide Drupal installation path when possible when suggesting to set up integration
  • Performance Problem:
  • WI-31677 — IntelliJ uses a lot of CPU during editing and freezes when running an application with a lot of output
  • Usability Problem:
  • WI-24532 — Keep last Drupal installation as a setting

New in PhpStorm 2016.1.2 Build 145.1503.4 EAP (May 18, 2016)

  • Delivers a fix of critical issue addressing a startup crash on OS X 10.10 after PhpStorm 2016.1.1 update.
  • Other bug fixes and improvements from the PHP side are included

New in PhpStorm 2016.1.1 Build 145.969.15 EAP (Apr 22, 2016)

  • Highlights:
  • Improved completion list ordering
  • Time Tracking plugin
  • Clickable URL links
  • Other bug fixes and improvements:
  • WI-28978 — Make “Time Tracking” plugin available in PhpStorm
  • WI-31269 — IntelliJ Idea does not open PhpDoc hyper links on Ctrl + click
  • WI-17163 — Gmagick support
  • WI-28548 — URL links in comments are not clickable in the editor
  • WI-31375 — Implement an option to disable function parameters completion
  • WI-17682 — Static keyword isn't allowed for parameter type
  • WI-21227 — ReflectionMethod::__construct does not require second argument
  • WI-31345 — Suggestion on type-hinting/code completion for namespaced PHP classes
  • WI-28731 — PHPUnit by HTTP: First test is missing in result tab
  • WI-27874 — Autocomplete priority based on variable name
  • WI-31554 — Function keyword is missing in return and yield statements
  • WI-31532 — List of completion after 'return' contains keywords that are not applicable
  • WI-31490 — Keywords are suggested in a namespace context
  • WI-31486 — Anonymous function is suggested as a class field in some cases
  • WI-31472 — Variable $int as a function parameter inserted improperly
  • WI-31399 — Anonymous function is suggested inside a string in some cases
  • WI-31374 — Forbid to invoke rename refactoring on links
  • WI-31373 — Inline link inside @link is not clickable
  • WI-31367 — Completion shows list of logical operators after entering scalar value
  • WI-31364 — PHPUnit - Locks up if XDebug is enabled in php.ini
  • WI-30752 — MongoDb driver stub bsonUnserialize mismatch on paramter
  • WI-30478 — Imagick::getImageMimeType() result is string, not void
  • WI-30012 — Improve auto-completion for contexts with known types
  • WI-29049 — Stub for SplObjectStorage methods is wrong

New in PhpStorm 2016.1.1 Build 145.844.5 EAP (Apr 6, 2016)

  • The most important changes from PHP side include:
  • Smart completion of function arguments
  • Joomla! initial support
  • Deployment supports Overwrite/Merge/Skip All for merge conflicts
  • Completion shows values for constants and namespace for functions
  • New Blade tags support
  • and many other bug fixes and improvements.
  • PHP Completion:
  • Feature WI-31092: Auto-Complete Associative Array Names
  • Feature WI-24156: improve automcomplete for functions and methods by intelligently filling in function arguments
  • Feature WI-11138: Force the ide to autocomplete private members in required/included files
  • Feature WI-12694: Support concatenated constant names in code completion
  • Bug WI-31274: Concatenated constants with numbers are not supported
  • Bug WI-31276: Namespace keyword is missing in global context
  • Bug WI-31273: Completion list in echo statement misses logical operators
  • Bug WI-21730: Completion: Functions and constants with the same name and in different namespaces are treated as single item
  • Bug WI-17513: No code completion in "use" statement for closures and reference
  • Bug WI-22064: Constants defined by a silent statement are not added to completion
  • Bug WI-13960: Contants defined as shorhand in External Libraries are not available in the autocomplete
  • Usability WI-31180: Filter everything except variables in use statement for closures
  • Usability WI-31187: Don't propagate default parameters to function completion
  • Usability WI-27145: Function keyword is not completed/suggested when writing function callback (closure)
  • Usability WI-31209: Disable namespace information for methods in completion list
  • Usability WI-31145: Missing docs in generated getters and setters
  • PHP Inspections:
  • Bug WI-27026: phpmd file mapping gets confused by multiple files with same name
  • PHP Refactoring:
  • Bug WI-30630: Inplace rename: doesn't work for field if caret is placed after field name
  • Bug WI-31039: Group use by selected prefix breaks code in case of import from global namespace
  • Bug WI-31022: Group use statement by selected prefix remove all use statement if invoked on a partial import
  • Exception WI-31182: Invoke extract field: throws exception on invocation inside define statement
  • PHP debug:
  • Bug WI-29441: PHP and Xdebug version are not detected in Default settings
  • Usability WI-30649: Duplicate "Break at first line in PHP script" in PHP Debug settings
  • Exception WI-31178: NPE is thrown on attempt to open configuration file for remote interpreter in Default project
  • PHP lang:
  • Feature WI-1717: Completion can display values of Constants
  • Bug WI-30361: Auto-Import imports scalar types from other namespace
  • Bug WI-31212: Some concatenation of __NAMESPACE__ constant with CONST_NAME are not recognized
  • Bug WI-30353: Docblocks for generated getters do not respect "use fully-qualified class names" option
  • Bug WI-29201: Type Inference: Type of object is lost if there is is_callable statement
  • Bug WI-2044: Define parsing/PSI breaks lot of functionality
  • Bug WI-7847: PhpStorm does not understand constants defined in namespace
  • Exception WI-31210: NPE is thrown on attempt to concatenate constant name in define statement
  • PHP templates:
  • Feature WI-31024: Support new Blade Tags in Laravel 5.2.23
  • Bug WI-31070: Blade: integrate @can, @endcan, @cannot, @endcannot with @else in control flow inspection and formatting
  • Bug WI-31068: Blade: proper injection between parameterless @php and @endphp
  • Bug WI-31196: Blade: wrong formatting with html comments
  • Bug WI-31050: Laravel Blade @stack @push @endpush tags are not supported
  • Plugin: Deployment _ FTP:
  • Bug WI-15606: SFTP: some servers do not support id command
  • Usability WI-4825: FTP deployment: Warn when uploading over newer file: provide ability to apply Overwrite/Merge/Skip command to all conflicting files
  • Plugin: Drupal support:
  • Usability WI-31153: Drupal integration for Drupal 8 doesn't add /vendor PHP include as it should
  • No subsystem:
  • Bug IDEA-153364: Warning 'Cannot modify read-only scheme' when no one setting is changed
  • Exception: IDEA-153534: AE at com.intellij.openapi.editor.impl.view.EditorSizeManager.reset(EditorSizeManager.java:293)
  • Code Analysis. Inspection:
  • Bug IDEA-153571: "Run inspection by name" ignores file name filter
  • Editor. Editing Text:
  • Bug IDEA-153586: Backspace setting gets overwritten with every release
  • Bug: IDEA-152736: IntelliJ IDEA refuses to print with no space between cast (unchecked cast)
  • Usability: IDEA-126952: Scratches should have an extension
  • Find, Replace, Find Usages:
  • Feature IDEA-152756: Add Quick Search ("Search for:") in "Find in path" > "Preview"
  • Bug: IDEA-151531: Amount of matches reported in search bar doesn't correspond to reality
  • Terminal:
  • Bug IDEA-152291: ALT , CTRL characters in terminal window can not type on MAC
  • Usability: IDEA-135527: Start SSH Session Dialog with weird sorting
  • User Interface:
  • Bug IDEA-70943: Tooltip animations and buggy visibility are exceedingly frustrating
  • Bug: IDEA-152939: deadlock on 16 EAP 144.2925.2 startup
  • Version Control:
  • Bug IDEA-153272: Files are lost during the movement of unversioned files to overwrite existing files with same names
  • Bug: IDEA-153453: Copying file inside project doesn't refresh the status of the new file
  • Usability: IDEA-114505: Changes tool window forgets preview toggle and has no file selected by default
  • Usability: IDEA-153759: Commit dialog doesn't remember "Disable editing" toggle state
  • Version Control. Git:
  • Bug IDEA-153464: Weird character ([) in commit warning box
  • Bug: IDEA-152902: Git4Idea doesn't work on windows if home directory contains whitespaces
  • Version Control. Log:
  • Bug IDEA-148029: "go to branch" goes to wrong branch with the same prefix
  • Version Control. Mercurial:
  • Bug IDEA-153523: 2016.1 does not detect external changes in the VCS repository
  • Bug: IDEA-153603: Show Diff (Compare) doesn't work for renamed uncommitted files
  • No subsystem:
  • Bug WEB-20528: Incorrect "Generated source files should not be edited..." warning randomly appears for source files with are NOT generated
  • Bug WEB-20597: comment generation does not work with es6 default parameter value as regex
  • Bug WEB-19970 WEBStorm unexpectedly inserts lots of whitespace into string literals
  • Build tools:
  • Bug WEB-20914: Console does not detect windows-style paths in TypeScript errors
  • Bug WEB-20914: Console does not detect windows-style paths in TypeScript errors
  • Bug WEB-20110: gulp tasks should be listed in the order they are defined by default
  • CSS:
  • Bug WEB-20885: CSS/SCSS: "Unit of measure 's' is redundant" on time property for transition-duration
  • Bug WEB-21116: Unknown CSS pseudo selector ::-moz-range-progress
  • Bug WEB-21024: CSS: show *.svg images in file completion inside 'url' property
  • Cosmetics WEB-21078: CSS: correct typo ('rigth') in info tooltip
  • Dart:
  • Bug WEB-20759 WEBStorm unresponsive when html_dartium.dart is opened
  • Debugger:
  • Bug WEB-20340: JavaScript debugger doesn't show "this" reference with ES6 fat arrows
  • Bug WEB-21050: No additional tabs are opened when debugging child processes when using Node 0.10
  • Bug WEB-20997: No-breakpoints hit in typescript sources when running jest via node debug configuration
  • File Watchers:
  • Bug WEB-9946 WEBStorm hangs when a less file-watcher tries to compile malformed less code
  • Bug WEB-13459: File Watchers, SCSS: no separate .css files produced for partials if 'track only root files' is off
  • Bug WEB-20021: SCSS file watcher not working
  • Bug WEB-20970: check for related changes from File Watchers took too much time and was cancelled
  • JavaScript:
  • Feature WEB-18276: Inject 'JSX Harmony' in script tag with type="text/babel"
  • Bug WEB-20633: JSDoc: auto generation of comment is broken if "*/" is present as string
  • Bug WEB-20727: Destructurization within catch
  • Bug WEB-19187: JSDoc mixin and mixes don't allow variables/functions to be followable
  • Bug WEB-20933: Do not add .jsx file extension when completing the paths in the import statements
  • Bug WEB-20686: strange property name autocomplete behaviour
  • Bug WEB-20680: ES6 unicode code points escape sequences are not supported in strings
  • Bug WEB-20362: refactor move file & import from 'package/file'
  • Bug WEB-20494: JSDoc @see symbol autocompletion not working inside constructor function
  • Bug WEB-20651: Infinite indexing loop
  • Bug WEB-20788: Tagged template literals is not support in PHP Storm.
  • Bug WEB-20426: export default function gives "Unused function" and "Unresolved variables"
  • Bug WEB-20797: Wrong message "overrides method in Object" (again)
  • Cosmetics WEB-20602: Extra items in quick-fix list: suppress suppression
  • JavaScript. Formatter:
  • Feature WEB-19601: Opt-out new indentation rules in JavaScript
  • Bug WEB-20874: Reformat code with async and single parameter arrow function without parenthesis
  • JavaScript. Frameworks:
  • Bug WEB-21068: Angular2: don't show 'XML tag has empty body' warning for Angular directives in inline templates
  • JavaScript. Inspections:
  • Bug WEB-20534: Duplicate declaration when using computed property names with function values
  • Bug WEB-20138: ES6: reassign const variable
  • Bug WEB-20117: Redundant local variable inspection for JavaScript incorrectly identifies variable that is required.
  • Bug WEB-20664: Adding a JSDoc inline type triggers a completely unrelated and wrong inspection warning (possible misinterpretation of ES 2015 spread operator)
  • Bug WEB-20745: Regression: ES 2015 "const" and destructuring assignment cause an inspection error in the latest EAP for 2016.1
  • JavaScript. Predefs:
  • Bug WEB-20708: JSON.stringify has wrong parameter type def for replacer
  • Bug WEB-20208: Ecmascript 2016: Array.prototype.includes is unknown
  • LESS:
  • Bug WEB-20842: Code coloring for .less files phpStorm 2016.1
  • Node.js:
  • Bug WEB-20748 WEBStorm doesn't like the "sql" npm module
  • Bug WEB-20311: Remote interpreter: keyboard Escape/Enter keys should work for dialog with Error message.
  • Cosmetics WEB-21002: Typo in npm command list
  • Exception WEB-20643: Remote interpreter: NullPointerException on applying empty Vagrant configuration
  • SASS:
  • Feature WEB-21073: Copyright comment format starting with /*!
  • TypeScript:
  • Feature WEB-20984: include typescript 1.8.9
  • Bug WEB-18352: Typescript: module resolution logic wrong. Analyzer ignores `typings` entry in sud-modules `package.json` when targeting commonjs
  • Bug WEB-18835: TypeScript: Autoformatting does not put spaces after colon before type in interfaces
  • Bug WEB-20895: TypeScript: Incorrect merging for types with generics
  • Bug WEB-20625: Convert to template string intention should work in TypeScript
  • Bug WEB-20887: Typescript incorrect resolve amd imports with project modules
  • Bug WEB-20838: String literal type doesn't work with array
  • Bug WEB-20934: Properties with "readonly" name breaks code validity
  • Bug WEB-20908: File header comment block breaks indentation when using modules in TypeScript and WS2016.1
  • Bug WEB-20894: Good Code Red: TypeScript definition files
  • Bug WEB-21107: erroneous "private member is not accessible" warning in ng2 app
  • Bug WEB-20961: TypeScript: Path mappings: rootDirs should resolve relative path
  • Bug WEB-20962: TypeScript: Path mappings: recognize any baseUrl
  • Bug WEB-20865: Good Code Red RxJS in TypeScript
  • Bug WEB-20942: No completion for paths for angular2 modules
  • Performance WEB-19847 WEBStorm crashes caused by large TypeScript project when unresolved types introduced
  • No subsystem:
  • Bug PY-18693: Map help button of the Docker Registry page
  • HAML:
  • Bug RUBY-17773: haml [] parsing problem

New in PhpStorm 2016.1 Build 145.258 (Mar 18, 2016)

  • PHP Language & Editing Experience:
  • A number of serious and long-awaited improvements have been made in the PHP language support , such as improved type inference, completion, support of traits, and more. PhpStorm now also fully supports group use statements, offers the “Make Static” refactoring and provides some new handy intentions such as “Convert switch to if” and “Convert if to switch” or “Flip if/else branches”.
  • New Debugging Experience:
  • We’ve made the Zero-Configuration Debugging mode easier to discover for new users. Also, now you can debug RESTful Web Services right from a REST Client using the “XDebug for REST Client” feature.
  • Frameworks and Tools:
  • PhpStorm now provides the Keep-Alive feature for SFTP/FTP/FTPS servers and Remote Interpreters, which you have heavily demanded for the last six years! Project-level interpreters, support for of Rerun failed tests for PHPUnit/Behat, and some usability improvements for Remote Interpreters are also available.
  • Important improvements for working with top-notch web technologies, such as:
  • Improved Angular 2 support
  • Better TypeScript support
  • New features in the JavaScript debugger
  • Borrows many features and improvements from IntelliJ Platform, including:
  • Right-to-left languages support
  • Speed search (in “”Show Usages” and “Terminal”)
  • JSON schema
  • Support for Docker Machine
  • Version Control and Database tools improvements

New in PhpStorm 2016.1 Build 145.256.26 RC 1 (Mar 10, 2016)

  • Bug:
  • WI-11032 — PhpStorm removes trailing whitespaces within quoted strings
  • WI-11128 — Array element assignment on a field inside logical expression: Expression is not assignable
  • WI-14050 — Autocompletion broken when next line starts with backslash
  • WI-14611 — HEREDOC: Spaces at the end of the lines are trimmed automatically
  • WI-15505 — Import class: Insert use in a wrong place for multiple namespace with "use"s in one file
  • WI-16687 — Pull Up: doesn't warn about moving non-static method that is invoked via class reference
  • WI-17024 — Auto-completion: < ? php tag isn't the first one
  • WI-17671 — Self in trait should be treated not as a trait object
  • WI-18233 — Initialize properties: tries to use private field of parent class
  • WI-19348 — "Member has private/protected access" error for private/protected class method/field usage in trait
  • WI-19953 — Type Inference: @return static[]|static for variable assignment doesn't work
  • WI-20988 — Expected: DOC_COMMENT_END when PHPDoc is perfectly valid around sequential closing braces
  • WI-21731 — Import of namespaces is treated like a class import
  • WI-21805 — List of completion after break/continue contains all types of elements that are not applicable
  • WI-22352 — False-positive "Unused private method" notice for private method that is used in trait
  • WI-23435 — Code completion broken with static and alternative
  • WI-24631 — Returned "$this" type is incorrectly interpreted with multiple return values
  • WI-28394 — Regression: Can't resolve member when class reference is a namespaced function.
  • WI-29327 — Group use statement: 1) false positive from Undefined namespace inspection on common prefix with empty intermediate namespaces / 2) namespace import is not used for class resolve
  • WI-29329 — Move class: doesn't update group use statement correctly
  • WI-29413 — Move statement Up/Down doesn't work with group use statements
  • WI-29416 — Move method doesn't handle already imported group use statements
  • WI-29417 — Optimize import doesn't check imports from group use
  • WI-29588 — Detect host-port for incomming connection from remote server cli
  • WI-29675 — PhpStorm 10.0 "sync with" does not sync files with same filename from different directories
  • WI-29681 — Constant assignment with array expressions produces "expression is not allowed as constant value"
  • WI-29703 — 'namespace' keyword is suggested inside a function
  • WI-29715 — Group use statement: namespace of imported class is global
  • WI-29802 — Settings does not modify capitalization changes in Languages->PHP->Servers "Absolute path on the server" field
  • WI-29939 — Don't insert double colon after static, parent, self in PHPDoc for @method tag
  • WI-29947 — Rest Client: debugging doesn't work for request with cookies
  • WI-29948 — Rest Client: doesn't support built-in web server
  • WI-29951 — Function autocompletion inside trait re-definition block should not append braces
  • WI-29981 — Remote Interpreter: Deployment server is verified if Vagrant is chosen
  • WI-29997 — Remote Hosts Access: IDEA hangs trying to verify remote credentials if specified private key location is incorrect
  • WI-30060 — Usage of trait in anonymous class is shown as Error
  • WI-30148 — The autocomplete of variables insert dollar sign before => in array
  • WI-30154 — Autocomplete broken on control structures (alternative syntax) in unclosed php tag
  • WI-30285 — Autocompletion suggests function implementation for interfaces extending interfaces
  • WI-30337 — Deployment server with invalid port is saved, but not correctly displayed
  • WI-30343 — Explicit version setting for Symfony component tool
  • WI-30356 — Allow to rerun tests imported by results
  • WI-30371 — PHP stub for openssl_encrypt and openssl_decrypt
  • WI-30417 — Autocompletionf for blade echo shorthand {{ }} adds extra braces inside script tag
  • WI-30443 — PHPDoc @method annotation doesn't take into account array part of type parameter declaration
  • WI-30448 — Allow to control encoding for FTPS servers
  • WI-30460 — List of completion after unset contains all types of elements that are not applicable
  • WI-30475 — Completion list for @method doesn't contain methods of superclass and magic methods
  • WI-30481 — Updating source to a different git branch causes error, code does not update in editor
  • WI-30489 — Missing closing parenthesis for parent method completion with default array() parameter in PHPDoc
  • WI-30495 — PS EAP11 error on launch: "Low Memory Freezes Detected:It seems like there is a memory leak that causes freezes."
  • WI-30513 — Wrong deprecation warning for get_magic_quotes_gpc and get_magic_quotes_runtime functions
  • WI-30519 — error in PharHandlers does cause crash in ModuleRootManager
  • WI-30521 — Convert switch to if: drops comments and breaks code if code is on the last line
  • WI-30525 — Missing return declaration is not marked as syntax error
  • WI-30530 — Ambiguous rename file process triggered on file upload (SFTP)
  • WI-30633 — 'const' and 'function' keywords are not suggested inside a group use
  • WI-30634 — Move namespace: doesn't update group use statement correctly
  • WI-30660 — PhpStorm Advanced Metadata not working in EAP after Cache Invalidation (usual restart is required)
  • WI-30665 — Make static: prohibit refactoring of magic methods
  • WI-30674 — Make static: produce invalid code when parameter is chosen but "Add parameters as field" disabled
  • WI-30675 — Make static: show warning if there is return $this and no checkbox is selected
  • WI-30692 — Move namespace: doesn't handle group use statement for empty new namespace name
  • WI-30736 — Completion of namespaced functions and constants broken if next line starts with backslash
  • WI-30765 — Import class doesn't work inside group use statement
  • WI-30766 — Import class with group use statement when alias is needed doesn't create an actual alias during the import
  • WI-30770 — Reuse of group use statements by autoimport of class destroys import of function/constants
  • WI-30787 — No autocomplete for php functions on the right hand side of a list() equality.
  • WI-30809 — Double return type on method signature tooltip
  • WI-30881 — Key passphrase is used as a password in case key file is invalid or passphrase doesn't match it
  • WI-30924 — Autoimport doesn't work for completion of trait inside trait use block
  • WI-30936 — There is no completion for aliased trait inside trait use block
  • WI-30972 — Validation: fail to validate web server with disabled "Remote Host Access" plugin
  • WI-30991 — Smart enter: one more step is needed to get into parens
  • Cosmetics:
  • WI-30843 — Message can be more precise for missing method in interface/trait
  • Exception:
  • WI-30120 — ControlFlowException is thrown on PhpTypeInfo resolve
  • WI-30459 — Exception during analysis of a trait's use
  • WI-30531 — Exception on remote interpreters configuration without a project
  • WI-30645 — Remote Host Access: null pointer exception with copy and paste
  • WI-30726 — com.jetbrains.php.codeInsight.controlFlow.ControlFlowException: on very large method (2000+ lines of code)
  • WI-30789 — Exception is thrown on unfinished trait use statement
  • WI-30857 — NPE is thrown on attempt to create a new class from anonymous class
  • WI-30868 — InvocationTargetException on process termination
  • WI-30870 — Exception is thrown on typing unexisting method inside trait use statement
  • WI-30888 — PhpUseListImpl cannot be cast to PhpClass
  • Feature:
  • WI-681 — More specific parser error (extends/implements expected) in class declaration
  • WI-2023 — Resolve variable references from "compact" function string arguments.
  • WI-2066 — F4 on content root could jump to Settings / Directories, similar to IDEA
  • WI-4864 — New intention: Convert if to switch
  • WI-8809 — Autocomplete in PhpDoc after @see tag
  • WI-9593 — New intention: Convert switch statement to if
  • WI-10438 — It would be superb if IDE was showing suggestions for traits within the 'use' statment of the class
  • WI-11045 — Add extra step when using "Select Word at Caret" to include preceding comment block into selection
  • WI-15576 — Add 'Make Static' Refactoring for methods
  • WI-16368 — Add support of code completion classes in the traits
  • WI-17031 — Enable REST Client to trigger XDEBUG/Zend Debugger
  • WI-18194 — phpdoc @method does not recognise same conventions as other Type annotations
  • WI-18326 — PHPUnit: Add ability to "Rerun Failed Tests"
  • WI-21239 — Add @mixin in completion list for PHPDoc tags
  • WI-21917 — Choosing switch, if, elseif, foreach from completion should insert braces
  • WI-24618 — Add rerun functionality for Behat plugin
  • WI-27267 — Add intentions for flip "if/else" branches
  • WI-29328 — Autoimport can't reuse group use statements
  • WI-29515 — change RAM usage config
  • WI-29704 — Completion after a heredoc operator ( ' < < < ' )
  • WI-29863 — Inplace rename: can't perform variable refactoring is full variable is selected
  • WI-30422 — Remote Interpreter: Implement KeepAlive for runs via remote interpreters
  • WI-30423 — PHPCS/PHPMD Remote: Support KeepAlive support
  • WI-30477 — Provide completion for function after @see tag
  • WI-30575 — Intention: convert group use declarations to plain and v.v.
  • WI-30679 — Filter applicable classes in group use statement by namespace prefix
  • WI-30680 — Filter everything except constants after "use const"
  • WI-30681 — Filter everything except functions after "use function"
  • WI-30873 — Show used trait for completion inside use block
  • Performance Problem:
  • WI-30338 — 1-2 seconds freezing while typing when Breadcrumbs and/or Structure is visible with lots of functions
  • Usability Problem:
  • WI-674 — Option not to break the FTP/SFTP connection (keep alive)
  • WI-3232 — PHP: define(), isset() and other "language construct" "function definitions" seems to be not provided for navigation and quick doc
  • WI-16093 — Select word: can't select full namespace
  • WI-16672 — Don't trigger autocompletion when creating heredoc
  • WI-23868 — Remote interpreter: requires explicit selection of server if the previously chosen was deleted
  • WI-23869 — Remote interpreter: provide color differentiation of deployment servers
  • WI-25561 — Autocompletion on class instance creation should place cursor between parentheses if constructor has parameters
  • WI-27663 — Class name сompletion doesn't respect namespaces
  • WI-27798 — Validate remote interpreters path mappings on configuration changes
  • WI-27905 — Add error message if path mappings can't be found in Zero-configuration debug started from CLI
  • WI-27938 — Show warning/notification balloon when trying to run PHPUnit tests without settings
  • WI-29573 — Insert additional space after completion of tag inside one line PHPDoc
  • WI-29875 — Remote Interpreter: apply button is always enabled if remote interpreter by vagrant is selected
  • WI-29906 — Auto-complete for static call showing every static method in the codebase
  • WI-29918 — Impossible to move constant from class to interface with Move member to class refactoring (F6)
  • WI-29979 — Navigate to corresponding content root from marked folders
  • WI-30011 — Extract interface: Do not preselect static methods.
  • WI-30207 — ide-behat.php calls deprecated method Event::getName
  • WI-30357 — Project Interpreter: create project-level interpreter for project-level deployment server
  • WI-30520 — Flip If: Allow to invoke intention on else part
  • WI-30668 — Make static: don't show dialog if refactoring can be done without adding parameter and introducing object
  • WI-30677 — Add error message if path mappings can't be found due to empty $_SERVER['SERVER_NAME']
  • WI-30678 — Allow to configure custom path mappings for remote interpreter
  • WI-30708 — Allow to start "PHP Remote Debug" run-configuration without configured server
  • WI-30814 — Default composer location and new composer project
  • WI-30875 — Filter everything except trait methods in completion for trait method inside use block
  • WI-30877 — Code completion does not work for protected/private methods/properties in the traits
  • WI-30935 — In function import statement after namespace prefix only functions from the namespace should be shown.

New in PhpStorm 11.0 Build 145.184.39 EAP (Mar 2, 2016)

  • Highlights:
  • PHP Language & Editing Experience: Serious and long-awaited improvements were made in support of the PHP language such as improved type inference, completion, support of traits and more. Besides that we fully supported group use statements, added Make static refactoring and prepared new handy intentions (such as convert switch to if and if to switch or flip if/else branches) .
  • New Debugging Experience: We made Zero-Configuration Debugging easier to discover for new users. Besides now you can debug RESTful Web Service right from within the REST Client with XDebug for REST client feature.
  • Frameworks and Tools: PhpStorm contains now the Keep-Alive feature for SFTP/FTP/FTPS servers and Remote Interpreters, which was one of the most wanted features for the last 6 years. Moreover we prepared for you project-level interpreters, support for rerun failed tests for PHPUnit/Behat, and usability improvements for Remote Interpreters.
  • PhpStorm 11 also brings major improvements in support of top-notch web technologies, such as:
  • Improved Angular 2 support
  • Better TypeScript support
  • New features in JavaScript debugger
  • From the IntelliJ Platform this release borrows:
  • Right-to-left languages support
  • Speed search (in show usages and terminal)
  • JSON Schema
  • Docker plugin improvements
  • Enhancements in Version Control and Database tools

New in PhpStorm 11.0 Build 145.61.14 EAP (Feb 25, 2016)

  • PHP Completion:
  • Bug - WI-30736 - Completion of namespaced functions and constants broken if next line starts with backslash
  • Bug - WI-30787 - No autocomplete for php functions on the right hand side of a list() equality.
  • Bug - WI-21731 - Import of namespaces is treated like a class import
  • PHP Inspections:
  • Bug - WI-22352 - False-positive "Unused private method" notice for private method that is used in trait
  • Bug - WI-19348 - "Member has private/protected access" error for private/protected class method/field usage in trait
  • Cosmetics:
  • WI-30843 - Message can be more precise for missing method in interface/trait
  • PHP Refactoring:
  • Bug - WI-30765 - Import class doesn't work inside group use statement
  • Bug - WI-29329 - Move class: doesn't update group use statement correctly
  • Bug - WI-29417 - Optimize import doesn't check imports from group use
  • Bug - WI-29416 - Move method doesn't handle already imported group use statements
  • Bug - WI-30770 - Reuse of group use statements by autoimport of class destroys import of function/constants
  • Bug - WI-30634 - Move namespace: doesn't update group use statement correctly
  • Bug - WI-30766 - Import class with group use statement when alias is needed doesn't create an actual alias during the import
  • Bug - WI-30692 - Move namespace: doesn't handle group use statement for empty new namespace name
  • PHP debug:
  • Usability - WI-27905 - Add error message if path mappings can't be found in Zero-configuration debug started from CLI
  • PHP lang - Feature - WI-16368 - Add support of code completion classes in the traits
  • Feature - WI-30575 - Intention: convert group use declarations to plain and v.v.
  • Feature - WI-29328 - Autoimport can't reuse group use statements
  • Bug - WI-17671 - Self in trait should be treated not as a trait object
  • Bug - WI-30809 - Double return type on method signature tooltip
  • Bug - WI-29413 - Move statement Up/Down doesn't work with group use statements
  • Bug - WI-30060 - Usage of trait in anonymous class is shown as Error
  • Bug - WI-29715 - Group use statement: namespace of imported class is global
  • Exception - WI-30789 - Exception is thrown on unfinished trait use statement
  • PHP test - Feature - WI-24618 - Add rerun functionality for Behat plugin
  • Usability - WI-27938 - Show warning/notification balloon when trying to run PHPUnit tests without settings
  • Usability - WI-30207 - ide-behat.php calls deprecated method Event::getName
  • Plugin: Command line:
  • Bug - WI-30343 - Explicit version setting for Symfony component tool
  • Code Navigation:
  • Bug - IDEA-151736 - Cannot open link in javadoc
  • Find, Replace, Find Usages:
  • Bug - IDEA-151495 - Wrong result when use regexp in "find in path"
  • JavaScript. Debugger:
  • Exception - IDEA-151752 - CCE at com.jetbrains.javascript.debugger.PsiVisitorKt.getLambdaPosition
  • User Interface:
  • Bug - IDEA-151765 - HiDPI display: small code analysis icons in the editor
  • Debugger:
  • Feature - WEB-20266 - Debugging Service workers
  • Bug - WEB-19469 - Debugger crashing on eval() if exception breakpoints are enabled
  • Bug - WEB-20179 - conditional breakpoint disappeared
  • Bug - WEB-20242 - Web Worker: Main thread does not have name in 'Frames'
  • JavaScript:
  • Bug - WEB-20410 - Code completion for typed function arguments gets confused
  • Bug - WEB-20083 - CommonJS: properties of the object returned by exported module not resolved/suggested by completion
  • Bug - WEB-19991 - Support 'export module from' syntax
  • Bug - WEB-20367 - JSON Schema: provide validation warning for the file under several schemas
  • Bug - WEB-19378 - Inspection oddities when using modules
  • JavaScript. Formatter:
  • Bug - WEB-20427 - Formatter produces strange result with ES 2015 destructuring function parameters on multiple lines
  • Exception:
  • WEB-20285 - IOOBE on creating Line Comment in the end of JS/TS file
  • JavaScript. Inspections:
  • Bug - WEB-19323 - Update JSCS support
  • Bug - WEB-17652 - Incorrect arguments types check with inheritance
  • Bug - WEB-20122 - TSLint: update some rules and options
  • Node.js:
  • Bug - WEB-20411 - Remote interpreter: Deployment server with project visibility prevents interpreter creation
  • Cosmetics:
  • WEB-19885 - Cut a long path in the Node.js interpreter field in the middle
  • TypeScript:
  • Bug - WEB-20406 - Type guards for 'any' are not supported
  • Bug - WEB-20440 - Broken export deconstructor from import validation @v144.2925.4
  • Bug - WEB-20417 - WebStorm 12 editor shows incorrect TypeScript compilation errors

New in PhpStorm 11.0 Build 144.4199.11 EAP (Feb 17, 2016)

  • IntelliJ Platform - Bug - WI-11032 - PhpStorm removes trailing whitespaces within quoted strings
  • PHP Completion - Bug - WI-14050 - Autocompletion broken when next line starts with backslash
  • Bug - WI-30633 - 'const' and 'function' keywords are not suggested inside a group use
  • PHP Refactoring - Bug - WI-30665 - Make static: prohibit refactoring of magic methods
  • PHP debug - Bug - WI-29588 - Detect host-port for incomming connection from remote server cli
  • Usability - WI-27905 - Add error message if path mappings can't be found in Zero-configuration debug started from CLI
  • PHP lang - Feature - WI-681 - More specific parser error (extends/implements expected) in class declaration
  • Bug - WI-30660 - PhpStorm Advanced Metadata not working in EAP after Cache Invalidation (usual restart is required)
  • Plugin: Deployment _ FTP.. - Bug - WI-30337 - Deployment server with invalid port is saved, but not correctly displayed
  • No subsystem - Bug - IDEA-151469 - ImplementingFunctional2x.png is not used because it is named with capital letter
  • Bug - IDEA-151656 - ProgressableTextEditorHighlightingPass breaks (at least) Inifinitest plugin
  • Cosmetics - IDEA-115916 - Tab bug : graphical and not only
  • Exception - IDEA-151601 - Too many events posted
  • Code Navigation - Bug - IDEA-128907 - Goto declaration in code fragment opens new editor
  • Diff_Merge - Bug - IDEA-22363 - Diff Window in Ignore Whitespace Mode: Says "No Difference" Even If Threr're Ignored Differences
  • Bug - IDEA-144276 - Diff view shows "no differences" message when "Do not highlight" option is set
  • Bug - IDEA-151526 - No annotate action is enabled in "Compare with..." dialog for repository version
  • Bug - IDEA-151524 - Strange error and exception in log if try to annotate diff for newly added file(from local changes)
  • Bug - IDEA-151521 - Assertion error on try to annotate diff for local changes(in case one line)
  • Docker - Bug - IDEA-151572 - Docker: rename Settings / Clouds item to 'Docker' if it's the only cloud available
  • Bug - IDEA-151477 - Dockerfile false negative syntax error message
  • Editor. Editing Text - Usability - IDEA-151393 - Changed order of intentions
  • File System - Task - IDEA-103559 - File sync issues on paths containing non-ASCII characters
  • IDE Configuration - Bug - IDEA-151560 - Map help button to the specified id
  • Terminal - Feature - IDEA-117485 - Support Find in Terminal panel
  • Usability - IDEA-151339 - Terminal swallows keyboard shortcuts
  • User Interface - Bug - IDEA-151515 - Goto Action sorts incorrectly
  • Bug - IDEA-142106 - Quick documentation popup always minimized
  • Version Control - Bug - IDEA-151632 - "Move to another changelist" shortcut key is not working!
  • Version Control. Log - Bug - IDEA-147977 - Bug in drawing selected edges
  • Bug - IDEA-149285 - VCS Log: details panel has no horizontal scrollbar
  • Bug - IDEA-139989 - VCS Log: Structure filter: can't select folder not under any module
  • Exception - IDEA-149987 - Completion in Go To Ref/Tag/Branch popup frequently throws an Already Disposed exception
  • No subsystem - Feature - WEB-20263 - Enable Fill Paragraph for JS
  • Bug - WEB-18650 - Structural search and replace doesn't work in JavaScript
  • Bug - WEB-20244 - Foundation 6 not updated yet in new version. How do you do this manually?
  • Bug - WEB-20245 - Strings in require() statements are spell-checked
  • Bug - WEB-17148 - Structural replace broken
  • Bug - WEB-20041 - In Angular2, inside a Template, doing cont-/ to comment produces // comment instead of

New in PhpStorm 11.0 Build 144.3891.12 EAP (Feb 10, 2016)

  • Highlights:
  • Make static refactoring
  • Keep-Alive for Remote Interpreters
  • Keep-Alive for PHPCS/PHPMD
  • Improved mapping configuration for Remote Interpreters
  • and many other bug fixes and improvements.
  • Fixed issues:
  • WI-15576 — Add 'Make Static' Refactoring for methods
  • WI-30678 — Allow to configure custom path mappings for remote interpreter
  • WI-30423 — PHPCS/PHPMD Remote: Support KeepAlive support
  • WI-30422 — Remote Interpreter: Implement KeepAlive for runs via remote interpreters

New in PhpStorm 11.0 Build 144.3656 EAP (Feb 3, 2016)

  • Type inference fix for return with multiple types including static and $this
  • Bug fixes and improvements:
  • WI-19953 — Type Inference: @return static[]|static for variable assignment doesn't work
  • WI-23435 — Code completion broken with static and alternative
  • WI-11128 — Array element assignment on a field inside logical expression: Expression is not assignable
  • WI-30481 — Updating source to a different git branch causes error, code does not update in editor
  • WI-24631 — Returned "$this" type is incorrectly interpreted with multiple return values
  • WI-29863 — Inplace rename: can't perform variable refactoring is full variable is selected
  • WI-30530 — Ambiguous rename file process triggered on file upload (SFTP)
  • WI-30525 — Missing return declaration is not marked as syntax error
  • WI-30519 — error in PharHandlers does cause crash in ModuleRootManager
  • WI-30460 — List of completion after unset contains all types of elements that are not applicable
  • WI-30011 — Extract interface: Do not preselect static methods.
  • Release notes:
  • PHP Completion:
  • Bug WI-30460: List of completion after unset contains all types of elements that are not applicable
  • PHP Composer:
  • Bug WI-30481: Updating source to a different git branch causes error, code does not update in editor
  • PHP Refactoring:
  • Usability WI-30011: Extract interface: Do not preselect static methods.
  • PHP lang:
  • Bug WI-24631: Returned "$this" type is incorrectly interpreted with multiple return values
  • Bug WI-19953: Type Inference: @return static[]|static for variable assignment doesn't work
  • Bug WI-11128: Array element assignment on a field inside logical expression: Expression is not assignable
  • Bug WI-30525: Missing return declaration is not marked as syntax error
  • Bug WI-23435: Code completion broken with static and alternative
  • Plugin Deployment _ FTP..
  • Bug WI-30530: Ambiguous rename file process triggered on file upload (SFTP)
  • No subsystem:
  • Feature IDEA-147176: Create "lowercaseAndDash" function for live templates
  • Feature IDEA-135255: new Predefined Function "dashesToCamelCase()" to Use in Live Template Variables
  • Feature IDEA-145973: Same-named template macros for different languages
  • Bug IDEA-148696: Contextual menu won't close
  • Bug IDEA-95941: Commit message Ctrl+Space completion of class name - stops working for the second line of the message
  • Bug IDEA-151033 Usability: issue with multiple block carets
  • Cosmetics: IDEA-150957: Gutter grows abnormally when increasing line spacing in editor font settings
  • Diff_Merge:
  • Feature IDEA-16394: Option to turn off inspections in diff window
  • Editor. Code Completion:
  • Bug IDEA-113393: Live Template variable skipped when its default value contains a dash
  • Editor. Editing Text:
  • Bug IDEA-150819: Keymap - multiple identical shortcuts for the same action
  • Bug IDEA-150132: When selecting and dragging text to "watches" most of the time the editor will start scrolling down and marking the whole text automatically.
  • Bug IDEA-151013: "Move statements right and left" works unreliably in XSLT
  • Performance: IDEA-150848: Editor leak in AccessibleEditorComponentImpl
  • Usability: IDEA-150389: Remove the term "Platform" from the UI
  • Editor. Intention Actions:
  • Feature IDEA-150587: Ability to click on links from inspections above the Editor using keyboard
  • Find, Replace, Find Usages:
  • Bug IDEA-149094: Show usages popup speed search issues
  • IDE Configuration:
  • Bug IDEA-130605: Import Settings: "Select Components to Import" dialog has some unreadable items
  • Bug IDEA-150830: Edit Custom VM Options propose to create idea64.vmoptions file instead of idea.vmoptions on OSX
  • Bug IDEA-134815: File templates: can't create templates from file without extension
  • Cosmetics IDEA-148604: White box in Keyboard Shortcut dialog in Preferences | Keymap
  • Exception IDEA-148289: NPE at com.intellij.ide.passwordSafe.config.PasswordSafeConfigurable.isModified
  • Project Configuration:
  • Bug IDEA-151029: Project Structure: "Invalid item in the dependencies list" tooltip has < > html entities instead of < >
  • Project View:
  • Bug IDEA-151067: Project view forces slow single threaded file scanning
  • Bug IDEA-143457: Project View presentation of a module looses bold font face when there is an error inside
  • Refactoring:
  • Bug IDEA-150775: Deleting any file, IDEA wants to check out every file in project
  • User Interface:
  • Usability IDEA-148456: Regression: Remote SSH External Tools no longer appearing in Action dialog after upgrade to IntelliJ 15
  • Version Control:
  • Feature IDEA-119269: Git: Show history by selection - no way to copy the commit hash
  • Feature IDEA-89348: "Show history for selection" dialog: lack of "Show All Affected Paths" action
  • Exception IDEA-148175:
  • Exception when reverting a commit from VCS history
  • Version Control. Git:
  • Feature IDEA-143404: Support git worktree feature
  • Version Control. Mercurial:
  • Bug IDEA-150091: Can not disable the plugin hg4idea
  • Version Control. Perforce:
  • Cosmetics IDEA-148401: Perforce: EditJobs dialog looks bad in case of multiple connections
  • XML:
  • Feature IDEA-150753: Make 'Collapse empty tag' quick fix available for tags with whitespace contents
  • DB.Refactoring:
  • Bug DBE-2299: Drag and drop text magically pastes clipboard and makes Ctrl+Z throw a popup
  • No subsystem:
  • Bug WEB-20052: Emmet: abbreviations with multiplication are not expanded in JSX context
  • Bug WEB-14867: Extra space added to jQuery statements
  • Exception WEB-20107: Code inspection not working in latest EAP
  • CSS:
  • Feature WEB-20101: Support file structure for inline styles
  • Debugger:
  • Bug WEB-20141: Freezing, StackOverflow and many other errors when run JS debugger
  • JavaScript:
  • Feature WEB-20003: Auto Completion for ES6 String Interpolation Doesn't Work
  • Bug WEB-20038: E4X path navigation expressions that use namespace qualification are incorrectly flagged as not supported
  • Bug WEB-19500: JSDoc: Erroneous message "Returned expression type ... is not assignable to type ...."
  • Bug WEB-19280: JSDoc inline types: Problem with ES 2015 arrow functions with one parameter and no parenthesis syntax
  • Bug WEB-20094: JSX: incorrect 'unused import warning' if component binding is unresolved
  • JavaScript. Frameworks:
  • Bug WEB-19589: React: Refactor - Rename of component doesn't work properly with default exports
  • JavaScript. Refactoring:
  • Bug WEB-20035: Inline doesn't work on class methods
  • Bug WEB-19994: NullPointerException when try to extract field from decorators
  • SASS:
  • Bug WEB-20100: Inline sass: problem with @import
  • Bug WEB-20070: Inline SCSS: quick-fix 'Expand css shorthand property' enter extra spaces
  • Bug WEB-20068: Inline scss: problem with @charset
  • Bug WEB-20069: Inline scss: missing highlighting for some keywords
  • TypeScript:
  • Feature WEB-20095: Update typescript compiler to 1.8.0beta
  • Bug WEB-19222: no content awar move down/up in TypeScript

New in PhpStorm 11.0 Build 144.3398 EAP (Jan 27, 2016)

  • FROM THE PHP SIDE, THIS BUILD DELIVERS:
  • FTP/FTPS Keep-Alive
  • Ability to rerun failed PHPUnit tests
  • New intentions: convert “switch to if” and “if to switch”
  • New intention: flip “if/else” branches
  • Completion of functions in PhpDoc @see tag
  • BUG FIXES AND IMPROVEMENTS:
  • WI-18326 — PHPUnit: Add ability to "Rerun Failed Tests"
  • WI-28394 — Regression: Can't resolve member when class reference is a namespaced function.
  • WI-4864 — New intention: Convert if to switch
  • WI-29327 — Group use statement: 1) false positive from Undefined namespace inspection on common prefix with empty intermediate namespaces / 2) namespace import is not used for class resolve
  • WI-9593 — New intention: Convert switch statement to if
  • WI-27267 — Add intentions for flip "if/else" branches
  • WI-21239 — Add @mixin in completion list for PHPDoc tags
  • WI-30531 — Exception on remote interpreters configuration without a project
  • WI-30521 — Convert switch to if: drops comments and breaks code if code is on the last line
  • WI-30520 — Flip If: Allow to invoke intention on else part
  • WI-30489 — Missing closing parenthesis for parent method completion with default array() parameter in PHPDoc
  • WI-30477 — Provide completion for function after @see tag
  • WI-30475 — Completion list for @method doesn't contain methods of superclass and magic methods
  • WI-30443 — PHPDoc @method annotation doesn't take into account array part of type parameter declaration
  • WI-30371 — PHP stub for openssl_encrypt and openssl_decrypt
  • WI-29918 — Impossible to move constant from class to interface with Move member to class refactoring (F6)
  • WI-29703 — 'namespace' keyword is suggested inside a function
  • INTELLIJ PLATFORM CHANGES:
  • PHP Completion:
  • Feature: WI-21239: Add @mixin in completion list for PHPDoc tags
  • Feature: WI-30477: Provide completion for function after @see tag
  • Bug: WI-30489: Missing closing parenthesis for parent method completion with default array() parameter in PHPDoc
  • Bug: WI-29703: 'namespace' keyword is suggested inside a function
  • Bug: WI-30475: Completion list for @method doesn't contain methods of superclass and magic methods
  • PHP Inspections:
  • Bug: WI-28394: Regression: Can't resolve member when class reference is a namespaced function.
  • PHP Refactoring:
  • Usability: WI-29918: Impossible to move constant from class to interface with Move member to class refactoring (F6)
  • PHP lang:
  • Feature: WI-27267: Add intentions for flip "if/else" branches
  • Feature: WI-9593: New intention: Convert switch statement to if
  • Feature: WI-4864: New intention: Convert if to switch
  • Bug: WI-29327: Group use statement: 1) false positive from Undefined namespace inspection on common prefix with empty intermediate namespaces / 2) namespace import is not used for class resolve
  • Bug: WI-30443: PHPDoc @method annotation doesn't take into account array part of type parameter declaration
  • Plugin: Deployment _ FTP..
  • Exception: WI-30531:
  • Exception: on remote interpreters configuration without a project
  • Php Intentions:
  • Bug: WI-30521: Convert switch to if: drops comments and breaks code if code is on the last line
  • Usability: WI-30520: Flip If: Allow to invoke intention on else part
  • Editor. Editing Text:
  • Feature: IDEA-147003: Provide syntax aware 'move left'/'move right' actions
  • Feature: IDEA-23487: Parameter Shifting like Method Shifting
  • Bug: IDEA-150505: Underlines characters invisibles
  • Bug: IDEA-149817: IntelliJ: Cannot navigate from usage to declaration of method because documentation overlay hides usage
  • Performance: IDEA-150848: Editor leak in AccessibleEditorComponentImpl
  • File System:
  • Bug: IDEA-150199: cannot create file with non-ascii characters in name
  • Find, Replace, Find Usages:
  • Usability: IDEA-139310: "Find Usages" should report source usages before usages in generated code
  • Indices:
  • Performance: IDEA-148981: Index rebuild doesn't complete after idea start
  • Task Management:
  • Bug: IDEA-101238: Time tracking: Post work item: sending a comment with a space fails
  • User Interface:
  • Bug: IDEA-150726: Gutter icons scaled wrong on Retina
  • Usability: IDEA-149961: Zero latency typing mode ghosts old caret position briefly when editor.caret.width > 1
  • Cosmetics: IDEA-150453: UI issues with speed-search in popup lists
  • Version Control:
  • Bug: IDEA-150624: IDEA 15 "Apply Patch" is broken
  • Bug: IDEA-148799: Unshelve changes with unassociated file. Don't cancel unshelving.
  • Bug: IDEA-144633: On applying patch for file of unknown type adding the confusing error message is shown
  • Usability: IDEA-35927: Provide better user experience when applying patch or unshelving fails for some files in the patch/shelf.
  • Usability: IDEA-60470: Applying Patch: should do best attempt to apply to all files. Currently abandones process at first failure
  • Exception: IDEA-148175
  • Exception: when reverting a commit from VCS history
  • Version Control. Git:
  • Feature: IDEA-136565: Add "Checkout with Rebase" action equivalent to "git checkout feature & git rebase master"
  • Bug: IDEA-76778: Git: file marked as modified in project view and in editor after rebase --skip until project reopening
  • Bug: IDEA-142648: Continue rebase reports success but does nothing when rebase --skip had to be called
  • Bug: IDEA-72282: "Continue rebasing" should be disabled if no rebase operation is in progress
  • Bug: IDEA-135299: 'Git' -> 'Continue rebasing' reports "Successfully rebased 0 commits!" in case of error
  • Bug: IDEA-81093: Invoke the Conflict Resolver automatically if a conflict happens during rebase
  • Usability: IDEA-60413: IntelliJ should understand git rebase and show only relevant menu items
  • Usability: IDEA-150358: Rebase reports error if user presses "cancel" in the interactive rebase dialog
  • Usability: IDEA-55672: Git: Confusing error messages when all commits during rebase are marked as skipped.
  • Usability: IDEA-55479: Git: auto-stash/unstash on 'rebase' command
  • Version Control. Log:
  • Bug: IDEA-146846: Vcs log root filter: Ctrl+Click should be Cmd+Click on Mac
  • Version Control. Perforce:
  • Bug: IDEA-148592: Dead lock in IntelliJ 15.0.1!
  • XML:
  • Feature: IDEA-147004: Provide action to change order of attributes in xml tag
  • IDE.User Interface:
  • Usability: DBE-2195: Make SQL dialect selection dialog keyboard-friendly
  • No subsystem:
  • Bug: WEB-19336: Live template `func` doesn't work for me
  • Bug: WEB-14576: Ignore React JS Lifecycle components/properties in JSX files
  • Bug: WEB-18541: Reformat code during commit unminifies minified CSS files
  • Bug: WEB-19944: .eslintrc: missing property 'webextensions'
  • CSS:
  • Bug: WEB-19417: `speak` property support.
  • Debugger:
  • Feature: WEB-19984: Debugging Node.js app built with Webpack
  • Bug: WEB-19983: Compiled TypeScript not stopping at breakpoints
  • Bug: WEB-19982: Cannot debug ES6 - Babel - Webpack apps
  • HTML:
  • Bug: WEB-19972: Subresource integrity attributes are marked as invalid in HTML files
  • JavaScript:
  • Bug: WEB-19696: Find usages doesn't work in VanillaJS code
  • Bug: WEB-19407: Autocomplete doesn't work if object property was created with constructor
  • JavaScript. Frameworks:
  • Bug: WEB-19921: Red code in Angular 1.4
  • Bug: WEB-19957: Incorrect resolve in angular message
  • JavaScript. Inspections:
  • Bug: WEB-19487: missing AMD warning for 'console' and 'document'
  • Bug: WEB-19694: global objects are not resolved/behaved as expected
  • JavaScript. Predefs:
  • Bug: WEB-19648: Incorrect signature for document.importNode
  • JavaScript. Refactoring:
  • Feature: WEB-19996: Improve name suggestion for Refactoring | Rename
  • Bug: WEB-19994: NullPointerException when try to extract field from decorators
  • Bug: WEB-19995: AssertionError when change method's signature
  • LESS:
  • Feature: WEB-14762: support inline LESS/SCSS stylesheets
  • Node.js:
  • Bug: WEB-19920: Node remote interpreter: reconnect to Vagrant in the background on RC opening
  • Bug: WEB-19922: Node remote interpreter: Multi-Machine Vagrant: wrong error for empty Machine name
  • Usability: WEB-19902: Node.js RC: select currently active Node Interpreter on opening "Configure Node.js interpreters" table
  • Usability: WEB-19901: Node remote interpreter: Configure Remote Mappings dialog should have OK and Cancel button
  • Usability: WEB-19904: Node remote interpreter: Vagrant: show absolute path instead of relative to the project root
  • TypeScript:
  • Feature: WEB-19986: TypeScript: provide new intention "Remove modifier" for invalid code
  • Bug: WEB-14301: Don't work auto resolve types in classes
  • Bug: WEB-19127: IntelliSense doesn't work in TypeScript JSX templates

New in PhpStorm 11.0 Build 144.3168 EAP (Jan 20, 2016)

  • New features, bug fixes and improvements from the PHP, web and IntelliJ platform sides. From the PHP side, this build delivers:
  • SFTP Keep-Alive
  • Improved @method annotation support (the same type syntax as @var annotation is recognized)
  • Completion in PhpDoc @see tag
  • and other bug fixes and improvements
  • Fixed issues:
  • WI-11741 — Copyright profile for PhpStorm
  • WI-29926 — Phing settings are lost after PhpStorm restart
  • WI-29751 — Twig: {% %} pair braces are not highlighted
  • WI-30292 — DateTime::setTime should return $this instead of DateTime
  • WI-30240 — ReflectionParameter is missing hasType stub (PHP7)
  • WI-30140 — Copyright profile: text files are shown in copyright profiles
  • WI-30101 — PhpStorm hangs when opening big CodeIgniter log files

New in PhpStorm 11.0 Build 144.3010 EAP (Jan 14, 2016)

  • HIGHLIGHTS:
  • Project level interpreters
  • XDebug/ZendDebugger support for Rest client
  • Variables resolve from compact function string arguments
  • @method annotation recognise the same type syntax as @var annotation
  • and many other bug fixes.
  • Project level interpreters:
  • Now you are able to configure interpreters not only at application, but also at project level. This might be useful when you have lots of projects, each having a distinct server used only there. Another case for project level interpreters it’s when you want to share your interpreter settings with teammates or put them under version control.
  • Support of XDebug for REST client:
  • For those using REST client but missing debugger functionality, now we support XDebug. You can also trigger PHP debugger from the REST client.
  • Compact function support:
  • PhpStorm now resolves variables from compact function string arguments (WI-2023), helping you navigate, find usages and refactor your code easily.
  • FIXED ISSUES:
  • WI-17031 — Enable REST Client to trigger XDEBUG/Zend Debugger
  • WI-2023 — Resolve variable references from "compact" function string arguments.
  • WI-29681 — Constant assignment with array expressions produces "expression is not allowed as constant value"
  • WI-11045 — Add extra step when using "Select Word at Caret" to include preceding comment block into selection
  • WI-29675 — PhpStorm 10.0 "sync with" does not sync files with same filename from different directories
  • WI-2066 — F4 on content root could jump to Settings / Directories, similar to IDEA
  • WI-30357 — Project Interpreter: create project-level interpreter for project-level deployment server
  • WI-30356 — Allow to rerun tests imported by results
  • WI-30285 — Autocompletion suggests function implementation for interfaces extending interfaces
  • WI-30154 — Autocomplete broken on control structures (alternative syntax) in unclosed php tag
  • WI-30148 — The autocomplete of variables insert dollar sign before => in array
  • WI-29997 — Remote Hosts Access: IDEA hangs trying to verify remote credentials if specified private key location is incorrect
  • WI-29981 — Remote Interpreter: Deployment server is verified if Vagrant is chosen
  • WI-29979 — Navigate to corresponding content root from marked folders
  • WI-29948 — Rest Client: doesn't support built-in web server
  • WI-29875 — Remote Interpreter: apply button is always enabled if remote interpreter by vagrant is selected
  • WI-29802 — Settings does not modify capitalization changes in Languages->PHP->Servers "Absolute path on the server" field
  • WI-29515 — change RAM usage config
  • WI-27798 — Validate remote interpreters path mappings on configuration changes
  • WI-23869 — Remote interpreter: provide color differentiation of deployment servers
  • WI-23868 — Remote interpreter: requires explicit selection of server if the previously chosen was deleted
  • WI-18233 — Initialize properties: tries to use private field of parent class
  • WI-16687 — Pull Up: doesn't warn about moving non-static method that is invoked via class reference
  • PHP Completion:
  • Bug: WI-30154: Autocomplete broken on control structures (alternative syntax) in unclosed php tag
  • Bug: WI-30148: The autocomplete of variables insert dollar sign before => in array
  • Bug: WI-30285: Autocompletion suggests function implementation for interfaces extending interfaces
  • PHP Refactoring:
  • Bug: WI-29303: Extract method: forbid to extract method in write access expression
  • PHP debug:
  • Bug: WI-29802: Settings does not modify capitalization changes in Languages->PHP->Servers "Absolute path on the server" field
  • Usability: WI-27798: Validate remote interpreters path mappings on configuration changes
  • Usability: WI-30357: Project Interpreter: create project-level interpreter for project-level deployment server
  • Usability: WI-23869: Remote interpreter: provide color differentiation of deployment servers
  • PHP test:
  • Bug: WI-30356: Allow to rerun tests imported by results
  • PS specific:
  • Usability: WI-29979: Navigate to corresponding content root from marked folders
  • Plugin: Deployment _ FTP..
  • Bug: WI-29675: PhpStorm 10.0 "sync with" does not sync files with same filename from different directories
  • Bug: WI-29997: Remote Hosts Access: IDEA hangs trying to verify remote credentials if specified private key location is incorrect
  • PHP Run:
  • Bug: WI-29981: Remote Interpreter: Deployment server is verified if Vagrant is chosen
  • Usability: WI-29875: Remote Interpreter: apply button is always enabled if remote interpreter by vagrant is selected
  • No subsystem:
  • Bug: IDEA-147015: deadlock during class initializer
  • Bug: IDEA-147723: live templates don't work in PHP file templates
  • Bug: IDEA-146446: Can't switch JDK on OS X 10.11
  • Docker:
  • Feature: IDEA-138350: Deploy Images from Docker Repository
  • Feature: IDEA-138987: Add ability to run image with specified command
  • Bug: IDEA-148572: Dockerfile editor: provide completions for keywords
  • Bug: IDEA-146993: Volume binding on windows is not correct because of special symbols in the path
  • Bug: IDEA-146347: Docker Plugin fails to attach to container running on server bound to unix socket
  • Usability: IDEA-138981: Disable ability "Show processes" for not running containers
  • Task: IDEA-137782: Docker: detect dockerfile and suggest to create run config
  • Editor. Editing Text:
  • Usability: IDEA-149712: Various errors in widen-selection (ctrl-w)
  • Project View:
  • Bug: IDEA-149666: Bookmark icons are not shown for files in Project View
  • Performance: IDEA-147465: Closed project leaked through Project View panes
  • User Interface:
  • Usability: IDEA-149590: Open File dialog should display icons for registered directory types (e.g. bundles on OS X)
  • Version Control:
  • Bug: IDEA-146642: unexpected mapping on applying a VCS patch
  • No subsystem:
  • Bug: WEB-18795: Allow suppressing "Cannot resolve symbol..."
  • Bug: WEB-7877: Code editor vibrates during typing
  • CoffeeScript:
  • Bug: WEB-18997: Duplicate alt+enter menu items
  • Debugger:
  • Feature: WEB-11245
  • Feature: to debug JavaScript callbacks
  • Feature: WEB-13024: Javascript asynchronous callstack
  • HTML:
  • Bug: WEB-10809: "Insert new line before": weird behaviour
  • JavaScript:
  • Feature: WEB-13844: Please highlight cyrillic letters in source code
  • Feature: WEB-7516: Introduce a setting to use @return or @returns JSDoc
  • Feature: WEB-1221: Structure and code completion make no distinction between static and instance members
  • Feature: WEB-16359: Intention for converting string concatenation into ES6 template string
  • Bug: WEB-19437: No code completion when using backticks in require statements
  • Bug: WEB-10715: comment with line/block comment does not work when in regex literal
  • Bug: WEB-18926: "Jump to declaration" (cmd-b or cmd-click) does not work with Javascript files
  • Bug: WEB-19767: ES6: Dummy suggestions for `yield`
  • Bug: WEB-16165: Returned expression type Array is not assignable to type fixme
  • Bug: WEB-16993: Invalid ES6 code marked as valid
  • Bug: WEB-19111: Code completion for multiple levels of inheritance
  • Bug: WEB-18414: JSDoc examples syntax highlighting artefact
  • Bug: WEB-18974: Cannot resolve symbol error if multiple implementation match the ES6 import path
  • Bug: WEB-18784: AMD doesn't work with ES6 modules
  • Bug: WEB-19655: IllegalArgumentException when use backticks in require statements
  • Bug: WEB-16534: Duplicate declaration error for destructuring assignment
  • Bug: WEB-14384: Renaming a parameter from a JSDoc comment gets stuck in the renaming operation when using ES6 method definition shorthand
  • Bug: WEB-17446: Wrong message "overrides method in object" in node.js project
  • Bug: WEB-14734: ES6: silent errors in the import statements
  • Bug: WEB-10987: OutOfMemory when indexing huge json
  • Bug: WEB-18989: es6 import missing autocomplete compared to nodejs's require
  • Exception: WEB-19509: IllegalArgumentException when edit template's code
  • JavaScript. Inspections:
  • Bug: WEB-18911: using "arguments" outside function is NOT error
  • Bug: WEB-18516: JSdoc: this return type edge case is not handled correctly
  • Bug: WEB-16202: ES6: Duplicate declaration
  • Bug: WEB-18333: JSDoc-based type error when using ES 2015 spread operator and an array type (WS 11 EAP 142.5255)
  • Node.js:
  • Feature: WEB-19093: Node.js: support path auto-completion for require statement
  • Bug: WEB-19806: Connect to remote host dialog pops up when remote interpreter configuration is canceled
  • Bug: WEB-19697: Module is not statement
  • Bug: WEB-19617: uncaught exception in case when deployment configuration was deleted, but there is still node interpreter referring to it
  • Bug: WEB-19643: Node remote interpreter: always stop/terminate remote node process
  • Bug: WEB-18768: require() call is missing with mocha-DefinitelyTyped
  • Bug: WEB-19018: Unable to handle private/prefixed modules
  • Bug: WEB-19652: Node remote interpreter: do not reconnect to all hosts on Settings/RC opening
  • Bug: WEB-19641: Node remote interpreter should be shown only for valid Run Configurations
  • Exception: WEB-18792: ClassCastException
  • Profiling:
  • Feature: WEB-17178: Profiling: CPU: Flame Chart: place Selection Rectangle on the area with calls by default
  • Feature: WEB-17163: Profiling: CPU: Flame Chart: provide Navigation from the Chart Details to the Calls
  • Bug: WEB-19663: Profiling: CPU: Overview Ring: sometimes values are not correctly shown on picture
  • Cosmetics: WEB-19662: Profiling: CPU: improve popup messages
  • Unit Tests:
  • Bug: WEB-19754: Stack trace does not link to local test code
  • Bug: WEB-19009: Mocha tests & typescript. Double click on mocha test opens up the javascript file, not the typescript file.

New in PhpStorm 10.0.3 Build 143.1770 (Jan 8, 2016)

  • This build includes new features, bug fixes and improvements from the PHP, web and IntelliJ platform sides.
  • From the PHP side, this build delivers:
  • Fix of scalar types in namespaced classes for PHP 7 (WI-28283)
  • Copyright plugin for PhpStorm
  • Symfony 3 support for Command Line Tools
  • Distribution packages:
  • Feature: WI-11741: Copyright profile for PhpStorm
  • PHP Formatter:
  • Bug: WI-28658: Reformatting not working with too many opening and closing PHP tags
  • Usability: WI-27213: Complete current statement: for function call append next line
  • PHP lang:
  • Bug: WI-28283: PHP 7 Support: wrong "Argument type does not match" and "Return type does not match" errors for scalar types inside a namespace
  • PS specific:
  • Bug: WI-30160: Create new project: path to php is not reevaluated in composer project
  • Plugin: Command line:
  • Bug: WI-29627: Symfony 3.0 is not supported by a command-line tool
  • Plugin: GAE support:
  • Bug: WI-29845: PHPStorm appends "." - can't debug GAE app
  • Plugin: Phing:
  • Bug: WI-29926: Phing settings are lost after PhpStorm restart
  • No subsystem:
  • Performance: WI-30101: PhpStorm hangs when opening big CodeIgniter log files
  • Code Formatting and Code Style:
  • Performance: IDEA-148903: xml file long processing
  • DB.Connectivity:
  • Bug: DBE-1797: MSSQL: OxDBE can't connect to the named server instance over Microsoft JDBC driver
  • DB.Console:
  • Bug: DBE-2013: Pin Tab is missing
  • DB.Introspection:
  • Bug: DBE-2061: MS SQL and Sybase Data Source Configuration Window: wildcards in schema list don't work
  • Data.Viewer:
  • Feature: DBE-2029: Filter by "IS NULL"
  • Bug: DBE-2011: MSSQL: problems with sequences
  • Bug: DBE-2021: Incorrect numbering of result rows after sorting have been applied
  • Bug: DBE-2006: MSSQL: Error while executing good query with subquery
  • IDE.User Interface:
  • Usability: DBE-652: Support directories as DDL data source
  • No subsystem:
  • Bug: WEB-19341: Align assignments does not work in case of inline comment
  • Bug: WEB-19389: Bower 1.7: List of the available packages is empty
  • Build tools:
  • Performance: WEB-19333: Grunt "serve" task and Bower listing cause multiple blocked node processes
  • Debugger:
  • Bug: WEB-18646: Regularly getting error: Failed to find breakpoint by id
  • Bug: WEB-19464: Debugging Angular 2 has no debug info
  • Bug: WEB-19334: Debugging Meteor 1.2.x is essentially broken for any language.
  • JavaScript:
  • Bug: WEB-19392: Unused constant
  • JavaScript. Formatter:
  • Bug: WEB-10598: Intellij doesn't automatically indent after a if statement with no braces (AS3, JavaScript/Typescript)
  • Bug: WEB-2236: Arrow function is not formatted properly
  • Bug: WEB-13129: ES6 Wrong Chaining Indentation
  • Node.js:
  • Feature: WEB-19559: NPM scripts: make messages/errors in console clickable
  • Bug: WEB-19449: F_OK, R_OK, W_OK and X_OK are not found by WebStorm
  • Docker:
  • Bug: PY-17515: Manage.py task does not work in docker intergration
  • Bug: PY-17975: Docker: Container output sometimes gets truncated
  • Bug: PY-17689: Docker: Unable to start Run/Debug configurations with local Docker interpreter w/o Docker Machine

New in PhpStorm 10.0.3 Build 143.1480 EAP (Dec 16, 2015)

  • New features, bug fixes and improvements from the PHP, web and IntelliJ platform sides.
  • From the PHP side, this build delivers:
  • Copyright profile for PhpStorm
  • Bug fixes and improvements:
  • WI-11741 — Copyright profile for PhpStorm
  • WI-29926 — Phing settings are lost after PhpStorm restart
  • WI-29751 — Twig: {% %} pair braces are not highlighted
  • WI-30140 — Copyright profile: text files are shown in copyright profiles
  • WI-30101 — PhpStorm hangs when opening big CodeIgniter log files
  • WI-29640 — Generator::getReturn() from PHP 7 is missing
  • Changes from IntelliJ platform and web:
  • Distribution packages:
  • Feature: WI-11741: Copyright profile for PhpStorm
  • PHP templates:
  • Bug: WI-13615: Twig: repeatedly commented line gets strange symbols
  • Bug: WI-29751: Twig: {% %} pair braces are not highlighted
  • Exception: WI-28735: java.lang.UnsupportedOperationException is thrown on typing inside *.sql.twig file
  • Plugin: Phing:
  • Bug: WI-29926: Phing settings are lost after PhpStorm restart
  • No subsystem:
  • Performance: WI-30101: PhpStorm hangs when opening big CodeIgniter log files
  • Code Formatting and Code Style:
  • Performance: IDEA-148903: xml file long processing
  • DB.Console:
  • Bug: DBE-2013: Pin Tab is missing
  • Data.Viewer:
  • Feature: DBE-2029: Filter by "IS NULL"
  • Bug: DBE-2006: MSSQL: Error while executing good query with subquery
  • Bug: DBE-2021: Incorrect numbering of result rows after sorting have been applied
  • Bug: DBE-2011: MSSQL: problems with sequences
  • No subsystem:
  • Bug: WEB-19389: Bower 1.7: List of the available packages is empty
  • JavaScript. Formatter:
  • Bug: WEB-18121: Chained method indentation does not work if the line does not start with "."
  • Unit Tests:
  • Feature: WEB-18734: Way to run a single TDD style mocha unit test
  • Bug: WEB-9663: Mocha: provide navigation to source for the TDD tests

New in PhpStorm 10.0.2 Build 143.1184 (Dec 10, 2015)

  • This build includes new features, bug fixes and improvements from the PHP, web and IntelliJ platform sides. From the PHP side, this build delivers:
  • Improved code completion in primitive types, keywords and paths
  • Improved parsing of static variables
  • New inspections: variable variable usage
  • New formatter option: Space control before anonymous function parenthesis
  • FIXED ISSUES:
  • PHP Completion:
  • Feature: WI-21565: Provide autocompletion for type in PHPDoc
  • Feature: WI-2686: on completion of "self", double colon should be inserted
  • Feature: WI-13157: Auto-complete php type casting operators
  • Feature: WI-29405: Context sensitive keywords completion
  • Feature: WI-14531: After keyword "use" in class completion should suggest only traits
  • Feature: WI-29203: Automatically insert a space after PHPDoc tag
  • Feature: WI-7989: Inject file references after __DIR__ on Ctrl-[Shift/Alt]-Space - for file path completion etc.
  • Bug: WI-29406: Language construct instead variable
  • Bug: WI-29912: Provide completion for static and $this in PHPDoc type
  • Bug: WI-28788: Methods and fields are suggested in the namespace context
  • Bug: WI-29898: Provide completion for self and parent in argument and return type
  • Bug: WI-29940: Completion of parent fields after constant keyword should be prohibited
  • Bug: WI-29844: Autocomplete usage inserts unwanted dollar sign
  • Bug: WI-20094: Autocomplete for static keyword is broken
  • Bug: WI-14530: If there is a class that uses trait completion will suggest this trait after "new" statement
  • Bug: WI-14495: PHP completion should not suggest "extends/implements" for traits
  • Bug: WI-29913: Provide completion for self, static, parent after new
  • Bug: WI-11977: The IDE does not suggest primitive types in @var declarations
  • Bug: WI-28886: Completion for functions/methods doesn't work for subnamespace
  • Bug: WI-29666: 'array()' and 'list()' language constructs are not suggested for a foreach statement
  • Bug: WI-29054: use function autocomplete appends brackets at the end of function names
  • Bug: WI-16486: Incorrect heredoc automatic closing
  • Bug: WI-29935: Completion should escape quotes inside for array keys if necessary
  • Bug: WI-29311: Completion of variable in PHPDoc inserts field and method
  • Bug: WI-24054: Completion of imported functions/constants inserts :: after items
  • Usability: WI-29313: Don't insert a space after inline inheritdoc tag
  • Usability: WI-6935: Suggest 'class' keyword between 'abstract' keyword and classname
  • Usability: WI-29315: Space is not inserted after @var tag
  • Usability: WI-24055: Provide completion of keywords "const" and "function" after "use" import
  • Usability: WI-28888: Don't show all language constructs that have variants with parenthesis
  • Usability: WI-17675: Array completion for string contains statements
  • Usability: WI-8947: Append whitespace after completed keyword
  • Exception: WI-29994: Exception is thrown on attempt to complete key with \r inside a single quotes
  • PHP Formatter:
  • Bug: WI-29411: Reformat if() declaring a global variable breaks code
  • Bug: WI-29639: Heredoc and "Add a comma after last element in multiline array" breaks code
  • PHP Inspections:
  • Feature: WI-20027: Create inspection for variable variables usage
  • Bug: WI-29326: Remove use statement doesn't work for single group use statement
  • Bug: WI-14707: Unused local variable: Usage of variables incorrecly tracked when invoking objects
  • Bug: WI-29876: Rename PHP 7 readiness inspection to PHP 7 Compatibility Inspection
  • Bug: WI-29580: Variable variable with array access is not recognized
  • Usability: WI-29376: Rename unused alias warning to unused import
  • Cosmetics: WI-29889: Typo in inspection - "Remove all unused parameter"
  • PHP Refactoring:
  • Bug: WI-29336: Extract interface insert implements in incorrect position for anonymous class
  • Bug: WI-29401: In place variable rename breaks if started from dolar sign
  • PHP debug:
  • Bug: WI-26658: Force kill local CLI script when stopping debugger
  • Performance: WI-29222: Stop tree update when settings dialog is closed
  • Usability: WI-27903: Import deployment path mappings from 'Local or Mounted Folder"
  • PHP lang:
  • Bug: WI-29611: Escaped slashes disappear when copy string value
  • Bug: WI-28229: PHPDoc generation of default boolean parameters gives bool|false or bool|true as typehint
  • Bug: WI-14957: Semicolon after use statement for trait imports should be marked as error
  • Bug: WI-28940: Dataflow: from here doesn't consider unary statements
  • Bug: WI-29860: Methods defined in trait are ignored during stubs generation
  • Bug: WI-29766: Broken parsing of methods before PHPDoc before function name
  • Bug: WI-17601: Wrong FileName after New > PHP Class
  • Bug: WI-29509: Broken parsing of methods returning reference with a space between reference and method name
  • Bug: WI-11265: PHPStorm 4.0.1: Color syntax does not work for the array assignment operator
  • Bug: WI-29378: Dataflow: unrelated statement from if leaks into else part
  • Bug: WI-29670: Unbalanced tree exception is thrown
  • Bug: WI-29685: Static variable with function is considered valid (while it's syntax error)
  • Bug: WI-28873: static $x = new Foo(); not recognized as error in function
  • Bug: WI-29712: PHP TODO: Closing "**/" should not be highlighted
  • Bug: WI-28587: Scalar type hints are available in php 7 only in PHPDoc @method
  • Bug: WI-29903: static $foo = array(CONST, 'literal'); considered an error when it's not
  • Bug: WI-15148: Type inference: Using brackets on an object should not indicate an array.
  • Bug: WI-3194: PHP: static variable initialization with missed literal is green
  • Bug: WI-25391: Variable variable for field property is colored as usual variable
  • Bug: WI-29833: Don't escape quotes on pasting array
  • Bug: WI-26366: Constant dereferencing produces "Expected semicolon"
  • Bug: WI-27570: yield used as expression marks variable as immediately overwritten and method as not found
  • Bug: WI-29199: Global variable variable is colored as variable
  • Usability: WI-28998: Incorrect 'smart escaping' of single quotes when paste fragments with dot notation
  • PHP templates:
  • Bug: WI-26059: Blade: TODOs inside Laravel Blade comments are not recognized
  • Bug: WI-26236: Blade template incorrect application of comments in native blocks
  • Exception: WI-29523: Blade: exception on commenting in php
  • Exception: WI-29174: Blade: Invalid ranges during formatting exception is thrown on pasting code with php comment
  • PHP test:
  • Feature: WI-29779: Behat 3: print tests statistic at the end of execution
  • Bug: WI-24022: Behat: Number of executed scenarios is always 0 in test runner tab
  • Bug: WI-25817: Behat: IDE Does not show PHP errors in hooks in Behat's "Run" console (Behat 3)
  • Bug: WI-24615: Behat 3 fails without any details in case duplicate step definition
  • Usability: WI-29767: Behat: print more information when "verbose" mode is enabled
  • Usability: WI-29425: PHP Warning: substr_compare(): The start position cannot exceed initial string length in
  • No subsystem:
  • Task: WI-29473: Blade: Remove red error highlighting on html 'Closing tag matches nothing'
  • PHP Run:
  • Performance: WI-27636: Cache Vagrant ssh-config
  • No subsystem:
  • Usability: IDEA-147151: IDE GUI reports expiration date even if the build is under fallback license
  • Usability: IDEA-147859: License dialog shows information message with date in local format, while error message with date in default format
  • Database:
  • Bug: IDEA-148088: Stack overflow in DB console when many messages come from PostgreSQL
  • Bug: IDEA-148208: Cannot resolve escaped camel case table name in @Language Injections
  • Bug: IDEA-148805: You can not see the execution plan for a query if there are parameters
  • Bug: IDEA-148131: After Upgrade to RubyMine 8
  • Bug: IDEA-140703: Database tool window: on navigation to database elements group nodes ("tables", "columns") are not expanded
  • Bug: IDEA-141990: Schemas once added to Database tree view are not removed on synchronization (Oracle)
  • Bug: IDEA-148140: Data source empty after updating to 15.0.2 EAP
  • Configuration Problem: IDEA-147469: Can't connect to HBase using Apache Phoenix driver
  • Editor. Editing Text:
  • Bug: IDEA-146507: Emacs Tab fails to indent highlighted text
  • SQL:
  • Bug: IDEA-146765: jsonb_path_ops not recognized when creating index syntax
  • User Interface:
  • Bug: IDEA-146980: Buy and Eval buttons disabled after error messages in License server or JBA options
  • Cosmetics: IDEA-147045: License dialog: Links 'More info...' and 'Forgot?' become black
  • DB.Connectivity:
  • Bug: DBE-1443: Error Loading Databases over SSH
  • DB.Console:
  • Bug: DBE-1768: Running MySQL query fails to break statements if they begin with comment
  • Bug: DBE-1802: Unable to set default schema for read-only connections
  • Bug: DBE-1826: MariaDB Parsing Issue
  • Bug: DBE-1929: Run query in console intention is not available for generic dialect
  • Bug: DBE-1731: Exception when executing SQL from backup file with big inserts (more than 1 MB)
  • Bug: DBE-1422: Edit data in query results
  • DB.Introspection:
  • Bug: DBE-430: Exception thrown when trying to open a stored proc definition
  • Bug: DBE-1373: MSSQL: Altering a Procedure/View should go via an ALTER statement
  • Bug: DBE-1786: "definition is not available or empty" when trying to view some stored procedures on Sybase ASE
  • Bug: DBE-1787: MSSQL: NVARCHAR data type shown as SYSNAME
  • DDL\PL.Editor:
  • Bug: DBE-1041: DB2: Text tab is empty in the table view for all tables
  • Bug: DBE-1964: ALTERTE insted of ALTER on Stored Procedure edit
  • Data.Viewer:
  • Feature: DBE-1637: Allow for search in table
  • Bug: DBE-458: Table editor: CTID column is queried for Redshift
  • Bug: DBE-1656: Database update reverts
  • Bug: DBE-1984: throw excepiton when used sql grammar like union
  • Bug: DBE-561: Database: Oracle table saved as SQL insert statements has wrong format for date types
  • IDE.User Interface:
  • Bug: DBE-1917: User parameter value cannot be entered with Enter key
  • SQL.Generation:
  • Bug: DBE-1919: Default Live template sel is not usable.
  • SQL.Highlighting:
  • Feature: DBE-1272: Add PostgreSQL psql sub-dialect
  • Bug: DBE-1830: Regression: PostgreSQL composite type members not resolved
  • Bug: DBE-1253: Erroneous inspection warning
  • Bug: DBE-1828: All objects from default schema are not resolved
  • Bug: DBE-1854: Autocomplete works when editing SQL query, however fails after same query is "run in console"
  • Bug: DBE-1980: Fake comment in MySQL
  • Bug: DBE-1817: Table field resoving bug in SQL editor with MySQL dielect
  • No subsystem:
  • Bug: WEB-17926: Added jscs:ignore comments don't stack correctly
  • CSS:
  • Task: WEB-18957: Add support for will-change on CSS
  • CoffeeScript:
  • Bug: WEB-18985: CoffeeScript preview window incorrect size
  • Bug: WEB-18822: Coffeescript string formatting / interpolation
  • Debugger:
  • Feature: WEB-16337: debugging meteor packages stored in /packages directory does not work (both client & server)
  • Bug: WEB-18693: Many Internal errors in variables when debug TypeScript project
  • Bug: WEB-16397: ES6 with Babel, break point not working in original files
  • Bug: WEB-16972: 'Collecting data' is shown in debugger tooltips when debugging with sourcemaps
  • Bug: WEB-16829: "too soon" typescript breakpoints are not hit
  • Bug: WEB-18949: nodeJs v5: 'Cannot convert undefined or null to object' error when debug node.js project
  • Bug: WEB-18853: Debugger: debugging doesn't work with Node.js 5
  • Exception: WEB-19138: JavaScript Debugger cannot be started on Windows/Unix
  • Exception: WEB-19273: TypeError: Cannot read property 'length' of undefined when do 'Step into'
  • JavaScript:
  • Bug: WEB-7157: Variable to which the result of 'require' call is assigned is not highlighted as unused
  • Bug: WEB-18699: Attribute not allowed here
  • Bug: WEB-16614: ES7: function bind
  • Bug: WEB-18305: Flow: recognize type any
  • Bug: WEB-18395: @JSDoc TODO tag bad parsing
  • Bug: WEB-18728: require does not correct resolve module.exports
  • Bug: WEB-18815: ReactJS: JSX syntax not recognized in script of "text/jsx" type
  • Bug: WEB-18448: Flow: recognize mixed primitive type
  • Bug: WEB-18632: Inspection error with ES6 syntax of export as
  • Performance: WEB-19137: Slow JS index processing
  • Exception: WEB-18847: Indexing crashes code inspection
  • JavaScript. Formatter:
  • Bug: WEB-18983: Formatter: restore default behavior in "Spaces Before Parentheses" for "Function call parentheses" option
  • Bug: WEB-19076: Whitespaces around 'instanceof' are stripped if 'Relation operators' is not chosen
  • JavaScript. Frameworks:
  • Bug: WEB-18931: Yeoman project can not be created on a mounted drive
  • Bug: WEB-19189: Meteor: "Import packages as library" does not include JSX files, e.g. from react-meteor-data
  • JavaScript. Inspections:
  • Feature: WEB-18715: wrong positive on "Mutable variable is accessible from closure" or on temporarily suppressing errors using annotations
  • Bug: WEB-19199: JSCS: Import Code Style: duplicate messages in the Log for file with unknown rules/without rules
  • Bug: WEB-18885: ESLint: 'Additional rules directory' option is ignored
  • Bug: WEB-18496: Some issues with JSCS integration
  • Usability: WEB-16817: JSCS: Import code styles: improve dialog
  • Exception: WEB-19196: JSCS: Import Code Style: NPE on importing "validateIndentation" rule
  • JavaScript. Refactoring:
  • Feature: WEB-18807: Update JSDoc @param annotations when changing function signature.
  • Node.js:
  • Feature: WEB-18969: Node.js: support completion in require() from folders marked as resource roots
  • Bug: WEB-19190: Node.js Core library: http.ServerResponse methods not resolved
  • Bug: WEB-18919: Missing module dependency: disable for paths using template strings in require
  • Bug: WEB-18951: NodeJS: cannot resolve modules from several resource roots
  • SASS:
  • Bug: WEB-18869: A single unit inside calc is recognized as a syntax error
  • TypeScript:
  • Feature: WEB-18345: tsconfig.json changes not recoginized in real-time
  • Feature: WEB-17755: TypeScript: implement correct type recognition inside Object literal
  • Bug: WEB-18643: False positive error with type cast in TypeScript, 'new' and untyped 'var'
  • Bug: WEB-19302: TypeScript: auto-import cannot recognize closest definition file depending on how entity is exported
  • Bug: WEB-18888: Typescript generics in constructor-function of Angular's $q-service doesn't work
  • Bug: WEB-18898: RubyMine 8 consistently consuming 100% cpu
  • Bug: WEB-19099: TypeScript class index declaration formatting is wrong
  • Bug: WEB-19000: TypeScript: Default initializers on required parameters
  • Bug: WEB-19151: TypeScript abstract class members implementation loses visibility modifier
  • Unit Tests:
  • Bug: WEB-14390: Karma: 'jump to source' doesn't work for tests wrapped in define()
  • Bug: WEB-19011: Mocha: "File pattern" option should be handled as multiple cli arguments
  • Bug: WEB-19035: Error message is not shown in console when debug Karma test

New in PhpStorm 10.0.2 Build 143.1212 EAP (Dec 3, 2015)

  • From the PHP side, this build delivers:
  • Primitive types completion in PHPDoc;
  • Improved completion of self, parent and static keywords;
  • Space control before anonymous function parenthesis (optional);
  • Bug fixes and improvements:
  • WI-21796 — Don't want the space between anonymous functions
  • WI-14957 — Semicolon after use statement for trait imports should be marked as error
  • WI-27636 — Cache Vagrant ssh-config
  • WI-2686 — on completion of "self", double colon should be inserted
  • WI-13817 — No autocomplete for scalar types in phpdoc
  • WI-29903 — static $foo = array(CONST, 'literal'); considered an error when it's not
  • WI-11977 — The IDE does not suggest primitive types in @var declarations
  • WI-21320 — array_key_exists should add fields to autocomplete for square brackets
  • WI-17675 — Array completion for string contains statements
  • WI-14530 — If there is a class that uses trait completion will suggest this trait after "new" statement
  • WI-28788 — Methods and fields are suggested in the namespace context
  • WI-29913 — Provide completion for self, static, parent after new
  • WI-29912 — Provide completion for static and $this in PHPDoc type
  • WI-29898 — Provide completion for self and parent in argument and return type
  • WI-29889 — Typo in inspection - "Remove all unused parameter"
  • WI-29876 — Rename PHP 7 readiness inspection to PHP 7 Compatibility Inspection
  • WI-29860 — Methods defined in trait are ignored during stubs generation
  • WI-29833 — Don't escape quotes on pasting array
  • WI-29678 — Type declarations completion
  • WI-29336 — Extract interface insert implements in incorrect position for anonymous class

New in PhpStorm 10.0.2 Build 143.1044 EAP (Nov 26, 2015)

  • Highlights:
  • Improved path and code completion;
  • Improved parsing of static variables;
  • Improved feedback during Behat execution;
  • Bug fixes and improvements:
  • WI-7989 — Inject file references after __DIR__ on Ctrl-[Shift/Alt]-Space - for file path completion etc.
  • WI-29509 — Broken parsing of methods returning reference with a space between reference and method name
  • WI-14531 — After keyword "use" in class completion should suggest only traits
  • WI-24615 — Behat 3 fails without any details in case duplicate step definition
  • WI-3194 — PHP: static variable initialization with missed literal is green
  • WI-28837 — DOMDocument::loadHTML synopsis is incomplete
  • WI-24054 — Completion of imported functions/constants inserts :: after items
  • WI-24022 — Behat: Number of executed scenarios is always 0 in test runner tab
  • WI-29054 — use function autocomplete appends brackets at the end of function names
  • WI-29898 — Provide completion for self and parent in argument and return type
  • WI-29844 — Autocomplete usage inserts unwanted dollar sign
  • WI-29826 — Page at https://www.jetbrains.com/phpstorm/help/keyboard-shortcuts-you-cannot-miss.html shows broken key combos
  • WI-29779 — Behat 3: print tests statistic at the end of execution
  • WI-29767 — Behat: print more information when "verbose" mode is enabled
  • WI-29766 — Broken parsing of methods before PHPDoc before function name
  • WI-29685 — Static variable with function is considered valid (while it's syntax error)
  • WI-29642 — Missing MongoBinData::UUID_RFC4122 constant in built-in documentation
  • WI-28873 — static $x = new Foo(); not recognized as error in function
  • WI-25817 — Behat: IDE Does not show PHP errors in hooks in Behat's "Run" console (Behat 3)
  • PHP Completion:
  • Feature: WI-7989: Inject file references after __DIR__ on Ctrl-[Shift/Alt]-Space - for file path completion etc.
  • Feature: WI-14531: After keyword "use" in class completion should suggest only traits
  • Bug: WI-29844: Autocomplete usage inserts unwanted dollar sign
  • Bug: WI-29054: use function autocomplete appends brackets at the end of function names
  • Bug: WI-24054: Completion of imported functions/constants inserts :: after items
  • PHP lang:
  • Bug: WI-29712: PHP TODO: Closing "**/" should not be highlighted
  • Bug: WI-29685: Static variable with function is considered valid (while it's syntax error)
  • Bug: WI-29766: Broken parsing of methods before PHPDoc before function name
  • Bug: WI-28873: static $x = new Foo(); not recognized as error in function
  • Bug: WI-29509: Broken parsing of methods returning reference with a space between reference and method name
  • Bug: WI-3194: PHP: static variable initialization with missed literal is green
  • PHP test:
  • Feature: WI-29779: Behat 3: print tests statistic at the end of execution
  • Bug: WI-24022: Behat: Number of executed scenarios is always 0 in test runner tab
  • Bug: WI-25817: Behat: IDE Does not show PHP errors in hooks in Behat's "Run" console (Behat 3)
  • Bug: WI-24615: Behat 3 fails without any details in case duplicate step definition
  • Usability: WI-29767: Behat: print more information when "verbose" mode is enabled
  • No subsystem:
  • Bug: IDEA-147946: IntelliJ IDEA 15 started on MacOS under TeamCity agent from command line fails with java.awt.HeadlessException
  • Bug: IDEA-145931: Garbage text when viewing JDK Javadoc
  • Bug: IDEA-147516: Resizing vertically split editor also selects text in the right hand editor
  • Bug: IDEA-147693: Quick Definition functionality
  • Code Analysis. Dependencies:
  • Bug: IDEA-147531: The icons in the upper right panel of dependency viewer behave very strange
  • Bug: IDEA-147449: Dependency Viewer does not aggregate correctly
  • Code Analysis. Inspection:
  • Bug: IDEA-136449: Spurious "cannot resolve symbol" on string literal from "injected references" inspection
  • Diff_Merge: Usability: IDEA-147533: Behavior of Next Difference action in three-way merge window regressed from version 14.x
  • Editor. Editing Text:
  • Bug: IDEA-140542: Forward navigation to already navigated items (ctrl + alt + right )) seems to be broken
  • Bug: IDEA-147590: Mac ctrl-k shortcut in multiselect only operates on last cursor
  • Editor. Intention Actions: Usability: IDEA-146645: "Add method contract" and the like intentions available everywhere should be made low priority
  • File System:
  • Bug: IDEA-147814: IntelliJ keep jar file opened even after closing the project window
  • Find, Replace, Find Usages: Usability: IDEA-147570: "Find Next Occurrence" command does not remove extra carets
  • IDE Configuration:
  • Bug: IDEA-148084: npm scripts runner cannot find nodejs binary
  • Java. Intention Actions:
  • Bug: IDEA-147973: Memory leak detected in QuickEditHandler
  • Packaging and Installation:
  • Bug: IDEA-130951: IDEA doesn't apply updates when running with the "nosplash" argument.
  • Refactoring:
  • Bug: IDEA-147589: failed refactoring prevents further refactoring
  • Settings Repository:
  • Bug: IDEA-144970: Settings Repository fails to read/merge
  • User Interface:
  • Bug: IDEA-143450: HiDPI on Win7: IDEA splash screen is truncated with text size set to larger (150%)
  • Bug: IDEA-148145: EditorGutter's extra space appeared
  • Bug: IDEA-146637: Border is off on the tool window's title
  • Bug: IDEA-137697: Sometimes editor starts scrolling on its own
  • Bug: IDEA-144730: HiDPI broken in 142.4491
  • Version Control:
  • Bug: IDEA-148286: Version Control: "select in git log" action from Annotations should be disabled for non-git projects or navigate to revisions lists
  • Bug: IDEA-138583: Version control gets stuck when grouping by client
  • Performance: IDEA-148148: Repeated freezes while editing text
  • Usability: IDEA-147618: Let add a Keymap shortcut to open the "Local Changes" tab by a single action
  • Usability: IDEA-147655: revert button at top level now reverts ALL files without warning Pycharm 5
  • Usability: IDEA-90988: "Delete local copies of added files" is not available if revert action is called from existing files
  • Version Control. Git:
  • Performance: IDEA-143358: Project leak (Git authenticator)
  • Usability: IDEA-147758: “Show in Git log” menu item missing in annotate pop-up
  • Version Control. Log:
  • Bug: IDEA-147797: Branch popup menu appears only after commit details are loaded.
  • Version Control. Perforce:
  • Bug: IDEA-147943: Perforce Jobs does not function
  • Version Control. Subversion:
  • Bug: IDEA-145934: svn commit not working at all
  • Bug: IDEA-145355: Subversion: with 'autoupdate after commit' option switched on, LocalChanges view is not refreshed after commit
  • DB.Connectivity:
  • Bug: DBE-1202: Does not connect to MySQL certified by rds-ca-2015
  • No subsystem:
  • Bug: WEB-17926: Added jscs:ignore comments don't stack correctly
  • Debugger:
  • Exception: WEB-19138: JavaScript Debugger cannot be started on Windows/Unix
  • JavaScript:
  • Bug: WEB-18448: Flow: recognize mixed primitive type
  • Performance: WEB-19137: Slow JS index processing
  • Exception: WEB-18847: Indexing crashes code inspection
  • JavaScript. Inspections:
  • Bug: WEB-19112: ESLint: false "linebreak-style" reported
  • Bug: WEB-18496: Some issues with JSCS integration
  • Bug: WEB-19092: Extra eslint options cannot be removed
  • Usability: WEB-16817: JSCS: Import code styles: improve dialog
  • Node.js:
  • Bug: WEB-19190: Node.js Core library: http.ServerResponse methods not resolved
  • Performance: WEB-18980: WebStorm hangs often after installing packages using npm 3
  • SASS:
  • Bug: WEB-18869: A single unit inside calc is recognized as a syntax error
  • TypeScript:
  • Feature: WEB-18345: tsconfig.json changes not recoginized in real-time
  • Feature: WEB-17755: TypeScript: implement correct type recognition inside Object literal
  • Bug: WEB-18643: False positive error with type cast in TypeScript, 'new' and untyped 'var'
  • Bug: WEB-19000: TypeScript: Default initializers on required parameters
  • Bug: WEB-18888: Typescript generics in constructor-function of Angular's $q-service doesn't work
  • Bug: WEB-19099: TypeScript class index declaration formatting is wrong
  • Bug: WEB-19151: TypeScript abstract class members implementation loses visibility modifier
  • Vagrant:
  • Bug: PY-13998: Can't get Remote Python Interpreter to find private key
  • YAML:
  • Bug: RUBY-14864: highlighting yaml >- blocks
  • Bug: RUBY-16796: The YAML syntax highlighting doesn't handle linebroken scalar values.
  • Bug: RUBY-17414: Multiline double quoted scalars with escaped newlines are not parsed correctly
  • Bug: RUBY-13802: incorrect yaml comment highlighting

New in PhpStorm 10.0.2 Build 143.790 EAP (Nov 12, 2015)

  • The most important changes from PHP side include:
  • Context sensitive code completion for keywords
  • Improved type and tags completion in PHPDoc
  • New inspection: variable variable usage
  • and many other bug fixes.

New in PhpStorm 10.0.1 Build 143.382 (Nov 11, 2015)

  • Focused on various bug fixes from the web & IntelliJ platform sides.

New in PhpStorm 10 Build 143.381.48 (Nov 2, 2015)

  • Distribution packages:
  • Bug - WI-29225 - Add bundled tools.jar to the classpath in phpstorm.sh
  • Injections in PHP:
  • Bug - WI-28867 - Persistent language injection doesn't work for strings without assignment
  • Bug - WI-25707 - Custom SQL parameters with double brackets (MySQL)
  • PHP Completion:
  • Feature - WI-17528 - Code completion when overriding class properties with new default values
  • Feature - WI-9210 - Name suggestion: foreach value name by foreach array name
  • Feature - WI-8035 - Getters and setters autocomplete proposal like in IntelliJ
  • Feature - WI-16918 - Autocomplete method name and signature when overriding parent
  • Feature - WI-6223 - Complete parens after function-like constructs (isset etc)
  • Feature - WI-28812 - Provide completion for methods when implementing interface
  • Bug - WI-28579 - Unnecessary class import when autocompleting class constant
  • Bug - WI-29057 - '$' is not completed for global variables in some cases
  • Bug - WI-18070 - No autocomplete inside list() statement
  • Bug - WI-29209 - No function or method autocompletion in foreach
  • Bug - WI-7050 - PHP: code completion: suggestions after "parent::" could be improved
  • Bug - WI-13510 - Private Trait Method autocomplete is not working
  • Bug - WI-28811 - Function keyword inserted twice if function name starts with f
  • Bug - WI-28810 - Completion should take into account final modifier
  • Bug - WI-28858 - Getters and setters shouldn't be suggested for constants
  • Bug - WI-28859 - Getters and setters completion shouldn't suggest private fields of parent classes/traits
  • Bug - WI-28806 - Autocomplition for static class methods works incorretly
  • Usability - WI-22118 - No autocompletition for function and constants in namespace
  • Usability - WI-28862 - Remove "" from completion list after @lang
  • Usability - WI-28860 - Don't suggest completion for getter/setter if there is already a keyword before
  • Usability - WI-28861 - Provide getter/setter completion for trait
  • Usability - WI-28676 - Show only variables in completion for list
  • Usability - WI-26877 - Provide completion for possible injections after @lang
  • Usability - WI-29387 - Provide completion for classes that implements Throwable
  • Exception - WI-28889 - Remove JS in HTML from completion list
  • PHP Formatter:
  • Bug - WI-22616 - Bad Code Style "Set from..." Symfony2 or PSR1/PSR2
  • Bug - WI-25227 - Reformat is not keeping blank lines inside array
  • Bug - WI-13679 - New line in Symfony2 annotations
  • Bug - WI-29300 - Additional indent is inserted in PHPDoc if caret is located after ()
  • Bug - WI-28352 - Comment for throws tag in phpdoc is lost after updating phpdoc block
  • Bug - WI-28144 - Comment indention doesn't respect formatting settings
  • Usability:
  • WI-24511 - Keep comments together with return statement
  • PHP Inspections:
  • Bug - WI-12281 - Illegal array key type: Wrong warning about illegal key type on SplObjectStorage
  • Bug - WI-19175 - Nested switch statements with returns incorrectly states a return statement is missing
  • Bug - WI-29414 - PHP 7 readiness inspection detect usage of forbidden class names only in declaration
  • Bug - WI-21613 - "Variable might have not been defined" wrongly reported when using finally {}
  • Bug - WI-29325 - Unnecessary use statement is shown for group use statement
  • Bug - WI-28456 - Null Coalesce Operator creates not initialized warning
  • Bug - WI-12654 - Type inference: "instanceof" inference type hinting is exclusive
  • Bug - WI-25776 - Update PHPDoc doesn't handle variadic
  • Usability:
  • WI-29140 - Properly use of the 'Before' section of intention descriptions
  • PHP Refactoring:
  • Feature - WI-5695 - Extract method: detect duplicates
  • Bug - WI-29123 - Inplace rename: field renaming affects all variables with the same name
  • Bug - WI-29117 - Inplace rename: doesn't handle class aliases
  • Bug - WI-29118 - Inplace rename: Exception is thrown on invalid renaming of FQN class
  • Bug - WI-29119 - Inplace rename: Don't invoke inplace for parent,self and static
  • Bug - WI-29029 - Rename refactoring suggests a variable name with a namespace separator
  • Bug - WI-28315 - Extract interface: treat scalar types as classes and drop return type
  • Bug - WI-28313 - Move class imports unnecessary use statement
  • Bug - WI-29363 - Exception is thrown in AutomaticRenamer if anonymous class is returned
  • Bug - WI-29194 - Extract method: search duplicates replaces newly created PHPDoc
  • Bug - WI-28914 - Inplace rename: doesn't work if first appearence for variable is inside PHPDoc
  • Bug - WI-29395 - Optimize import always remove group use statement
  • Bug - WI-29192 - Extract method: search duplicates should distinguish declaration and usage
  • Bug - WI-28995 - Creating interface from 'class implements " context menu should generate an interface instead of class.
  • Bug - WI-27150 - PHP: rename directory does'nt update require ' ' path
  • Bug - WI-29161 - Exclude parameter from duplicate search In Extract Method refactoring
  • Bug - WI-29162 - Extract method: duplicate search replace already refactored code
  • Bug - WI-28282 - Extract Interface: Replacing class references where possible removes [] from docblocks when annotating arrays of classes
  • Usability - WI-28316 - Disable extract refactorings for return types
  • Usability - WI-28868 - Disable extract constant for type in PHPDoc
  • Exception - WI-29116 - Inplace rename: throws exception after renaming constructor to __construct
  • Exception - WI-29335 - Attempt to rename anonymous class lead to Exception
  • Exception - WI-28920 - Inplace rename: renaming constant/functions to keyword lead to exception
  • Exception - WI-29160 - Extract method: exception is thrown on replacing duplicates with selection of 2+ identical statements
  • PHP debug:
  • Feature - WI-5370 - Immediate/interactive code execution in context during debug session
  • Bug - WI-28616 - Debug console: complete variables in local scope
  • Bug - WI-28605 - Validate Debugger Configuration fails because of "Unexpected format"
  • Bug - WI-28706 - STDIN ignored while console debugging
  • Performance - WI-20864 - Addition of debug server is very slow if include path contains a lot of directories
  • Usability - WI-27928 - Allow to enable "Break at first line" and navigate to PHP|Servers from the warning tooltip
  • Usability - WI-27903 - Import deployment path mappings from 'Local or Mounted Folder"
  • Usability - WI-28564 - Debug console: Show error message in case of error evaluating code
  • Exception - WI-28556 - Debug console: Exception is thrown if the text inside editor is changed and focus is moved to console
  • PHP lang - Feature - WI-28498 - Support PHP7 UTF-8 sequences in strings
  • Feature - WI-24237 - Set PHP Template Language automatically from file extension
  • Feature - WI-27469 - Support Group use declarations
  • Feature - WI-27713 - Support PHP 7 Context sensitive lexer (allows use keywords for Method names )
  • Bug - WI-28935 - Dataflow: outside variable in closure is not considered for dataflow to
  • Bug - WI-28934 - Dataflow: constructor is not considered in flow to here
  • Bug - WI-28938 - Dataflow: from here doesn't consider statement with more than one usage
  • Bug - WI-28836 - Don't transform new line into \n on copy/paste
  • Bug - WI-29089 - Intentions -> "Replace Quotes" zaps whitespace into \t and \n representation.
  • Bug - WI-29110 - Dataflow: produces infinite tree for shortcut operations (+=, -=,...)
  • Bug - WI-28871 - Missing second operand in null coalesce operator should produce parse error
  • Bug - WI-28900 - Function that return reference &func_name doesn't have name
  • Bug - WI-28681 - "Copy" checkbox behaves as "Default" for __construct
  • Bug - WI-8638 - Parser should have a ASP-style tags option disabled by default.
  • Bug - WI-29331 - Anonymous Classes with constructor parameter are not supported
  • Bug - WI-28940 - Dataflow: from here doesn't consider unary statements
  • Bug - WI-28941 - Dataflow: from here doesn't consider control statements
  • Bug - WI-13801 - PHP: 'Replace quotes' intention should escape special characters
  • Bug - WI-29107 - Dataflow from: doesn't include throw statement
  • Bug - WI-29106 - Dataflow: take into account only first argument for variadic function
  • Bug - WI-23932 - Bad complete statement on if-comment-statement
  • Bug - WI-29324 - Group use declarations don't produce errors in PHP branch mapping
  • Bug - IDEA-145185 - Perforce Shelve: consider the 'checked' and 'unchecked' status for nodes
  • Bug - IDEA-145183 - Perforce Shelve: refresh is required after unshelving change
  • Performance - IDEA-137304 - Reverting "modified without checkout" files executes 2 p4 commands for each file
  • Usability - IDEA-145242 - Perforce shelve: treat attempt to commit changelist with shelved files more user-friendly
  • Usability - IDEA-145204 - Perforce shelve: don't suggest to remove changelist with shelved files on making it non-active
  • Exception - IDEA-144331 - NPE at org.jetbrains.idea.perforce.perforce.connections.P4ConfigHelper.findDirWithP4ConfigFile
  • XML - Feature - IDEA-108499 - An easy way to add XML schema boilerplate when just typing a file from scratch
  • Bug - IDEA-145416 - XML refactoring: add attribute doesn't allow - in the name
  • Bug - IDEA-143193 - Wrong popup info for not registered URI
  • Bug - IDEA-146094 - Whitespace+dash messes up XML Line comment conversion
  • ..(please choose one).. - Bug - DBE-1566 - Structure of MySQL fragment is nested to infinity. And perhaps beyond!
  • DB.Connectivity - Cosmetics - DBE-1534 - Typo in Data sources and drivers dialog
  • DB.Console - Feature - DBE-1237 - Export SQL script to file
  • Feature - DBE-442 - Stream Data for Save/Copy to File
  • Bug - DBE-1608 - MS SQL - Unable to use variables in queries
  • Bug - DBE-1382 - Interrupting query disallows further queries (MySQL)
  • Bug - DBE-1185 - SQL Injection parameters in FROM clause are not recognized
  • Bug - DBE-981 - PostgreSQL: data source at Database Tool Window is not refreshed on table creation is SELECT ... INTO is used for it
  • Bug - DBE-1017 - Editor's tab can show incorrect schema in case of reconnet
  • Bug - DBE-1719 - Unexpected popup Choose console in Sqlite DB
  • Bug - DBE-1729 - Oracle Export, Session stays Locked by @Owner
  • Bug - DBE-1422 - Edit data in query results
  • Bug - DBE-1217 - SQL console data view results: when query a table and a view at the same time - it is not possible to insert a row in a quired *table*
  • Bug - DBE-1215 - Sql console: current schema in not remembered upon restart
  • Exception - DBE-1157 - Database Console Result Tabs: java.lang.IllegalStateException: @NotNull method if you close tab while query is still running
  • Exception - DBE-1304 - ClassCastException: at com.intellij.sql.script.SqlScriptModel.getResultTypeInner(SqlScriptModel.java:140)
  • DB.Introspection - Feature - DBE-1489 - Allow to re-introspect a database manually
  • Bug - DBE-1135 - Initial selection in Schemas & Tables is ignored
  • Bug - DBE-1527 - Index already contains column error
  • Bug - DBE-1246 - PostgreSQL - Schema view and "Copy DDL" incorrect on NUMERIC(x,x) types
  • Bug - DBE-1342 - 'information_schema.c.CONSTRAINT_TYPE' isn't in GROUP BY
  • Bug - DBE-705 - Oracle NUMBER columns are not being displayed correctly
  • Bug - DBE-1530 - MySQL: Primary key with multiple columns gets introspected incorrectly
  • Bug - DBE-1446 - Database Tool Window doesn't filter Schemas of PostgreSQL Datasource
  • Bug - DBE-428 - Relation "pg_collation" does not exist with Postgres < 9.1
  • Bug - DBE-1285 - MS_SQL: Cannot insert a row with the table editor for SQL Server when IDENTITY_INSERT is set to OFF for that table's primary key.
  • Bug - DBE-1658 - Editing MySQL table with bit column produces invalid default value
  • Bug - DBE-1438 - Synchronize button is inactive
  • Bug - DBE-1398 - MySQL Synchronization Error
  • Bug - DBE-1341 - Native introspector for MySQL 5.1 failed to load routine parameters
  • Bug - DBE-62 - Cannot open procedure in a package (Oracle)
  • Usability - DBE-422 - Add object type grouping for tree in Database tool window
  • DB.Refactoring - Bug - DBE-873 - Create new column should quote reserved keywords
  • DDL\PL.Editor - Bug - DBE-1372 - The default reload hotkey within altering stored procs/views/etc is also mapped to Fearch/Replace (Ctrl+R)
  • Bug - DBE-439 - The shortcut for compilation of stored procedures does not work
  • Data.Viewer - Feature - DBE-319 - Joins Produce Ambiguous Column Names
  • Feature - DBE-293 - JSON editor for Postgres
  • Feature - DBE-956 - Table Editor: allow to edit PostgreSQL arrays
  • Feature - DBE-1145 - Cannot remove or add columns in CSV data view
  • Feature - DBE-1103 - Database Result Set Page indicator
  • Bug - DBE-1607 - DataGrid: enforce single row updates when using cell editors
  • Bug - DBE-1601 - NPE when going to Last Page
  • Bug - DBE-1255 - Data Viewer shows incorrect result
  • Bug - DBE-1022 - SQL data extractor incorrectly extracts data for JSONx and ARRAY field types in PostgreSQL
  • Bug - DBE-1747 - MySQL Data Extractor: Wrong table name in generated sql-file
  • Bug - DBE-1201 - PostgreSQL: date editor cannot be used to edit columns with 'interval' data type
  • Bug - DBE-1700 - SQL Insert/Update Extractor not working for bit columns in MS SQL
  • Bug - DBE-1403 - Improve Oracle XMLTYPE handling.
  • Bug - DBE-1121 - Not possible to edit HSTORE fields in postgres DB
  • Bug - DBE-1330 - Function Editor: Refresh action refreshes all opened views for the same DB object
  • Bug - DBE-1420 - Values of Postgres MONEY type cannot be edited in a table editor
  • Bug - DBE-1757 - Undo (Ctrl-Z) doesn't work when typing in the Filter Criteria input
  • Bug - DBE-1173 - Postgres Hstore columns rendered incorrectly with JSON extractor
  • Bug - DBE-1339 - oracle timestamp not sortable in table view
  • Bug - DBE-1308 - XSS in quick documentation for DB table when column type is BLOB
  • Bug - DBE-1367 - MSSQL: Data view for views containing errors (any) merely show no data, error is suppressed 142.2675.6
  • Bug - DBE-1483 - deleting rows from a simple select raises ArrayIndexOutOfBoundsException
  • Bug - DBE-1503 - Create update delete query on replications
  • Bug - DBE-1349 - PageUp and PageDown Keyboard Keys Don't Work in Results Grid (Data View)
  • Bug - DBE-1617 - Impossible to validate the row filter
  • Bug - DBE-467 - Save to file silently fails when permission to write denied
  • Bug - DBE-1114 - row position is not preserved when transposing
  • Bug - DBE-1547 - "LastPage" in table data viewer works slowly
  • Bug - DBE-1722 - Trim whitespace doesn't work in case save to CSV file with quotation
  • Bug - DBE-1351 - order arrays in viewer
  • Bug - DBE-1306 - Go to Related data or Reference data does not filter the table with uuid postgres datatype
  • Usability - DBE-221 - Custom Type Handling/Coercion
  • Usability - DBE-1214 - Transpose action to be available from context in data view
  • Cosmetics - DBE-1546 - "Text" tab title should be renamed to "DDL"
  • IDE.General - Feature - DBE-1228 - TableDiff: compare with open tables
  • Bug - DBE-1679 - Export settings... action does not export databaseSettings.xml file
  • Bug - DBE-20 - 0xDBE: the project opened before leaving the application is not remembered
  • Bug - DBE-1216 - Data extractor for update sql with blob values does not generate correct hex string
  • IDE.User Interface - Bug - DBE-1557 - Cant make alert dissapear
  • Usability - DBE-142 - Date editor is weird
  • Usability - DBE-1536 - Not enough information for table indexes in Database browser
  • Usability - DBE-1472 - use the term "remove" instead of "drop" where actions do not actually DROP anything.
  • Cosmetics - DBE-1122 - The position of the button "Run"
  • Cosmetics - DBE-1179 - Data Sources and Drivers: label too small on High DPI.
  • Cosmetics - DBE-1519 - Wrong icon for SQL Server in Database tool.
  • SQL.Completion - Feature - DBE-1495 - No smart completion for join clause
  • Bug - DBE-1788 - MSSQL: Code completion does not work in scratch file
  • Bug - DBE-383 - MSSQL when use command is used I would ike to see the completion limited to the specific DB (or at least partially limit the scope)
  • SQL.Editing - Feature - DBE-1111 - Highlight values in SQL insert prepared statements by placing cursor on field
  • Feature - DBE-1039 - Shortcuts for navigation between statements and executing selected statements
  • Bug - DBE-1245 - LIMIT - OFFSET in DB2
  • Bug - DBE-1127 - SQL Live template "ins" is corrupted
  • Bug - DBE-1628 - PostgreSQL: Parse error in GRANT ... GRANTED BY
  • Bug - DBE-1582 - PostgreSQL: Parse error in GRANT x ON SEQUENCE
  • SQL.Highlighting - Feature - DBE-700 - PostgreSQL 9.4 filter clause support
  • Bug - DBE-1152 - T-SQL - support for 'with xmlnamespaces'
  • Bug - DBE-1328 - Postgres WITH ORDINALITY support
  • Bug - DBE-1550 - Postgres function jsonb_array_length unrecognized
  • Bug - DBE-1163 - False error in Oracle statement "alter database datafile� resize�"
  • Bug - DBE-461 - PostgreSQL: LIMIT/OFFSET may be an arbitrary expression, not just integer
  • Bug - DBE-1181 - Missing keyword definitions in db2 dialect
  • Bug - DBE-1299 - Postgresql syntax highlighting in HAVING clause
  • Bug - DBE-1213 - unknown db2 functions
  • Bug - DBE-501 - PostgresSQL Dialect not working with WINDOW alias clause
  • Bug - DBE-1270 - EXPLAIN UPDATE (valid in Postgres) causes syntax error + unability to execute it (UPDATE executes instead)
  • Bug - DBE-1763 - Don't show BEGIN/END on structure panel for a procedure
  • Bug - DBE-1468 - Incorrect comment highlighting as "statement-to-be-executed"
  • Bug - DBE-1312 - PostgreSQL: "show autocommit" is shown as a syntax error
  • Bug - DBE-1514 - PostgreSQL syntax not parsed correctly in PyCharm
  • Performance - DBE-1708 - High CPU usage when idle
  • No subsystem - Feature - WEB-16605 - Flow syntax extensions support
  • Feature - WEB-18436 - Make ES6 scratches executable
  • Bug - WEB-18313 - Code Analysis misreporting Coldfusion tags as html tag errors
  • Bug - WEB-17924 - JSCS package location is not re-detected
  • Bug - WEB-16174 - Reformat File: Incorrect alignment of multiline JavaScript function arguments
  • Bug - WEB-17839 - Internal web server reports 404 when serving files from project with slashes in name
  • Bug - WEB-17607 - TSLint warnings one line off
  • Bug - WEB-18214 - Project files don't reflect changes in library selection
  • Bug - WEB-16430 - ES6: `class A extends fn()` syntax doesn't work
  • Bug - WEB-18499 - Fix left margin for second level title in Yeoman generator
  • Bug - WEB-18153 - JSCS: respect excludeFiles property
  • Bug - WEB-17691 - built-in server doesn't serve files it doesn't have in the project tree
  • Bug - WEB-18769 - require('..') warns about module not being in package.json dependencies
  • Exception - WEB-17050 - PsiInvalidElementAccessException when switch between debugger tabs
  • Build tools - Feature - WEB-14873 - Gulp: synchronize VFS on gulp watch triggering
  • Feature - WEB-17917 - Gulp plugin does not sort the gulp tasks in alphabetical order
  • Bug - WEB-13726 - Error reading gulpfile.coffee
  • Bug - WEB-18229 - Gulp: Jump to source with gulpfile.babel.js does not work
  • Bug - WEB-17736 - Run Gulp Task popup does not preserve current Selection once task list is reloaded.
  • Bug - WEB-18415 - npm scripts: Run Gulp/Grunt Task popup is jumping when switching to the "npm" choice
  • Bug - WEB-18410 - npm scripts: correctly start multiple scripts from Run Configuration
  • Bug - WEB-18411 - npm scripts: RC: disable "Scripts" field in case of not run-script command selected
  • Bug - WEB-18418 - npm scripts: on running not default command no arguments are set
  • Bug - WEB-18419 - npm scripts: errors while building scripts tree should be possible to see
  • Bug - WEB-18289 - npm scripts: can't select package.json
  • Bug - WEB-17900 - Grunt console is not setting env variable PWD
  • Bug - WEB-16898 - Gulp: tasks can't be listed if the std output contains text in square brackets
  • Bug - WEB-18320 - npm scripts do not run on Windows
  • Cosmetics - WEB-18413 - npm scripts: change name of the opened npm Settings
  • CSS - Feature - WEB-16728 - Support Polymer custom CSS mixins
  • Feature - WEB-17950 - CSS breadcrumbs
  • Feature - WEB-212 - CSS, common font names won't autocomplete
  • Bug - WEB-18145 - -webkit-background-clip with value 'text'
  • Bug - WEB-17937 - color: rebeccapurple not recognized
  • Bug - WEB-17287 - Mismatched property value with calc()
  • Performance - WEB-15779 - Lazy loading of css descriptors
  • Task - WEB-15537 - Emmet: Change $VAR0$ variables to $END$ in templates which has single variable
  • CoffeeScript - Bug - WEB-15875 - coffeescript codestyle blanklines EAP 10
  • Bug - WEB-15669 - CoffeeScript: Red code: splat inside function definition
  • Bug - WEB-18523 - 143.88 doesn't remember code style setting for Coffee
  • Bug - WEB-16413 - coffeescript inspection does not support Destructuring Assignment syntax
  • Bug - WEB-18637 - coffeescritpt parse error
  • Bug - WEB-17096 - Coffeescript destructing assigment: false positive unused parameter reporting
  • Bug - WEB-17931 - CoffeeScript: false positive "Unused variable" reporting in catch block
  • Bug - WEB-18561 - coffeescript parse error
  • Bug - WEB-15643 - CoffeeScript: Red code: empty yield statement
  • Bug - WEB-18479 - Syntax problem in javascript files when coffee and erb preprocessor is used
  • Bug - WEB-18501 - JQuery selectors are only resolved when a colon is present
  • Bug - WEB-18642 - params error
  • Bug - WEB-18785 - CoffeeScript object literal indentation too few indents
  • Debugger - Feature - WEB-15467 - copy / paste debugger watch values as JSON string
  • Bug - WEB-16711 - Debugger: don't step into library files on Step Over if there are no breakpoints there and 'step into library scripts' is disabled
  • Bug - WEB-18074 - Meteor ES6: server-side debugging doesn't work
  • Bug - WEB-17234 - org.jetbrains.concurrency.Promise$MessageError: Connection closed
  • Bug - WEB-17468 - Breakpoints in Typescript not working in EAP 11
  • Bug - WEB-18160 - Debugger does not stop on breakpoints in node_modules sources
  • Bug - WEB-17608 - Server-side debug in Meteor. Debugger does not stop on breakpoints .
  • Bug - WEB-16808 - When debugging in Chrome, 'Watches' section shows 'undefined' for variable that appears correctly in 'Variables' section
  • Bug - WEB-14000 - Webpack sourcemap support
  • Bug - WEB-18080 - JS console doesn't print log messages any more
  • Exception - WEB-18667 - cannot debug with Chinese characters in the path
  • Exception - WEB-17632 - Dart: Debugger: on starting Debug session in the Dartium browser exception is thrown
  • Exception - WEB-15645 - Debug: Grunt: com.google.gson.JsonParseException on Step Into
  • Exception - WEB-17526 - Debugger: InvocationTargetException on session stop with "Mute Breakpoints" option enabled
  • File Watchers - Bug - WEB-18147 - File watchers: file watchers don't listen to changes in files generated by other watchers
  • Bug - WEB-16900 - files constantly saving while editing
  • Bug - WEB-13172 - File Watchers: if watcher is configured to modify original file, it disappears from the project tree after running the watcher
  • HTML - Feature - WEB-12840 - Auto-formatting tag closing > in HTML
  • Feature - WEB-13515 - Emmet: add settings for placing $END$ at the end of template text
  • Bug - WEB-18567 - CSS: 'Selector matches unknown element' error shown for 'picture' element
  • Bug - WEB-10809 - "Insert new line before": weird behaviour
  • Bug - WEB-12937 - HTML Formatter works inconsistently with comments
  • Jade - Bug - WEB-17111 - Jade: NoSuchElementException on opening Jade file, null editor is passed
  • Bug - WEB-17268 - Jade plugin incorrectly parses multiline js
  • Bug - WEB-14160 - Jade: support rest arguments in mixins
  • Bug - WEB-17693 - Pasting Jade code breaks indentation
  • JavaScript - Feature - WEB-17965 - JSDoc: cannot refer to @exports if the `module:` prefix is omitted
  • Feature - WEB-18001 - add 'else if' in autocomplete for JavaScript code editing
  • Feature - WEB-13271 - JSDoc: support module namepath
  • Feature - WEB-17799 - JSDoc: @fires, @listens cannot refer to @event namepath
  • Feature - WEB-10568 - JS Modules: no completion/resolving for require(json)
  • Feature - WEB-16824 - Allow control over @constructor insertion in JSDoc
  • Feature - WEB-14524 - ES7: Add support to exponentiation operator
  • Feature - WEB-12730 - Indexed support for JavaScript AMD
  • Feature - WEB-10272 - JSDoc: support @abstract tag
  • Feature - WEB-11838 - Add JSDoc support for @event and @fires
  • Feature - WEB-17001 - Remove .js from code completion in import\export statement
  • Feature - WEB-16928 - Please provide a way to get auto-completion and validation for private functions via jsdoc
  • Bug - WEB-17870 - Inconsistent token classification for object shorthand properties
  • Bug - WEB-18268 - AssertionError on extends
  • Bug - WEB-11076 - inspector incorrectly marks decorate method on goog.ui.Select instance as deprecated
  • Bug - WEB-17566 - Symbols from non-relevant node modules are shown in completion and resolved
  • Bug - WEB-17294 - "Octal literals are not allowed" in ECMAScript 6 mode
  • Bug - WEB-12308 - Bad support of @constructs jsdoc tag
  • Bug - WEB-16814 - AMD modules: @constructor annotation is not used anymore for parameter tooltips
  • Bug - WEB-15841 - Should be possible to assign *.es extension to 'JavaScript Files' file type
  • Bug - WEB-17840 - Properties attached to local variable returned by immediately invoked function are not resolved
  • Bug - WEB-17827 - Override arrow is not shown
  • Bug - WEB-16933 - JSDoc: Actual type of generic type attribute is not shown in documentation
  • Bug - WEB-17196 - Duplicate JavaScript class in Navigate Class popup with @constructor JsDoc tag
  • Bug - WEB-17197 - Incorrect "Module is not referenced by require()" warning for Array
  • Bug - WEB-17135 - Accessors with computed literal object properties
  • Bug - WEB-17781 - JSDoc: class extending and polymorphism
  • Bug - WEB-16950 - ES6 Syntax highlight error
  • Bug - WEB-16959 - Unresolved function of method in JavaScript
  • Bug - WEB-16137 - JSDoc support regression
  • Bug - WEB-16859 - Westorm marks variables as unused
  • Bug - WEB-18684 - PATH is not resolved
  • Bug - WEB-11792 - Bug in "let" support
  • Bug - WEB-17496 - `export {default} from './foo';` cannot resolve symbol 'default'
  • Bug - WEB-16994 - JSDoc: function this param and nullable operator
  • Bug - WEB-17243 - JSDoc: returned generic does not fit inheritance
  • Bug - WEB-16873 - Invalid "return outside function definition" error in embedded ecmascript 6
  • Bug - WEB-17279 - No warning or Intellisense about info from JSDoc
  • Bug - WEB-16904 - JSDoc: @inheritDoc on a method does not inherit parameter and return value types
  • Bug - WEB-16905 - Iterable syntax for jsDoc?
  • Bug - WEB-15372 - "Navigate to declaration" is broken with ES6 style imports
  • Bug - WEB-16687 - Internal error when reading JsDoc3
  • Bug - WEB-16682 - ES6: imported module exported using module.exports not resolved
  • Bug - WEB-16992 - Support Closure Compiler jsdoc annotations @private {typedef}
  • Bug - WEB-18042 - JSDoc broken @param type with namepath
  • Bug - WEB-16789 - "Unexpected token" error with ES6 template strings inside `` branckets
  • Bug - WEB-17119 - ES6: no completion/navigation for default import
  • Bug - WEB-18304 - Flow: correctly recognize import statement syntax
  • Bug - WEB-16281 - CommonJS: Imported module has a wrong type
  • Bug - WEB-17232 - Jasmine suite is generated with double quotes
  • Bug - WEB-6391 - JS, TS, Extract parameters: incorrect JsDoc is generated when extracting string constant
  • Bug - WEB-18186 - Exposed properties of object created using Revealing-Module-Pattern are not available in completion
  • Bug - WEB-15676 - Can not resolve to the variable's definition
  • Bug - WEB-17010 - Undefined type in JSDoc due to ignoring preceding type definition
  • Bug - WEB-17930 - JsDoc: type mismatch errors on matching parameters of @enum type
  • Bug - WEB-17541 - Suppress await* error
  • Bug - WEB-17420 - Non-english variable is not recognized in 9.0
  • Bug - WEB-18235 - Flow: Settings: color all keywords: 'declare' and 'type'
  • Bug - WEB-18231 - ES6/Flow: provide option to color class, member variable, label and type alias
  • Bug - WEB-17280 - function argument inspection is wrong about this (and JSDoc does not help)
  • Bug - WEB-17015 - JavaScript: false positive error "Referencing 'arguments' of other function are not allowed"
  • Bug - WEB-17698 - Language injection and tagged template string
  • Bug - WEB-16940 - JSDoc: Actual type of a property with generic type is not used by code completion
  • Bug - WEB-18518 - es6 import type annotation
  • Bug - WEB-17131 - Incorrect warning on `for-in/for-of`: "const variable without initializer"
  • Bug - WEB-17251 - Blinking resolve in php file with JS as template language
  • Bug - WEB-16659 - Weak code sense when using JSX Harmony Javascript.
  • Bug - WEB-16936 - JSDoc: don't show a single line comment of a preceding statement in Quick Documentation
  • Bug - WEB-16507 - Object spread properties are not supported
  • Bug - WEB-17747 - CommonJS: module functions not resolved when defining modules as immediately invoked function expressions
  • Bug - WEB-11782 - Display JSDoc param default value
  • Bug - WEB-16960 - "expression statement is not assignment or call" in ES7 await construct
  • Bug - WEB-18029 - Support ES6 new.target
  • Bug - WEB-17602 - Error with ES6 syntax highlighting
  • Bug - WEB-17970 - Completion does not suggest fields with some 'national characters'
  • Bug - WEB-18330 - Import of unresolved path is treated like annotator error
  • Bug - WEB-17959 - Make static quick-fix doesn't work for ES6 anonymous classes
  • Bug - WEB-17221 - JS inspection false positive: Binary operation argument type T is not compatible with type string
  • Bug - WEB-17047 - split into multiple declarations should respect the keyword (JS)
  • Bug - WEB-16653 - JsDoc3 @callback documentation is shown as link, but not navigable
  • Bug - WEB-16654 - JsDoc3 @callback documentation is not used for parameter info
  • Bug - WEB-16797 - Unresolved write property error in the jQuery project
  • Bug - WEB-16935 - Inferred type in documentation and in inspection warnings is not consistent
  • Bug - WEB-16934 - JSDoc: warning about incorrect type depends on the location of the type comment
  • Bug - WEB-16571 - Incorrect calculation of TDZ (temporal dead zone) for let causes it to show as undeclared
  • Bug - WEB-17557 - ES6 template strings with expressions causes syntax highlighting issues.
  • Bug - WEB-17008 - Unresolved method or function for annotated parameter
  • Bug - WEB-18325 - BUG: unexpected error with ES6 template strings and Expression interpolation
  • Bug - WEB-12644 - Javascript: wrong variable type after destructuring assignment
  • Bug - WEB-18050 - Complete current statement does not work with ES6 modules
  • Bug - WEB-17807 - CommonJS: no properties completion/parameter info for exported function
  • Bug - WEB-17988 - JSDoc: Documentation Not Found when using "export default" with es6 modules
  • Bug - WEB-17017 - Duplicated links in marks on the left gutter
  • Bug - WEB-11787 - Autocomplete for object params
  • Bug - WEB-674 - jsdoc commonjs modules (nodejs) does not recognize modules
  • Bug - WEB-12000 - @lends support
  • Bug - WEB-18252 - Flow: declare keyword breaks highlighting for the nested class/module members
  • Bug - WEB-18253 - Flow: line comment breaks React tag recognition
  • Bug - WEB-18255 - Flow: recognize last comma in the tuple type
  • Bug - WEB-16704 - Editor does not recognize inheritance of object using Object.create()
  • Bug - WEB-17978 - Escaped \ at the end of a template string throws error.
  • Bug - WEB-17611 - Make @fires info in Quick Doc clickable
  • Performance - WEB-17615 - endless indexing loop
  • Usability - WEB-18096 - Syntax Highlighting ES6
  • Usability - WEB-3441 - JavaScript: can js libraries be downloaded to ~\.IntelliJIdea*\config\ instead of ~\.IntelliJIdea*\system\?
  • Cosmetics - WEB-17012 - Improve detection 'instance member function' vs 'instance member variable'
  • Cosmetics - WEB-17650 - ES6: Weird syntax-highlighting in computed property name + template string
  • Cosmetics - WEB-18372 - Instance member variable colored as function when declared as @property
  • Exception - WEB-17961 - Throwable when call 'Split current tag' intention
  • Exception - WEB-18225 - java.lang.NoClassDefFoundError: org/apache/commons/io/FilenameUtils
  • Exception - WEB-18716 - Stub and PSI element type mismatch in path.js: stub JSReturnStatementStubImpl
  • JavaScript. Formatter - Bug - WEB-11062 - Wrong indentation mixed in-line and multiline chains in WS-134.1081
  • Cosmetics - WEB-16223 - JSX/HTML indentation
  • JavaScript. Frameworks - Bug - WEB-18331 - Meteor: "Import packages as library" does not work?
  • Bug - WEB-18256 - React: completion for imported component doesn't work when not using {}
  • JavaScript. Inspections - Feature - WEB-17728 - JSCS: implement suppression for a single line
  • Feature - WEB-16353 - Code Quality Tools - JSCS: Search for configs(s) Correction
  • Feature - WEB-12095 - Nullable primitives
  • Feature - WEB-17459 - Support for JSCS 2.0
  • Bug - WEB-17149 - Unresolved closure variables inside ES6 class
  • Bug - WEB-17813 - JSCS: wrong suppression results inside injections
  • Bug - WEB-17241 - Function is not resolved ('connect' library)
  • Bug - WEB-17204 - Javascript Inspector fails to properly account for "or" (|) symbol
  • Bug - WEB-17812 - JSCS: inspections are shown multiple times
  • Bug - WEB-17810 - .jscsrc configuration is overwritten by WebStorm
  • Bug - WEB-17814 - JSCS: escape tabulation sign for the "validateIndentation" rule value type completion
  • Bug - WEB-17727 - JSCS: support new rules/values for version 2.1.x
  • Bug - WEB-17467 - TSLint Tool Doesn't Remember Package
  • Bug - WEB-14275 - Incorrect completion for shorthanded vars (ES6)
  • Bug - WEB-17431 - tslint tool doesn't work with tslint 2.4.0 and above
  • Bug - WEB-17718 - JSCS: improve some rules type validation
  • Bug - WEB-18357 - eslint doesn't work anymore in WS 142.5255
  • Bug - WEB-18198 - WS 11 EAP 142.4723: Inspection message is wrong and inexplicable
  • Bug - WEB-16784 - JSCS check for final newline does not work
  • Bug - WEB-17716 - JSCS: .jscsrc file errors highlighting is inconsistent
  • Bug - WEB-17880 - "allExcept" in "requireSpacesInAnonymousFunctionExpression" should be supported
  • Bug - WEB-17805 - Missing "Expression statement is not assignment or call" warning
  • Bug - WEB-17953 - JSReferenceExpression when call 'Rename reference' inspection
  • Bug - WEB-17471 - [email protected] and JSX Harmony
  • Bug - WEB-18678 - JSDoc @inheritdoc tag doesn't work if lower case is used
  • Bug - WEB-18075 - JSDoc inspection error: @param default value is an object leads to error
  • Bug - WEB-13751 - JSDoc: inconsistent handling of non-nullable @this
  • Bug - WEB-17935 - Inspection 'Expression statement which is not assignment or call' should be turned off for await
  • Bug - WEB-18392 - Inspections: "Insert require()" quick fix: minimize shown packages in case of direct source matching
  • Bug - WEB-16738 - jscs/jshint config not found for excluded directories
  • Bug - WEB-17309 - Update error markers positions to support new eslint
  • Bug - WEB-15238 - Syntax check for config.jscs.json reports "esprima" key as unknown
  • Bug - WEB-17881 - New WS 11.0 inspection for node.js "require()" is strange
  • Bug - WEB-17161 - JSCS ignores .jscsrc settings and requires (falsely) esprima-fb
  • Bug - WEB-18010 - Detect and respect order of JSDoc elements when manipulating it
  • Bug - WEB-18336 - Closure Linter: Warnings does not show up for the whole line
  • Bug - WEB-17710 - JSCS: remove code tag from the description for two jsDoc rules
  • Bug - WEB-16404 - JSCS: add new rules and option
  • Bug - WEB-16897 - Layout bug in ESLint PopUp settings
  • Bug - WEB-16835 - TSLint: fill in "Configuration file" field automatically
  • Bug - WEB-18209 - Unused imports are not marked unused
  • Bug - WEB-18183 - ESLint: deprecation warning causes the problem with loading linting results
  • Bug - WEB-16622 - Missing inspection about duplicate declaration in 'Import * as'
  • Bug - WEB-17004 - JSCS rc warnings
  • Bug - WEB-16982 - ESLint: can't run eslint because relative paths to extended configuration files not correctly resolved
  • Bug - WEB-18786 - Don't suggest to import node.js global "Buffer"
  • Bug - WEB-17879 - Method marked as recursive
  • Bug - WEB-18254 - Function marked as recursive
  • Cosmetics - WEB-16831 - TSLint: correct Additional rules field name
  • Exception - WEB-18787 - TSLint: impossible to expand Configuration files list
  • JavaScript. Predefs - Bug - WEB-8983 - String.prototype.localeCompare has incorrect return type
  • JavaScript. Refactoring - Feature - WEB-17654 - Insert ES6 'import' instead of 'require'
  • Bug - WEB-10703 - JavaScript - Extract variable fails silently
  • Exception - WEB-17565 - Refactoring: Extract variable: switching between var kind with enabled multiple occurrences lead to Throwable exception
  • LESS - Bug - WEB-16841 - less refactoring
  • Bug - WEB-17559 - LESS/CSS rule value
  • Live Edit - Bug - WEB-12926 - LiveEdit not working for (S)CSS files
  • Node.js - Feature - WEB-17513 - Node.js run configuration requires a "JavaScript file"
  • Feature - WEB-15701 - Node js: inspect contents of "require"
  • Bug - WEB-17783 - Node.js module is not installed
  • Bug - WEB-17567 - Remote node package advertisement outside of `require`
  • Bug - WEB-18584 - Node sources are not configured again when switch to another node version
  • Bug - WEB-17966 - console.dir - Invalid number of arguments, expected 1
  • Bug - WEB-18311 - Node.js: not enough room for node version
  • Bug - WEB-17470 - Node.js: vertically stretched interpreter field
  • Bug - WEB-17320 - Inspections: "Insert require()" quick fix: quotes type is cached until Restart
  • Bug - WEB-18707 - IAE in NodeJSModulesSearcher
  • Bug - WEB-17337 - Inspections: "Insert require()" quick fix should be available with only Node.js Globals library enabled
  • Bug - WEB-17413 - Node.js: "Missing module dependency" inspection doesn't add packages into devDepedencies of package.json in the bulk mode
  • Bug - WEB-1931 - Code completion is incorrect for Node Error object
  • Bug - WEB-17127 - Node.js Available Package dialog: package details are not shown
  • Bug - WEB-12775 - Per Project Node Version Isn't Saved
  • Bug - WEB-17512 - require() call is missing
  • Bug - WEB-17511 - Node Express project: provide a way to create Express application that uses SASS stylesheet engine
  • Bug - WEB-17823 - Import code style from JSCS configuration file: paths to Node.js and JSCS are not specified
  • Bug - WEB-6753 - process.env.* variables aren't defined (thus marked as unresolved)
  • Bug - WEB-18714 - NPM terminal not using colors
  • Bug - WEB-17592 - Missing module dependency: should respect a package.json location when installing a module
  • Bug - WEB-17597 - Enabling V8 profiling in automatically created run/debug configuration affects default Node.js configuration
  • Bug - WEB-17947 - Installing npm package fails
  • Bug - WEB-16943 - @(/path/to/file.js:) should be a link
  • Performance - WEB-17276 - Node.js Run Configuration: ui freezed for several seconds after adding new Node.js path in interpreter field
  • Usability - WEB-17575 - Node.js and NPM: upgrade is disabled for package with specific version
  • Cosmetics - WEB-17328 - Node version display is broken on small combo with large path
  • Exception - WEB-18363 - java.lang.ClassCastException: com.jetbrains.nodejs.codeInsight.AddRequiredAmdModuleToModulesListFix cannot be cast to com.jetbrains.nodejs.codeInsight.ImportJsModuleFix
  • Exception - WEB-17210 - Node.js Settings: version cannot be detected
  • Profiling - Bug - WEB-17154 - Profiling: CPU: Flame chart: topmost elements blink if move details selection line over them
  • Bug - WEB-17155 - Profiling: CPU: Flame Chart: no scrolling to the table/chart element if it's placed out of the view while selected in the chart/table
  • Bug - WEB-17174 - Profiling: CPU: Flame Chart Details: prohibit columns reordering
  • Bug - WEB-15427 - Profiling: Heap: Search String dialog should save previous configuration
  • Bug - WEB-17156 - Profiling: CPU: Flame Chart: hide empty panel to the right of the table in the Details
  • Usability - WEB-17169 - Profiling: CPU: numbers for heavy calls should be shown in bold
  • Usability - WEB-17167 - Profiling: CPU: Top Calls: provide subcategory name for the GC and Unknown results
  • Usability - WEB-17164 - Profiling: CPU: restore Help button on the toolbars
  • Usability - WEB-15925 - Profiling: Heap: improve Take Heap Snapshot dialog
  • Exception - WEB-17173 - Profiling: CPU: AIOOBE on moving details selection line out of the chart area quickly
  • SASS - Bug - WEB-16490 - Sass scss highlighting breaks
  • Bug - WEB-10622 - Reformatting SASS/SCSS with commented line also comments active code
  • Bug - WEB-16945 - Sass: using a class of 'only' results in inspector 'red' error
  • Bug - WEB-18234 - SCSS autocomplete suggests compass methods while compass is not enabled.
  • Bug - WEB-16990 - SASS trailing comments for variables
  • Bug - WEB-18298 - Definition appears incorrectly for nested mixins.
  • Bug - WEB-11444 - Allow comment after a selector in SCSS
  • Stylus - Bug - WEB-9065 - Stylus: Completion: add at-rule keywords
  • Bug - WEB-17396 - Stylus: some breadcrumbs are shown incorrectly
  • Bug - WEB-14464 - Stylus: extending placeholder selectors
  • Bug - WEB-13541 - Stylus: Red code: "Hash or term list is expected" error
  • Bug - WEB-15933 - stylus nth-of-
  • TypeScript - Feature - WEB-9947 - Support auto-import for TypeScript
  • Feature - WEB-10556 - Add support TSLint for TypeScript
  • Feature - WEB-18546 - Code style option for quotes in generated TypeScript code
  • Bug - WEB-18580 - tsconfig.json compilerOption / out output is not relative to tsconfig file
  • Bug - WEB-13100 - Expand selection fails on generic type symbol
  • Bug - WEB-17993 - Unexpected error from TSLint if tslint.json is presented
  • Bug - WEB-18364 - EAP 142.5255 auto-import default export in typescript
  • Bug - WEB-18709 - Typescript code completion for Constructor retained Parameters
  • Bug - WEB-18349 - Typescript good code Bad. Protected members cannot always be accessed from sub namespace
  • Bug - WEB-15899 - TypeScript functional types in a "d.ts" file vs. parameter hinting
  • Bug - WEB-18412 - TypeScript declaration merging not working correctly
  • Bug - WEB-16426 - Typescript array inteface assignment reported as error
  • Bug - WEB-18732 - Dictionary/Associative array hasOwnProperty method expression is not of function type
  • Bug - WEB-18461 - Typescript: Intersection Types - good code is red
  • Bug - WEB-18514 - Typescript - Wrong indentation when decorator is set to property
  • Bug - WEB-17904 - TypeScript: usage call signature in javascript
  • Bug - WEB-18493 - Typescript import issues
  • Bug - WEB-18337 - TypeScript: Extract method refactoring: When extracting code which contains at least one variable from a static function, the new function is not static
  • Bug - WEB-18382 - typescript async functions does not auto infered
  • Bug - WEB-18422 - TSX: className, htmlFor attributes not recognized
  • Bug - WEB-18421 - TSLint: not invoked on TSX files
  • Bug - WEB-10291 - TypeScript: "Navigate to class" not properly working for classes from imported modules
  • Bug - WEB-16754 - TypeScript: "Add import statement" quick fix generates wrong path on Windows
  • Bug - WEB-17187 - Typescript. Resolve absolute path
  • Bug - WEB-18713 - Red code in TypeScript
  • Unit Tests - Bug - WEB-17674 - Mocha package not automatically detected
  • Bug - WEB-18549 - Way to run ONE test in a Mocha Test Suite
  • Bug - WEB-18808 - 'Rerun tests' (Alt+Shift+R) doesn't re-run tests
  • Bug - WEB-17270 - Mocha RC: Suite/Test name fields' component should not be possible to drag away from the field itself

New in PhpStorm 10 Build 143.434 EAP (Oct 22, 2015)

  • Main changes from the PHP side include:
  • Improved PHP 7 support
  • PHP 7 Readiness inspection
  • This build also includes other new features and bug fixes.

New in PhpStorm 9.5 Build 143.279 EAP (Oct 15, 2015)

  • Fix of major issues from previous EAP build
  • And other bug fixes and improvements (see full list in our issue tracker).

New in PhpStorm 9.5 Build 143.129 EAP (Oct 7, 2015)

  • PHP7: partial support of group use declarations
  • Duplicates search on extract method
  • and other bug fixes and improvements

New in PhpStorm 9.5 Build 142.4912 EAP (Sep 16, 2015)

  • Improved PHP 7 support: support of Context Sensitive Lexer and yield from;
  • Improved code completion functionality: method name and signature completion for parent overriding and interface implementation, completion of getters and setters, property and constant completion for parent overriding, completion of parentheses for language constructs (exit, isset, etc.);
  • Debug console: improved completion for fields, methods and variables defined in REPL;
  • Completion of languages for persistent injections after @lang;
  • and other bug fixes and improvements (see full list in our issue tracker).

New in PhpStorm 9.5 Build 142.4707 EAP (Sep 9, 2015)

  • Completion in watches pane, evaluation dialog and breakpoint conditions
  • Twig template language is set automatically for specific file extensions
  • Smart copy/paste from/in strings
  • and other bug fixes and improvements

New in PhpStorm 9.5 Build 142.4289 EAP (Aug 26, 2015)

  • Highlights:
  • PHP REPL (read–eval–print loop, interactive console for PHP);
  • Support for PHP7′s UTF-8 sequences in strings;
  • Support for file watchers has been added to deployment’s autouploading;
  • Improved replace quotes intention;
  • Debugging warning tooltip now allows to enable Break at first line option and navigate to the PHP | Servers;

New in PhpStorm 9.0.2 Build 141.2462 (Aug 18, 2015)

  • PHP lang:
  • WI-28414 (Bug) - double extension file type mapping - Infinite index on 9.0.1
  • Plugin: Deployment _ FTP..:
  • WI-27799 (Usability Problem) - Use path mappings from project-level deployment
  • WI-27774 (Usability Problem) - Incorrect error message is shown on selection of project-level deployment server in interpreters
  • WI-28158 (Bug) - 'Compare with local version' action is enabled on directories of Remote Host
  • Project View:
  • IDEA-143690 (Bug) - Project view of non-Java IDEs is not refreshed when directory moved

New in PhpStorm 9.0.1 Build 141.2402 (Aug 13, 2015)

  • HIGHLIGHTS:
  • Major autocompletion improvements: completion of > after typing $this-, completion for class methods without typing $this->, PHP completion can be accepted by typing “-” (dash), etc;
  • Full support for PHP 7 type hints and return types;
  • Proper support for symbols imported via use function and use const;
  • PHP Template Language is set automatically based on file extension;
  • Phing predefined API is updated to version 2.11.0;
  • Google App Engine: sessionId setting is provided for debug in GAE run configuration;
  • FIXED ISSUES:
  • WI-19345 — complete methods without typing $this->
  • WI-551 — After "$this", I would like it if Code Completion would offer me "->"
  • WI-27075 — typing a point (.) in PHPDoc comment shows autocomplete popup list of @tags
  • WI-26069 — imported functions are recognized as classes
  • WI-16165 — Cannot find script in PHAR when remote debugging
  • WI-17658 — expanding $completion with - should accept with "->"
  • WI-27669 — Recognize PHP 7 scalar return types
  • WI-25211 — Invalid 'Missing return statement' warning with finally
  • WI-27998 — Find in override dialog is broken
  • WI-24237 — Set PHP Template Language automatically from file extension
  • WI-28264 — Spaces around echo tags are removed and there is no way to keep them with formatter
  • WI-27961 — Wrong PHPDoc insert during generating override method
  • WI-27941 — Missing JSON Extension Constant JSON_PRESERVE_ZERO_FRACTION in the json.php Stub
  • WI-27927 — Additional info in debug is not expanded on click on (...) on MacOSX
  • WI-27631 — Provide a way to exclude Blade files from CodeSniffer
  • WI-27040 — Library sorting in "project.iml" is random
  • WI-26562 — PhpStorm adds namespace to parent::foo() calls in child classes when moving parent class to another namespace
  • WI-22139 — Type Inference: type is leaked from last case to the next case
  • WI-28365 — Description of valid file pointer is wrong in filesystem functions
  • WI-28355 — Cannot write > after -
  • WI-28354 — False positive: Scalar types in PHPDoc @method annotation require PHP7
  • WI-28336 — Enable "Show hidden files" by default for private key file dialog
  • WI-28335 — Add help page to "Configure Remote Interpreter" dialog
  • WI-28325 — Provide settings for sessionId for debug in App Engine run configuration
  • WI-28307 — PHP functions' descriptions lost in popup
  • WI-28303 — App Engine debug workflow with run configuration only is broken
  • WI-28299 — Smarty: if option HTML->Keep line breaks is disabled smarty tag is merged to previous line
  • WI-28294 — document for preg_match_all isn't correct
  • WI-28288 — Scalar type hint is only available in PHP 7 is shown for empty array as a default parameter value
  • WI-28276 — PHPStorm doesn't check usage of PHP 7 type hints and return types for Method declarations
  • WI-28267 — Exception is thrown when typing
  • WI-28254 — Update Phing predefined api to 2.11.0
  • WI-28253 — A line break before is removed if HTML "Keep line breaks" option is off
  • WI-28226 — Provide .ssh directory as default for key
  • WI-28210 — Stub: incorrect return type for fastcgi_finish_request()
  • WI-28209 — Incorrect instance property coloring when array access present
  • WI-28166 — Wrong phpdoc for \DOMDocument::saveHTML
  • WI-28108 — Autocomplete "fun.." when in global scope
  • WI-28060 — Add help to "Incoming connection dialog"
  • WI-28049 — Postfix completion also triggers in double-quoted strings
  • WI-28004 — Remotely edited file that contains a class that is also in local project files results in inspection errors
  • WI-28002 — Remotely edited files not inspecting correctly
  • WI-27981 — Postfix completion: null and notnull templates
  • WI-27974 — Import from deployment: add link to help page
  • WI-27936 — Error in simplify if and converting to ?:
  • WI-27930 — Indentation error in Twig when Keep line breaks is disabled in HTML
  • WI-27923 — Create class: Disable ability to change namespace for namespaced class
  • WI-27911 — Probably *.engine should be registered as php file for Drupal
  • WI-27896 — Disable "Add class" quick fix for Batch inspection
  • WI-27866 — Override method insert PHPDoc in a wrong place if caret is placed after an existing PHPDoc
  • WI-27840 — Live Templates is not expanded after . (dot)
  • WI-27587 — Cannot create a PHPUnit method run configuration when method is in a trait
  • WI-27512 — Open browser on localhost:port after running app engine
  • WI-27501 — PHP 7: return type callable is not supported
  • WI-27465 — PHP7: add predefined constant PHP_INT_MIN
  • WI-27461 — PHP7: add intdiv() function
  • WI-26652 — Introduce parameter: provide help button
  • WI-26359 — The "Default Settings..." always been restored, and configured include path by "Default Settings" and there has no tree in "External Libraryis"
  • WI-26013 — Blade: minify priority of directives in completion list
  • WI-25982 — Illegal array key type: false positive if constant import is used
  • WI-22277 — Convert if/ternary: allow to convert assignment to not resolved fields

New in PhpStorm 9.0.1 Build 141.2325 EAP (Aug 7, 2015)

  • PHP changes:
  • PHP Template Language is set automatically based on file extension
  • Convert if/ternary action allows to convert assignment to not resolved fields
  • Phing predefined API is uptaded to version 2.11.0
  • Fixed issues:
  • WI-16165 — Cannot find script in PHAR when remote debugging
  • WI-25211 — Invalid 'Missing return statement' warning with finally
  • WI-24237 — Set PHP Template Language automatically from file extension
  • WI-28264 — Spaces around echo tags are removed and there is no way to keep them with formatter
  • WI-27941 — Missing JSON Extension Constant JSON_PRESERVE_ZERO_FRACTION in the json.php Stub
  • WI-27631 — Provide a way to exclude Blade files from CodeSniffer
  • WI-27040 — Library sorting in "project.iml" is random
  • WI-26562 — PhpStorm adds namespace to parent::foo() calls in child classes when moving parent class to another namespace
  • WI-22139 — Type Inference: type is leaked from last case to the next case
  • WI-28307 — PHP functions' descriptions lost in popup
  • WI-28299 — Smarty: if option HTML->Keep line breaks is disabled smarty tag is merged to previous line
  • WI-28294 — document for preg_match_all isn't correct
  • WI-28288 — Scalar type hint is only available in PHP 7 is shown for empty array as a default parameter value
  • WI-28276 — PHPStorm doesn't check usage of PHP 7 type hints and return types for Method declarations
  • WI-28267 — Exception is thrown when typing
  • WI-28254 — Update Phing predefined api to 2.11.0
  • WI-28253 — A line break before is removed if HTML "Keep line breaks" option is off
  • WI-28210 — Stub: incorrect return type for fastcgi_finish_request()
  • WI-27930 — Indentation error in Twig when Keep line breaks is disabled in HTML
  • WI-27465 — PHP7: add predefined constant PHP_INT_MIN
  • WI-27461 — PHP7: add intdiv() function
  • WI-26359 — The "Default Settings..." always been restored, and configured include path by "Default Settings" and there has no tree in "External Libraryis"
  • WI-22277 — Convert if/ternary: allow to convert assignment to not resolved fields

New in PhpStorm 9.0.1 Build 141.2204 (Jul 29, 2015)

  • PHP Completion:
  • WI-551 (Feature) - After "$this", I would like it if Code Completion would offer me "->"
  • WI-17658 (Feature) - expanding $completion with - should accept with "->"
  • WI-19345 (Feature) - complete methods without typing $this->
  • WI-27075 (Usability Problem) - typing a point (.) in PHPDoc comment shows autocomplete popup list of @tags
  • PHP Inspections:
  • WI-28004 (Bug) - Remotely edited file that contains a class that is also in local project files results in inspection errors
  • PHP Refactoring:
  • WI-27923 (Usability Problem) - Create class: Disable ability to change namespace for namespaced class
  • WI-26652 (Usability Problem) - Introduce parameter: provide help button
  • PHP debug:
  • WI-28060 (Usability Problem) - Add help to "Incoming connection dialog"
  • PHP lang:
  • WI-5128 (Feature) - Color magic and regular properties/methods in different colors
  • WI-28209 (Bug) - Incorrect instance property coloring when array access present
  • WI-26069 (Bug) - imported functions are recognized as classes
  • WI-27501 (Bug) - PHP 7: return type callable is not supported
  • PHP templates:
  • WI-26013 (Usability Problem) - Blade: minify priority of directives in completion list
  • PHP test:
  • WI-27587 (Bug) - Cannot create a PHPUnit method run configuration when method is in a trait
  • Plugin: Deployment _ FTP..:
  • WI-28226 (Usability Problem) - Provide .ssh directory as default for key
  • Plugin: Drupal support:
  • WI-27911 (Bug) - Probably *.engine should be registered as php file for Drupal
  • No subsystem:
  • IDEA-136578 (Bug) - Distraction Free Mode (tabs placement: none) bug
  • IDEA-131429 (Bug) - Warning tooltips overlap scrollbar
  • IDEA-140851 (Bug) - Keymap with åäö characters doesn't get stored properly.
  • IDEA-138936 (Bug) - File templates are not imported via File/Import Settings
  • IDEA-142246 (Exception) - SerializerNotFoundException at com.intellij.psi.stubs.StubSerializationHelper.deserialize
  • Editor. Editing Text:
  • IDEA-139930 (Usability Problem) - A way to disable highlighting code while mouse hovers in-file "breadcrumbs" navigation
  • IDE Configuration:
  • IDEA-141026 (Bug) - Global libraries are no longer exported via File | Export Settings
  • User Interface:
  • IDEA-142141 (Cosmetics) - Variable in file template descriptions have different colors
  • IDEA-123409 (Bug) - Sheet dialogs: Order of buttons and their sizes and positions are incorrect

New in PhpStorm 9.0 Build 141.1912 (Jul 8, 2015)

  • Highlights:
  • PHP Language & Editing Experience: Includes postfix code completion for PHP, partial PHP 7 support, advanced code understanding (Introduce parameter refactoring, advanced PHP type inference, support for persistent language injections, and new inspections and intentions), and other enhancements.
  • New Debugging Experience: Inline debugger for PHP and debugging workflow enhancements (php.ini can be opened from settings, and debugger config validation has been enhanced).
  • Remote Development: Remote edit, PHP Code Sniffer and Mess Detector via remote PHP interpreters.
  • Many improvements related to frameworks and tools.
  • A range of new and updated third-party plugins available in the PhpStorm plugin repository.
  • Delivers completely reworked JavaScript support and brings you these top-notch web technologies:
  • Application dependency diagrams
  • Tracing languages transpiled to JavaScript
  • V8 profiling for Node.js apps
  • Simultaneous tag editing
  • This release also borrows many features and improvements from IntelliJ Platform, such as Distraction Free Mode, diff viewer with one-side viewer mode, VCS improvements, database tools update, HiDPI support for Windows and Linux, an updated look-and-feel of Editor tabs, and more goodies.

New in PhpStorm 9.0 Build 141.1815 EAP (Jul 2, 2015)

  • PHP Completion:
  • WI-27746 (Bug) - Postfix completion: foreach $collection as $it
  • PHP Formatter:
  • WI-27766 (Usability Problem) - Caret Row background collides with Template Data Language background
  • WI-27769 (Bug) - PSR-2 Predefined Style: (4.3) MUST NOT be a space after the opening parenthesis, MUST NOT be a space before the closing parenthesis.
  • WI-27793 (Bug) - Wrong indentation when copying / pasting PHP code
  • PHP lang:
  • WI-16547 (Feature) - Automatically add {@inheritDoc} to overriden method
  • Editor. Error Highlighting:
  • IDEA-128176 (Bug) - Good code is red: Unicode supplementary character range

New in PhpStorm 9.0 Build 141.1717 EAP (Jun 25, 2015)

  • Highlights:
  • Dynamic type hinting functionality (useful for various frameworks)
  • Ignore can be added to CodeSniffer/MessDetector config right from Project View
  • Project-level deployment servers
  • Live templates for Twig
  • Bug fixes:
  • WI-4478 — Framework support: Add dynamic type hinting functionality
  • WI-16328 — Add option to create global or project FTP servers
  • WI-12662 — Add feature to add ignore to CodeSniffer
  • WI-21580 — Create Live Template group for Twig file types
  • WI-18849 — Cannot set ignored files for PHP Mess Detector inspection
  • WI-22983 — Checking instance of an object against a dynamic class name breaks type inference
  • WI-16339 — Annotator: Inspection produces seemingly invalid warning for protected constructor
  • WI-27786 — Panel for project level deployment server is shown for interpreter by SSH
  • WI-27775 — "Create application level copy of this server" copy server without mappings and excluded paths
  • WI-27773 — Error message for project-level deployment server in Remote PHP Interpreter dialog is incorrect
  • WI-27746 — Postfix completion: foreach $collection as $it
  • WI-27712 — Non-static factory completion doesn't work without parent
  • WI-27677 — SSH Console doesn't see "Visible only for the project" deployment servers
  • WI-27674 — Servers disappears if their names collides due to setting change visible for project
  • WI-27673 — Exception is thrown on attempt to create a server without an opened project
  • WI-27628 — Do not always show "Imports optimized" for PHP and Blade files
  • WI-27321 — Exception on export settings
  • WI-26286 — Indentation of @method directive in PHPDoc is not necessary

New in PhpStorm 9.0 Build 141.1619 EAP (Jun 17, 2015)

  • Highlights:
  • Blade templating engine support improvements
  • New file can be created on remote server
  • Auto-reported Exception:
  • WI-2572 — Sometimes a bunch of exceptions right after PhpStorm start
  • WI-2677 — code completion crashes editor behaviour
  • WI-3030 — Startup | NoClassDefFoundError when i start the IDE
  • WI-3235 — Lots of exceptions during normal code editing
  • WI-5498 — IDE fatal errors while XSL editing
  • WI-5517 — IDE error when i'm trying to open css file from file manager by dblclick
  • WI-15820 — Framework MVC Structure Support is broken
  • Bug:
  • WI-9 — Broken autocompletion for { } in CSS editor
  • WI-10 — Support CSS linked with via parametrized link
  • WI-11 — In files with php extentions and htmls + php inside comments dont work properly
  • WI-15 — Error on start "Fatal error"
  • WI-19 — Pasted ' (apostrophe ) turn in ' (not only apostrophe, all symbols which have entities)
  • WI-21 — Do not auto-complete paths with '.' (period)
  • WI-22 — Problems on importing settings.jar from IntelliJIDEA 8.1
  • WI-24 — Tip of the Day not found
  • WI-25 — увеличенное расстояние между элементами меню Settings Dialog
  • WI-26 — Элементы диалога настроек скачут вверх-вниз
  • WI-28 — Can not disable inspection via intention
  • WI-31 — Exception intime switching between File Templates Tabs (Settings Dialog)
  • WI-32 — Не могу зарепортить багу через интерфейс Error Report
  • WI-33 — Can't find settings for encodings
  • WI-35 — Doesn't work autocompletion of image sizes in
  • WI-36 — Mac OS X: "Open in Browser" opens document in Parallels
  • WI-37 — Cannot copy file if file already exist
  • WI-40 — Go To Declaration wtihout paths to files
  • WI-46 — Javascript Debugger dont work with files with php extension?
  • WI-52 — Create selector in new file bug: cannot open dialog for choose directory
  • WI-57 — Can't find settings for Resources
  • WI-62 — Выключение Inspection в настройках не выключает его
  • WI-63 — Не работает Check for updates
  • WI-66 — Не подсвечиваются изменённые файлы в режиме View as: Favorities
  • WI-67 — Не открывается файл по нажатию Enter в режиме View as: Favorities
  • WI-71 — Create new class action creates wrong php class
  • WI-72 — Editor doesn't highlight missing php-end tag
  • WI-73 — Can't blame PHP plugin
  • WI-74 — Editor doesn't paste second quote when type forward quote
  • WI-75 — Missing options in completion after $
  • WI-85 — Autocomplete: global settings do not work for CSS
  • WI-88 — Cmd S in Web Preview -> IDE completely hanged
  • WI-91 — Unavailable Character Browser Plugin
  • WI-100 — External changes is visible in IDE after VERY long period (Synchronise doesn't help)
  • WI-105 — picture preview in css file on Shift+Mouse Over doesn't work
  • WI-106 — fast scroll of project tree causes artefacts (see the attachment)
  • WI-108 — Rename Folder/File dialog does not fill-in previous name anymore
  • WI-109 — WI не видит изменений и не коммитит их в SVN
  • WI-118 — Refreshing VCS history
  • WI-119 — TODO pattern is not recognized inside of PHPDOC comments
  • WI-121 — Navigation Bar doesn't work after pressing Alt+Home than Arrow
  • WI-134 — Menus with ticks dont clear properly
  • WI-135 — Keep XDebug connection after the page is processed
  • WI-136 — PHP constants are not autocompleted
  • WI-138 — Completion: support all magic function names
  • WI-139 — Wrong indent on array editing
  • WI-141 — Indent inside phpdoc
  • WI-143 — Links in phpdoc should be clickable
  • WI-149 — PHP library functions can have optional parameters
  • WI-153 — Type-inspection is a bit too strict
  • WI-155 — ISO-8859-15 encoded text is not displayed properly
  • WI-158 — Completion after "class name" should be smarter
  • WI-159 — SOE on class foo implements foo
  • WI-160 — Syntax error expected on wrong usage of extends/implements keywords
  • WI-162 — JS Debugger and js file linked to .php file
  • WI-163 — Editor inspections can't be disabled through status bar item
  • WI-165 — Spelling -> Rename to.. - hide outline when replacement canceled
  • WI-166 — phpDoc @param hightlite
  • WI-167 — Wrong handling for mixd type
  • WI-168 — /= is not recognized as operator
  • WI-169 — PHP-parser doesn't resolve type of function's output when used directly
  • WI-170 — "number" and int are not compatible?
  • WI-172 — instanceof only validates with literal class names
  • WI-173 — No value tooltip for PHP variable in debug mode
  • WI-177 — Code completition for static vars
  • WI-178 — include/require doesn't work well with dynamic paths
  • WI-179 — Refactoring rename interface-methodname doesn't offer to also rename implementors
  • WI-180 — "implements" some abstract class is allowed
  • WI-181 — function and class names in PHP are case insensitive
  • WI-182 — Changing the type of a primitive to class isn't recognized
  • WI-184 — Provide product-specififc image in the section "Suppressing inspections"
  • WI-187 — Can't find a place where I can change color for Language Injection
  • WI-695 — Spellchecker does not report problematic words such as 'we?re'
  • WI-698 — Formatting problems
  • WI-699 — navigating to (built-in) DHTML.js results in major performance problem
  • WI-702 — FTP Deployment: Web Servers browser: folder mapping creating should be done correctly
  • WI-703 — FTP Deployment: Web Servers browser: after file rename view is corrupted
  • WI-704 — FTP Deployment: for nested mappings, the 'common' files are uploaded to the single destination only
  • WI-706 — FTP deployment: for multiple paths from excluded directories it is impossible to invoke specific action
  • WI-707 — FTP deployment: exception on attempt to create new... webserver from run configuration/choose local paths to upload/ edit mappings
  • WI-708 — test
  • WI-711 — Standart php5 DOMNode class stub is incomplete
  • WI-713 — PHP Debug: long text variables value is truncated
  • WI-716 — PHP strtr() stub is not correct
  • WI-719 — No errors detected with construction ->foo
  • WI-721 — Error markers are corrupted in PHP file
  • WI-723 — alternate switch sysntax in multiple php fragments produces parser error
  • WI-725 — "new $className" does not resolve to $className variable
  • WI-727 — Web IDE hangs on building indices
  • WI-731 — "Expected string got array" for string characters access instead of "deprecated"
  • WI-733 — Add autocomplete for __construct
  • WI-737 — @group annotation is not parsed if before class definition
  • WI-738 — PHPDoc generation is broken
  • WI-740 — Folding phpdoc comments is broken
  • WI-744 — JavaScript: cannot unwrap one-line 'if' or 'else'
  • WI-747 — Class disappeared in structure
  • WI-750 — PsiInvalidElementAccessException, Report posting failed: ITN returns wrong data
  • WI-751 — HTML refactoring: rename 'radio inputs'
  • WI-752 — Renaming directory does not update project tree
  • WI-755 — xdebug - watch/inspect window cuts off showing value of a variable
  • WI-756 — «Parameter info» command does not show constructor parameters described in parent class
  • WI-766 — Mysql Highlighting fails to see expression in php variable
  • WI-767 — mysql highlighting fails to work on whole expression when there is a php variable
  • WI-770 — Param type inspection does not follow inheritance rules when not all class/interface definitions are present.
  • WI-772 — PHP Debugger Memory usage
  • WI-774 — No smarty file assoziation since 94.5
  • WI-775 — Can't open big project
  • WI-776 — Bug in replace dialog
  • WI-779 — Collapsing tree node collapses all subnodes
  • WI-783 — Reformat code breaks HEREDOC string.
  • WI-792 — Invoking any modal dialog window while in fullscreen mode minimizes the entire IDE
  • WI-796 — Correctly compare non-ascii files
  • WI-797 — File templates: File template creates template for "java" by default
  • WI-798 — "PHP Class" File Template can be modified in ways which are denied by documentation
  • WI-799 — No files shown in search results
  • WI-801 — No way to forcefully cancel "remote deployment" when quitting
  • WI-807 — PHP highlighting of multiline quotes can slow performance
  • WI-809 — Move statement Up/Down breaks identation (for Allman indent style code, at least)
  • WI-810 — Warning about undefined method missed
  • WI-811 — IDE fail in heredoc
  • WI-814 — expression expected notice is wrong
  • WI-816 — Autocomplete doesn`t work for variable got from annotated with PHPDOC @var variable
  • WI-817 — No warning for method call, that doesnt exist in called class, but exists in other class in project
  • WI-818 — No error warning for fragment with "anyword:"
  • WI-819 — No error warning for incorrect syntax ;->
  • WI-820 — Expected bool, got boolean - for the third parameter in in_array function
  • WI-821 — Expected array, got int - for min function
  • WI-823 — Php code blocks aren't recognized in .html files
  • WI-824 — Wrong html code commenting in php files
  • WI-826 — Folding doesn't work for alternate php syntax
  • WI-827 — Highlighting current scope and matched brace doesn't work on alternate php syntax
  • WI-828 — No warning for multiple labels with same name
  • WI-855 — Serious Performance Issues/Lockage with FTP Deployment
  • WI-857 — invalid window size if maximazied & restarted
  • WI-863 — HTML formatting in PHP files does not work
  • WI-867 — Good code is red for \0 and \v javascript escape characters
  • WI-868 — Copy path. Slashes.
  • WI-871 — Installed 94.48 and now evaluation license expired
  • WI-873 — "Quick Documention" doesn't show description from PHP API (for API function defined if it is missing in current PHP version)
  • WI-874 — whole-word search fails
  • WI-876 — Code folding by default doesn't work
  • WI-877 — Cannot convert value '0000-00-00 00:00:00' from column 20 to TIMESTAMP.
  • WI-881 — line-height should not require a dimension
  • WI-884 — Autocomplete for new StdClass() doesn`t work
  • WI-888 — PHP home read only once
  • WI-889 — SVN project in an invalid state after refactor->move
  • WI-891 — Wrong upload path with non "/" root path
  • WI-892 — autocomplete for PHPDoc tagnames before class doesn`t work
  • WI-895 — No error for wrong method declaration in interfaces
  • WI-896 — Wrong errors in PHP HEREDOC for escaped characters
  • WI-897 — No error warning for ; after method
  • WI-902 — PHPDoc autocomplete types after @property tag doesn`t work without $variable
  • WI-903 — Find Usages doesn`t work for finding file usages
  • WI-906 — Resources not found (can't set document root / web root / base href) due to unknown content path when using special dir layout
  • WI-908 — Analyze Stacktrace functionality (Tools | Analyze Stacktrace) is not implemented.
  • WI-911 — Unable to find required classes (javax.activation.DataHandler and javax.mail.internet.MimeMultipart). Attachment support is disabled.
  • WI-913 — Paired tags hilight bug
  • WI-915 — Bug when moving file between changelists
  • WI-917 — Debugger is unreliable
  • WI-920 — JavaScript code formating - IF indents
  • WI-921 — WebIDE doesn't highlite error in html code in .php file
  • WI-922 — Inspertor shows superclasses methods as undefined (PHP)
  • WI-933 — Update Remote Deployment page reference
  • WI-934 — Write access detected instead of read / Find usage wrong output
  • WI-935 — Wrong indent after 'class' statement (extra tab is inserted)
  • WI-936 — Show tabs in single row and quick navigation
  • WI-938 — Go to|File... - support backslashes in path
  • WI-940 — Atocomplete bug
  • WI-944 — Undefined method bug
  • WI-945 — Find usages of __construct is not worked.
  • WI-946 — Wrong indent of curly brace after 'class' statement
  • WI-947 — Web IDE Help: XSebug => XDebug
  • WI-950 — $[no_name] variable reference should result in parsing error.
  • WI-953 — exception
  • WI-956 — Expected bool, got boolean
  • WI-958 — Debugger says "Connection error: invalid packet"
  • WI-960 — No warning for calling undefined method from variable in foreach loops
  • WI-961 — Cannot type anything in editor, got exception
  • WI-966 — Variable is evaluated incorrectly when invoked from tooltip
  • WI-968 — Language-independent keymap
  • WI-970 — new operator: undefined methid bug in if class name stored in object property
  • WI-971 — Array of objects isn't recognized as array
  • WI-972 — Referencies calculation error in refactor preview tab
  • WI-975 — Update reference page "Background"
  • WI-980 — Infer filed type from initializer.
  • WI-983 — type inference from unary 'not'
  • WI-986 — Wrong inspection: access type for interface method must be omitted
  • WI-987 — Wrong foreach type inference
  • WI-988 — Typehinting: ClassName[] is not compatible with array type
  • WI-989 — Generate DTD (XSD) from XML file and Validating XML file - menu items are missing.
  • WI-990 — using minus sign before switching to php mode inside css leads to "Invalid CSS property value"
  • WI-991 — Undefined class: parent is undefined when inheriting from conditional class definition
  • WI-994 — Invalid formatting from "Insert pair }" in special case
  • WI-996 — Css structure widget becomes empty after reformatting the code
  • WI-998 — Show diff says "No differences" when line separators are changed
  • WI-1002 — Project vs IDE FTP/SFTP settings
  • WI-1004 — Cannot jump to included file if include() has PHPDoc with ".."
  • WI-1005 — No effect when ctrl-clicking a directory in include('foo/baz/bar.php')
  • WI-1008 — Annotation bug
  • WI-1010 — IntellijIdeaRulezzz
  • WI-1012 — Array item is recognized as array
  • WI-1014 — Class completion
  • WI-1015 — Code completion in single quotes
  • WI-1017 — Add build.txt
  • WI-1018 — Wrong function parameters indentation
  • WI-1019 — SVN: commit don't works in .149
  • WI-1020 — IDE completes quotes too much
  • WI-1022 — Linux usability problems
  • WI-1023 — Update reference for the Directory page of the settings dialog box.
  • WI-1025 — &$var is not parsed as $var reference in function calls
  • WI-1026 — HTML & JS code syntax coloring won't change without IDE restart
  • WI-1028 — FTP Deployment: hard to recreate folder deleted from different location
  • WI-1030 — FTP: Preverve timestamps may work incorrectly in case of non-empty root folder
  • WI-1031 — Annoying notice, that i can't get rid of
  • WI-1033 — Very poor formatting capability or bug
  • WI-1034 — Global namespace declaration bug
  • WI-1036 — FTP Deployment: class move is not synchronized at once
  • WI-1038 — FTP Deployment: ignored stuff should never be uploaded/downloaded
  • WI-1039 — Remove trailing whitespace fails on empty lines.
  • WI-1040 — FTP Deployment: after versioned package rename commit the ftp folder loses its contents
  • WI-1041 — FTP Deployment: Remote Host view loses its contents after closing project
  • WI-1042 — Bug with redrawing UI (particularly editor window)
  • WI-1045 — Refactoring namespaced classes and 'use' keyword
  • WI-1047 — Ctrl+V vs Shift+Insert (linux) in search box
  • WI-1049 — content.dat.storageData has 2Gb
  • WI-1050 — Double click to select a word takes a loooong time
  • WI-1052 — HTML syntax coloring does not affect id`s attribute value
  • WI-1054 — Incorrect detections of the parameter type
  • WI-1056 — 3-arg define is not parsed properly
  • WI-1059 — Inject Language not working
  • WI-1061 — Indent on enter is not correct for control structure without braces
  • WI-1064 — Smarty: improve array access
  • WI-1065 — Smarty: improve logical operators handling in if clause
  • WI-1066 — Smarty: custom blocks
  • WI-1067 — html/xhtml file templates are not visible in settings
  • WI-1069 — WI Hangs when reopening a project
  • WI-1070 — Open one file is opening parent directory
  • WI-1073 — FTP Deployment: the Limit Concurrent Connections value set in host Advanced Options is not preserved
  • WI-1076 — ClassCastException: PhpFile => PsiDirectory
  • WI-1077 — When moved folder appears under mapped paths, it's content is not uploaded
  • WI-1081 — Can't blame a plugin
  • WI-1082 — Smarty modifiers for variables and strings support
  • WI-1083 — PHP constants are case-sensitive
  • WI-1087 — Javascript&Smarty: unterminated statement bug
  • WI-1089 — Add Task and Context Management concept
  • WI-1093 — Map help button of the SQL page of Code Style settings.
  • WI-1094 — Add ability to customize Smarty inspections
  • WI-1095 — Formatter ignores comments while reformating.
  • WI-1097 — Console errors
  • WI-1098 — Smarty/PHP If/else (and other blocks) and html tag id uniqueness bug
  • WI-1101 — Upload task closes project instead of closing IDEA if requested
  • WI-1102 — Can't manage debug settings dialog under linux (kubuntu 9.10)
  • WI-1105 — Can't cancel remote deployment task
  • WI-1107 — Impossible to turn off auto-saving
  • WI-1108 — PHP 5.3 allows static function calls on variable class names
  • WI-1110 — Smarty foreach properties are not supported.
  • WI-1114 — FTP Deployment: after project reopening upload fails
  • WI-1116 — If class has method and member of same name, structure view only shows first one
  • WI-1117 — Server tree refresh freezes UI
  • WI-1118 — require_once bug
  • WI-1121 — Can't place Remote Deployment buttons on toolbar
  • WI-1123 — Wrong type warning after Replace quotes quickfix
  • WI-1124 — Can`t create Run configuration for xsl files.
  • WI-1128 — Add live preview with syntax coloring to formatting preview in settings
  • WI-1129 — Default Keymap Reference button does not work
  • WI-1131 — Zen coding: broken code for nested tags
  • WI-1134 — PHP editing broken by native Zen Coding
  • WI-1138 — Autoformatting breaks down if there is a syntax error anywhere in the file
  • WI-1140 — Zen Coding: no formatting is applied to a resulting code
  • WI-1144 — JS code syntax coloring won't change without IDE restart
  • WI-1145 — Formatting does not work in some cases
  • WI-1146 — JS weird reformat
  • WI-1148 — Html tag autoclosing does not work in some cases
  • WI-1157 — Convert string from 'abc' to "abc" fails in special cases
  • WI-1158 — Tooltip with the parameters of the function doesn't disappear
  • WI-1159 — Zen coding in PHP
  • WI-1160 — Add autocomplete for parent, self inside class method
  • WI-1161 — Wrong phpdoc @return indent if one of @protected/@private, @static, @throw was added to phpdoc too
  • WI-1163 — Exception on copy and then paste
  • WI-1172 — comment line in JS file spoils strings
  • WI-1176 — JSDoc interpretation of object property type declaration issue
  • WI-1180 — Html scope higlighting does not work in .php files
  • WI-1186 — phpdoc annotation and variable name with lower/upper case letters bug
  • WI-1187 — Highlight current scope in Smarty template bug
  • WI-1190 — Smarty {assign} tag validation bug
  • WI-1191 — cmd(apple key)+V not working for pasting in SEARCH box on MacOSX
  • WI-1192 — phpunit type hinting test fails from IDE and is OK from console
  • WI-1193 — cmd-shift-enter doesn't complete if/while statements
  • WI-1194 — smart-indent doesn't work as expected
  • WI-1196 — cmd-alt-B doesn't bring up subclass list
  • WI-1199 — Possible phpdoc @var annotation bug
  • WI-1200 — replace - can't replace with regexp
  • WI-1204 — Zen Coding wrongly triggered within PHP
  • WI-1205 — Backreferences in Edit-Replace using Regular Expressions
  • WI-1206 — static var not working with type detection
  • WI-1207 — auto-generated PHP doc is malformed
  • WI-1209 — WebStorm/PhpStorm saves its log file in a wrong place on Mac OS X
  • WI-1210 — debuger trouble: invalid packet
  • WI-1211 — Do not generate @access php-doc tag
  • WI-1212 — @var typehint removes the variable from completion
  • WI-1213 — Parameter inspection bug
  • WI-1223 — Menu is sized incorrectly
  • WI-1226 — HTML is injected into wrong HEREDOC literal
  • WI-1229 — Ctrl+V vs Shift+Insert (linux) in search box (так и не решено)
  • WI-1230 — Wrong variable suggestion order
  • WI-1231 — PHP inside JS literal - The IDE shows a php syntax error, while actually there isn't
  • WI-1233 — Cannot run PhpUnit tests on server if auto upload is on
  • WI-1236 — Use of "Split current tag" feature and language injection leads to an unpredictable result
  • WI-1239 — Move To outside of the current project crashes
  • WI-1241 — Productivity hints window contains defect images
  • WI-1242 — Unable to read Tip of the Day
  • WI-1243 — Remote server project loading stucks at "Logging in"
  • WI-1247 — WebIde file-browser must display available network locations
  • WI-1249 — Structure window shows outdated info
  • WI-1250 — 430 build help is gone
  • WI-1251 — help | default key map reference doesn't do anything
  • WI-1252 — include Yii framework in WebIDE
  • WI-1253 — Shebang Line in Linux start script is wrong
  • WI-1254 — failed to transfer file './htaccess'
  • WI-1256 — Ctrl + Shift + F7 on global variable does not work properly
  • WI-1257 — Please use correct *case sensitive* product names for both artifacts and root folders in help jars
  • WI-1259 — Method resolve when not under source root
  • WI-1261 — Variable as a class name (refactoring, highlighting)
  • WI-1266 — Remove irrelevant link
  • WI-1267 — Zen Coding support issues
  • WI-1269 — Update Getting Started with PhpStorm
  • WI-1274 — Don't store (S)FTP password if auth failed
  • WI-1275 — overeager brace insertion when non-related syntax-errors are present
  • WI-1278 — Problem with absolute path evaluation (require_once)
  • WI-1279 — Add support for php functions in Smarty if tag
  • WI-1281 — No method completion for parent static methods
  • WI-1283 — switch/case indentation in special case
  • WI-1285 — quickly pressing Alt+Tab, Alt+Tab activates menu File
  • WI-1286 — IDE can not recognize JS global function calls in object inner scope
  • WI-1289 — Remote Hosts port setting not saving correctly in version WI-94.430, worked in 94.335
  • WI-1290 — HTML text: Brace disappears
  • WI-1292 — Removed tasks reappear on restarting phpstorm
  • WI-1293 — Update the list of languages and IDE components in the Editor / Colors and Fonts reference
  • WI-1296 — WebIde uninstall doesn't work well
  • WI-1297 — Remote deployment option is not shown for template project
  • WI-1298 — Could not save a project
  • WI-1299 — WebIde stucked and won't even die after killing the process from Task Manager
  • WI-1300 — The Ide folder loading stucks at a certain folder
  • WI-1303 — Broken autocomplete for html tags in .php files
  • WI-1304 — xhtml strict html tag: wrong inspection
  • WI-1306 — Auto documentation steals pointer focus
  • WI-1313 — Unused css is not highlighted.
  • WI-1314 — 'null' in message box
  • WI-1315 — Create wrapping code example for JavaScript
  • WI-1316 — rename refactoring works correctly only once - PHPDoc is not renamed 2nd time.
  • WI-1317 — Issue with Monaco font into OSX Wi
  • WI-1318 — List of superglobal variables is wrong
  • WI-1319 — Bad code is green: no warning for undefined magic method calls
  • WI-1320 — do not resolve 'parent' keyword in a class without parent
  • WI-1321 — phpunit test with @ fails from IDE and is OK from console
  • WI-1322 — Wrong @return in PHPDoc generated for null
  • WI-1323 — Add ImageMagick extension support
  • WI-1324 — Wrong superglobal vars are completed
  • WI-1325 — Don't lock UI when opening new project in new window
  • WI-1327 — Rename: refactor rename folder always searches
  • WI-1329 — Smarty: array access
  • WI-1333 — javascript code parsing too strict
  • WI-1335 — Undefined field: press Alt+Enter -> 'Add field' and got var
  • WI-1340 — Make clear "Syncronize with remote" button and option
  • WI-1341 — Can't disable default Live templates
  • WI-1342 — Group filtering doesn't work with "All in Directory" test type
  • WI-1343 — "Issue not found" when switiching issues with jira
  • WI-1346 — No icon at Windows 7 task bar
  • WI-1347 — Performance bottleneck for long PHP files
  • WI-1350 — Zen coding: br expands to independently from file type
  • WI-1351 — wrong inspection for smarty config variables that surronded by {# and #} like {#var#}
  • WI-1357 — Test connection problem
  • WI-1358 — Wrong methods name in Structure tree (PHP)
  • WI-1359 — Change files permissions for mounted server
  • WI-1360 — Files with only property[index] expression type for Array props type inference is not working.
  • WI-1528 — Php functions are case insensitive, though variable's names are not
  • WI-1529 — true, false, null - undefined constants
  • WI-1530 — Parent class fields/methods are not resolved.
  • WI-1531 — Go to project home bring to wrong directory
  • WI-1532 — Mounted disc status is not updated
  • WI-1533 — Неверная раскраска в редакторе для методов с именами, совпадающими с именами глобальных библиотечных функций
  • WI-1534 — Auto formating on arrays doesn't work correctly
  • WI-1542 — NOWDOC parsing
  • WI-1546 — Typehinting in phpStorm does not take extends into consideration
  • WI-1548 — Unresolved include: PHP include/require path resolution fails on symlinks
  • WI-1551 — Exception class undefined
  • WI-1553 — Maia-95.4/ MacOS X 10.6.3 - PHP/xdebug not working.
  • WI-1554 — Incorrect formatting of big multirow control structures
  • WI-1556 — PHP+HTML+Javascript mix: wrong error 'statement missed'
  • WI-1557 — Optimize list-style properties inspection: loses close curly bracket when css rule on one line
  • WI-1560 — SQL language injection turns off when breaking the line into more
  • WI-1561 — "Edit genericSQL Fragment" works in the wrong way when having a phpvar in the SQL
  • WI-1563 — View->Show Line Numbers enables it ONLY for the currently open window
  • WI-1564 — Smarty foreach 'key=key' usage results in ?> expected error
  • WI-1565 — Using smarty in style attribute results in 'invalid css property'
  • WI-1566 — Php insertions in mysql-injected strings are considered errors
  • WI-1567 — Ctrl+click and ctrl+b navigate to parent's class constructor instead of current class declaration
  • WI-1571 — Code completion of variables should use variables, declared in phpdoc in other php fragments
  • WI-1573 — PHP debugging isn't working. Fatal error in IDE.
  • WI-1574 — Maia 95.4 - PHP development - using change name refactoring for a PHP class variable symbol changes all symbol names in all PHP files in project
  • WI-1576 — Some problem with dynamic include expression
  • WI-1580 — AutoComplete PHP function gives bad code ()(
  • WI-1582 — Indices are being rebuilt continously
  • WI-1583 — No autocompletion of phpDoc tags in some cases
  • WI-1584 — Zen Coding does not work
  • WI-1586 — Broken tree-view in Project Settings -> Directories
  • WI-1599 — Variables created through arguments by reference in methods are marked undefined
  • WI-1601 — Need to be able to edit WARNING_ATTRIBUTES option under colors.
  • WI-1602 — CSS Autoindenting
  • WI-1605 — Invalid "%} expected" error in Smarty template
  • WI-1610 — Some suggestions for "background-position" property value are wrong
  • WI-1612 — WebStorm crashed
  • WI-1617 — css autocomplete after edit string work wrong
  • WI-1618 — Wrong error is shown if string is MySQL injected
  • WI-1619 — Smarty: incorrect handling of javascript and {literal} tag
  • WI-1620 — If/else folding
  • WI-1622 — Do not work link redirections in JSDoc
  • WI-1623 — Closures inside functions
  • WI-1625 — "Inspect" and "Copy Value" options in the debugger give a truncated version of a long string
  • WI-1628 — Vertical indent line bug
  • WI-1629 — Folding: Folding manipulators overlay on gutter Can't expand a collapsed node
  • WI-1631 — The IDE cannot find and highlight the opening or the closing tag
  • WI-1632 — Incorrect formatting of some inline elemnts with php-inclusions
  • WI-1633 — Live templates php context is enabled where it shouldn't be
  • WI-1634 — define() isn't recognized if its not a top-level statement.
  • WI-1641 — Refactoring - Rename
  • WI-1644 — Interface's methods autoimplementation won't work on SPL interfaces
  • WI-1646 — "Parameter info" functionality works wrong in some cases.
  • WI-1650 — list-style-type values of upper-alpha and lower-alpha are incorrectly reported as invalid
  • WI-1651 — Variables are marked as undefined when they're defined by reference in exec() call
  • WI-1652 — Go to declaration goes wrong on creating object
  • WI-1653 — Wrong 'Undefined variable' after inner function
  • WI-1655 — Duplicate variants in completion popup
  • WI-1658 — reference class using a variable gives "Expected: semicolon" error
  • WI-1661 — Wrong argument for function in PHPUnit runner
  • WI-1665 — Missing 'undefined variable' when using variable before its declaration
  • WI-1666 — static class completion do not check static for inherited static methods
  • WI-1669 — Formatting bug: too big indent because of the closing brace postion
  • WI-1675 — Exception (fatal error) when phpdoc generation
  • WI-1677 — Function should be considered as valid callback
  • WI-1678 — Bad html formatting when having a control structure in html code
  • WI-1682 — Class member modifier stucks (until full fragment reparse)
  • WI-1683 — Javascript: find usages is totally unreliable
  • WI-1684 — Zen Coding: empty tags expands w/o closing slash independently from filetype
  • WI-1690 — Incorrect expression in "Watches" window stops debugger completely
  • WI-1691 — "Watches" window saves state only when debug session is active
  • WI-1692 — Missing 'undefined variable' when variable exists in both sides of assignment
  • WI-1707 — Replace quotes intension moves code block inside CDATA
  • WI-1708 — Closure isn't considered a valid callback
  • WI-1709 — use clause imported vars do not resolve to context vars (unused, not renamed, etc.)
  • WI-1710 — error_get_last function
  • WI-1712 — Type compatibility: expected resource, got string
  • WI-1716 — Static methods are offered in autocomplete for non-static methods
  • WI-1726 — Stubs for built-in PHP interfaces work wrong
  • WI-1727 — Nested instantatiation suggests wrong parameters
  • WI-1728 — SIOOBE at injection
  • WI-1732 — "Edit fragment" corrupts code.
  • WI-1733 — PhpUnit: E_WARNING: set_exception_handler() expects the argument (1) to be a valid callback
  • WI-1734 — Error running PHPUnit tests on a local server
  • WI-1736 — Remote filenames that contain '\' char are not supported
  • WI-1737 — Wrong formatting when using arrow notation
  • WI-1738 — Help is broken in PhpStorm 95.74 see screenshot
  • WI-1740 — Do not inject xml string with html
  • WI-1742 — Support alternative min() syntax
  • WI-1743 — Fix autocomplete for abbreviated class names
  • WI-1746 — Interface implementation inspection bug.
  • WI-1747 — comments wrong parse
  • WI-1748 — URI is not registered when using quote escapes
  • WI-1750 — Wrong error in sql (mysql) file is shown
  • WI-1751 — PHP syntax highlighting shows error when referencing static property via fully-qualified namespace
  • WI-1753 — Include resolution & inspection: Path '..' not found
  • WI-1754 — Unexpected "unused local variable" for "global $var;"
  • WI-1757 — SQL query inspection error (MySQL dialect)
  • WI-1759 — WebIde hangs if LiquidLookAndFeel installed
  • WI-1760 — Replace quotes trims string
  • WI-1762 — Include resolution & inspection: Incorrect path validation bug
  • WI-1763 — Duplicate result in completion list
  • WI-1764 — Enter action wrong formatting
  • WI-1767 — Case sensitive issue in mixing impements and extends for class.
  • WI-1769 — No line breaks in code sample
  • WI-1770 — Remove irrelevant link
  • WI-1774 — Remove irrelevant contents re ORM
  • WI-1775 — Remove mention of properties files in Encoding section
  • WI-1778 — Update contents of the section "Populating projects"
  • WI-1779 — Provide proper thumlnail
  • WI-1780 — Provide relevant contents in "surrounding with language constructs" section
  • WI-1781 — Provide conditional example of hippie completion
  • WI-1785 — Provide complete list of options in the section "Accessing Inspection Settings"
  • WI-1789 — Remove tag
  • WI-1790 — Update contents of the "Debugging" section
  • WI-1791 — Remove irrelevant sections
  • WI-1792 — Remove irrelevant sections
  • WI-1793 — Provide product-specific images
  • WI-1794 — Update description of the evaluate expression procedure
  • WI-1795 — Add description of the Scripts tab to Debug tool window
  • WI-1798 — Provide product-specific image
  • WI-1799 — Remove irrelevant section
  • WI-1801 — Smarty foreach error
  • WI-1802 — PHP Code Style tab does not work on OSX
  • WI-1804 — mootools support and javascript validator
  • WI-1805 — Inspector ignores equal method names with different cases
  • WI-1808 — PHPStorm does not interpret @property phpdocs correctly
  • WI-1809 — PHP console process is not destroyed when debugging stops if no Xdebug connection was established
  • WI-1810 — "Wrong attribute value" for HTML-autoinjected-string with escaped quotes/doublequotes
  • WI-1815 — PhpStorm Beta 95.74, some PHP classes are not indexed.
  • WI-1820 — Update description of the Code Style | General page
  • WI-1821 — Help page is missing for Settings - Code Style - Wrapping
  • WI-1822 — Update reference page for JavaScript/ECMAScript/ActionScript
  • WI-1823 — Update reference page for Deployment | Options
  • WI-1824 — Complete Deployment reference
  • WI-1825 — Update reference page for PHP|Debug
  • WI-1827 — No Code Completion: Object not recognized?
  • WI-1830 — Make html code completion behave in php editor as it behaves in html editor
  • WI-1832 — Edit HTML Fragment: Strange Behavior
  • WI-1840 — Rename a tag in HTML-autoinjected string
  • WI-1842 — Smarty don't offer to complete already defined attribute
  • WI-1843 — Smarty: offer completion of attributes names on empty space
  • WI-1845 — phpdoc vs moving lines (Ctrl+Shift+up/down)
  • WI-1846 — Extra line breaks inserted after Introduce variable
  • WI-1847 — Debugger validation file should not be scheduled to subversion addition
  • WI-1848 — Warning label is not updated
  • WI-1849 — Remote Host view is not updated properly on external deleting of folder
  • WI-1850 — Remote Host view is refreshed in all projects if the mapping is edited for one of them
  • WI-1851 — PhpUnit add custom working directory field in run configuration
  • WI-1853 — Array autocompletion regression
  • WI-1855 — Tools/Deployment menu should not show 2 same-named 'upload to ' actions (if there's a single server configured)
  • WI-1856 — Zen Coding is broken again in CSS
  • WI-1858 — Undo create file: project tool window bug + NPE
  • WI-1860 — Wrong error with MySQL Store proc
  • WI-1862 — Some functions are doubled in autocompletion list
  • WI-1864 — Autocomplete class doesn't work for "F::func()"
  • WI-1866 — Documentation popup improvement: show description for @method and @property without full phpdoc info
  • WI-1867 — Validate Xdebug setup for the directory where script is about to be executed
  • WI-1873 — PHP runtime crash when resuming XDebug session
  • WI-1875 — html+javascript: Unterminated statement
  • WI-1876 — Dialog Rename do not save last checkboxes status
  • WI-1877 — Search for text occurrences in Refactor\Rename spoils php code
  • WI-1878 — Viewing jquery.js causes fatal error in Webstorm Beta 95.98
  • WI-1879 — Broken support for highlight when using $variables in JSQualifiedNamedElement error.
  • WI-2214 — Generate PHPUnit test: PHPUnit generate test
  • WI-2215 — Parsing of code blocks started with "php echo opening tag"
  • WI-2218 — Annotation: declaration of constants not at the top-level scope using "const" syntax is forbiden
  • WI-2219 — Please document 'Compatibility mode' option
  • WI-2231 — Reference navigation & completion fails inside PHP HEREDOC literals with intellilang injections
  • WI-2234 — PHPUnit on server: Run tool window: class name is specified as "null"
  • WI-2237 — PHP Inspector strtok
  • WI-2238 — PHP Code Inspector error SCRIPT tag in PHP string
  • WI-2239 — Parsing of assignments in field declarations
  • WI-2242 — Web server browser; Don't show 'Could not connect' message when the problem is 'Could not change to work directory'
  • WI-2243 — When refreshing remote host view due on download, correctly handle the case when all the folders up to the root node are suddenly deleted
  • WI-2245 — Annotation: Namespace declaration statement has to be the very first statement in the script
  • WI-2246 — Annotation: No code may exist outside of namespace {}
  • WI-2251 — Search and Replace (ctrl+r) dialog mouse/vs keyboard Replace all invocation
  • WI-2252 — HTML injection incorrect warning
  • WI-2253 — "unused local variable" for Capital Variable
  • WI-2256 — Run configurations: PHPUnit: when XML configuration is provided, allow user to run (don't show error)
  • WI-2261 — structure pane A~Z locked on. It works even if not asked to work.
  • WI-2263 — Introduced variable do not work for ternary operator.
  • WI-2265 — Settings / Deployment / Options / "Delete target item if source one is missing" does not affect the download
  • WI-2267 — PHP debug: false error in case zend_extension is not configured, but xdebug.remote_enable is On
  • WI-2268 — Write access detection for parameters
  • WI-2269 — PHP code completion not working
  • WI-2271 — © symbol highlighted red in HTML 4.01 transitional document
  • WI-2275 — PhpUnit: @expectedException PHPUnit_Framework_Error
  • WI-2276 — Re-implement Undefined variable inspection/resolve via PSI (uses editor now, broken actually)
  • WI-2280 — Constant and Field with same name in same class
  • WI-2281 — Problem with loggin to Subversion (Ubuntu / svn 1.6 vs ghome-keyring)
  • WI-2283 — PHP debug: Xdebug validation fails for php-cgi, breakpoints do not work

New in PhpStorm 9.0 Build 141.1534 EAP (Jun 11, 2015)

  • New features and improvements:
  • PHP Language & Editing Experience: advanced code understanding (introduce parameter refactoring, advanced PHP type inference, support for persistent language injections, numerous new inspections and intentions), postfix code completion for PHP, partial PHP 7 support, other PHP-related enhancements.
  • New Debugging Experience: inline debugger for PHP, debugging workflow enhancements (proper php.ini can be opened from settings, debugger config validation enhancements, import from Deployment action, PHP servers config shared on project level).
  • Remote Development: remote edit, PHP Code Sniffer and Mess Detector via remote PHP interpreters.
  • Improvements related to frameworks, tools, etc.
  • Fixed issues:
  • PHP Completion:
  • WI-20711 (Usability Problem): Completion should list all classes/interfaces regardless of static members (support for ::class)
  • PHP Formatter:
  • WI-24572 (Bug): Reformat code action replaces array() with [] even when it should not
  • WI-26872 (Bug): Code generation works "bad" together with option "Force short declaration style"
  • WI-27589 (Bug): Blank Lines are not being removed on formatting PHP/HTML mix
  • WI-27009 (Bug): "Force short declaration style" does not respect scope
  • PHP Refactoring:
  • WI-20335 (Bug): Move static member: no warning is issued if abstract moved method overrides "usual" method
  • PHP debug:
  • WI-26880 (Feature): PhpStorm should show exception message and exception code (2.3.x only) when breaking on an Exception breakpoint.
  • WI-27557 (Feature): Allow to import deployment server during a new connection
  • WI-27433 (Feature): Navigate to php.ini from interpreter settings for remote interpreter
  • PHP lang:
  • WI-27391 (Usability Problem): Generate PHPDoc for argument with type and NULL default value miss null from @param type
  • WI-23395 (Bug): PhpStorm PhpDoc inheritance mechanics is incorrect
  • Plugin: Deployment _ FTP..:
  • WI-27639 (Cosmetics): Remote Edit: cannot undo dialog shows internal id of the server
  • Plugin: Drupal support:
  • WI-19981 (Feature): Drupal hooks in other files
  • WI-22998 (Feature): Drupal hooks suggestion doesn't work in included file
  • No subsystem:
  • WEB-16843 (Usability Problem): Bower: notify users when searching for packages fails because of time out
  • IDEA-141222 (Bug): Cannot switch between projects
  • WEB-16724 (Bug): Extract variable in reactjs .jsx file fails
  • IDEA-141078 (Bug): Javadoc quickdoc popup: "null" text instead of "@Nullable"?
  • HTML:
  • WEB-15277 (Bug): Repeating breadcrumbs
  • WEB-16802 (Bug): Misplaced lang attribute in new HTML file (head instead of html)
  • WEB-2329 (Exception): Exception is thrown for Zen coding in injected HTML
  • JavaScript. Frameworks:
  • WEB-16753 (Bug): Component name shows multiple time in the code completion suggestions
  • JavaScript. Inspections:
  • WEB-16840 (Feature): Add support for eslintConfig field in package.json
  • WEB-16403 (Feature): Code Quality Tools - JSHint Search for configs(s) Correction
  • WEB-16652 (Bug): Code Quality Tools: inspections settings should be taken from profile chosen when running Code/Inspect Code
  • WEB-16816 (Bug): ESLint does not work on *.es6 files
  • WEB-16860 (Bug): ESLint Plugin needs to support the --reset option
  • LESS:
  • WEB-16701 (Bug): Parser throws error on valid LESS variable names beginning with numbers
  • Node.js:
  • WEB-16715 (Bug): Node: detect npm location for nodist on Windows
  • Plugin Support. API:
  • IDEA-141111 (Bug): CustomUncommenter#findMaximumCommentedRange is broken
  • Version Control. Git:
  • IDEA-140436 (Usability Problem): Git | Merge Changes with conflicts does not automatically display Resolve Conflicts
  • IDEA-140297 (Usability Problem): Drag-n-drop in interactive rebase editor works incorrectly
  • IDEA-141204 (Bug): Git log displays labels incorrectly for Git 2.4.3

New in PhpStorm 9.0 Build 141.1408 EAP (Jun 4, 2015)

  • PHP Inspections:
  • WI-27154 (Bug): Nested array PHPDoc results in unused use statement warning
  • WI-26953 (Bug): PHPCS Remote: impossible to set custom remote coding standard
  • WI-27295 (Bug): Wrong Missing parent constructor cal warning if same class present more than once
  • WI-27487 (Bug): Mess Detector Remote: impossible to set custom rules
  • PHP debug:
  • WI-27431 (Feature): Validation: detect if hhvm is used in "Web Server Debug Validation"
  • PHP templates:
  • WI-24950 (Feature): Blade: Support {!! !!} as content tags
  • WI-27527 (Cosmetics): Blade: parser error messages about closing tags should depend on project settings
  • WI-27534 (Bug): Blade: completion for escaped tag doesn't complete one closing brace
  • WI-27535 (Bug): Blade: completion of Laravel 4 content tags doesn't insert one space
  • WI-27537 (Bug): Blade: wrong formatting of consequent php tags
  • WI-27524 (Bug): Blade: improper quote escape handling
  • PHP test:
  • WI-27435 (Usability Problem): New remote interpreter is not propagated into PHPUnit by Remote Interpreter dialog
  • Plugin: Deployment _ FTP..:
  • WI-7231 (Feature): Provide 'Create file' action for 'Remote Host' view
  • WI-27566 (Usability Problem): Allow to assign shortcut for action ''New'' in Remote Host tab
  • WI-27569 (Usability Problem): Make remote edited files navigatable to Remote Host with Alt+F1 (Select in... action)
  • Plugin: GAE support:
  • WI-27516 (Usability Problem): Make oAuth default type of authentication
  • WI-27514 (Cosmetics): Proper alignment in run configuration
  • WI-27515 (Bug): Set php55 runtime in default app.yaml
  • HTML:
  • WEB-16748 (Bug): Simultaneous tag editing feature fails at PHP string
  • Indices:
  • IDEA-136562 (Exception): SerializerNotFoundException
  • TypeScript:
  • WEB-15917 (Bug): Typescript: wrong declare class and declare var constructs formatting
  • User Interface:
  • IDEA-139761 (Bug): Incorrect rendering of scrollbar track
  • Version Control. Git:
  • IDEA-140501 (Performance Problem): Using all of the CPU and eventually WebStorm is unusable

New in PhpStorm 9.0 Build 141.1306 EAP (May 28, 2015)

  • Highlights:
  • PHP Mess Detector can now be run via remote PHP interpreter
  • Postfix completion for PHP improvements
  • PHP 7 initial support improvements
  • Fixed issues:
  • WI-22675 — Add support for running Mess Detector using remote interpreters
  • WI-27454 — Highlighting of PHPCS and PHPMD is reversed
  • WI-27524 — Blade: improper quote escape handling
  • WI-27514 — Proper alignment in run configuration
  • WI-27449 — Quick fix for PHP 7 features is named "switch to 5.6 language level" and do nothing
  • WI-27448 — PHP 7: return type in class method declaration is not supported
  • WI-27447 — PHP 7: return type array is not supported
  • WI-27370 — Blank Lines are not being removed on formatting PHP/HTML mix
  • WI-27239 — Remote edit: doesn't check on upload whether remote file was changed
  • WI-27225 — Postfix completion: disable all templates except par and not for parameter default value

New in PhpStorm 9.0 Build 141.1224 EAP (May 21, 2015)

  • Highlights:
  • Partial support for PHP 7 return type hints (see WI-23701 for details and related issues)
  • Postfix code completion for PHP supports aliases (nn for notnull and ! for not), new templates, such as fe (foreach), throw, echo, other postfix code completion improvements
  • PHP formatting improvements and new formatter options (brace placement for namespaces)
  • New inspection: checks for namespace case-insensitive usage
  • PHP Completion:
  • WI-27250 (Feature): Postfix completion: provide alternative postfix names / aliases
  • WI-27226 (Usability Problem): Postfix completion: disable all templates except par and not for constant/field default value
  • WI-27245 (Bug): Description and examples for postfix templates should be updated
  • PHP Formatter:
  • WI-23754 (Bug): Add a possibility to ensure blank lines between members (properties, methods, etc.), instead of around
  • WI-27411 (Bug): Blank lines are not removed for alternative syntax
  • WI-27421 (Bug): End of line brace placement in namespace is overridden by Next line setting for Other
  • WI-18037 (Bug): Place braces on next line option doesn't work for namespaces
  • WI-27370 (Bug): Blank Lines are not being removed on formatting PHP/HTML mix
  • WI-25799 (Bug): Single line comments: line break in middle changes comment style in next line
  • WI-17989 (Bug): Reformatting according to style doesn't work for file templates
  • PHP Inspections:
  • WI-27158 (Feature): Add inspection for namespace case-insensitive usage
  • WI-20501 (Bug): Add method stubs: doesn't handle situation when more then 2 abstract methods with the same name need to be implemented
  • PHP lang:
  • WI-23701 (Feature): Add support for PHP 7 return type hints.
  • WI-27067 (Usability Problem): Wrapping a statement in () doesn't work for class constructor
  • Plugin: Deployment _ FTP..:
  • WI-21962 (Bug): Upload changed when document save
  • WI-27231 (Bug): Remote Edit: Symlinked files are truncated
  • No subsystem:
  • WEB-16386 (Performance Problem): WebStorm 10.0.2 hangs and does not respond
  • WEB-16467 (Bug): HEAD request not handled correctly in built in server
  • WEB-16446 (Bug): JSCS package path is configured globally rather then per project
  • WEB-16594 (Bug): Good code marked red. Javascript getter shown as error if version set to ECMAScript 6 or JSX Harmony.
  • WEB-16620 (Bug): ES6 Modules: defaultVal, * as all — caused errors
  • Build tools:
  • WEB-16502 (Bug): Grunt: support navigable links in the output from the grunt-tslint package
  • CoffeeScript:
  • WEB-8240 (Bug): coffescript inspection 'unused local symbols' occurs when parameter used for extending a class
  • Debugger:
  • WEB-16172 (Bug): Javascript debugging - breakpoints dont match display when using template blocks (and not )
  • IDEA-139945 (Bug): When putting a watch on a breakpoint, Java debugger produces a boxed Integer instead of primitive int
  • IDEA-139980 (Bug): Custom breakpoints should be able to fully provide the main panel
  • IDEA-132852 (Bug): Debugger: values in editor are still shown after disconnect
  • File Watchers:
  • WEB-16470 (Bug): File watcher: spaces in paths prevent to run program
  • WEB-12196 (Bug): File Watcher: Output Filter: output not parsed when filename contains spaces/brackets. Unusable with Dropbox
  • HTML:
  • WEB-14928 (Bug): End of JavaScript comments detected
  • WEB-16247 (Bug): Some tag names duplicated in html5 completion
  • IDE Configuration:
  • IDEA-139883 (Bug): Changes in file associations are not saved
  • IDEA-139409 (Bug): Persistent message "File type recognized: File extension *.vm was reassigned to VTL"
  • JavaScript:
  • WEB-16410 (Usability Problem): Download libraries: when searching for typescript stub, navigate to library with name that starts with entered substring first
  • WEB-16260 (Bug): Failing type inference with an object conforming to a typedef
  • WEB-14921 (Bug): Better Structure View for ExtJS Files
  • WEB-16111 (Bug): Code completion is not working for nested objects defined outside
  • WEB-16198 (Bug): Javascript : unresolved function or method from super class where there is also a "static" method
  • WEB-15884 (Bug): ES6 'export * from' declarations
  • JavaScript. Inspections:
  • WEB-16106 (Usability Problem): JSCS integration, plugin not found
  • WEB-16544 (Bug): JSCS: add verbose option and correct "validateQuoteMarks" rule type
  • WEB-16163 (Bug): jscs unknown options
  • WEB-16189 (Bug): Select path to Node.js and JSCS automatically
  • WEB-16406 (Bug): JSCS: use correct list of operators for rules type completion
  • WEB-16405 (Bug): JSCS: correctly recognize type for each rule
  • WEB-16550 (Bug): jscs should use esnext flag for es6 languages, not just jsx harmony
  • JavaScript. Predefs:
  • WEB-14761 (Bug): The Object.freeze definition in EcmaScript5.js (EcmaScript 5 library) is wrong
  • JavaScript. Refactoring:
  • WEB-15848 (Bug): Support rename of the imported\exported variable
  • Node.js:
  • WEB-16134 (Usability Problem): Inspections: "Insert require()" quick fix: use single quotes
  • WEB-16133 (Bug): Inspections: "Insert require()" quick fix: suggest module name and show it first in the list
  • WEB-16242 (Bug): Node js auto import: correctly calculate main module
  • Task Management:
  • IDEA-139903 (Usability Problem): TaskManagement: Trello: Change 'number' placeholder in commit message
  • Terminal:
  • IDEA-139633 (Bug): Terminal doesn't show prompt or current folder
  • TypeScript:
  • WEB-15730 (Bug): TypeScript: "Create field" intention should be available with enabled Compiler
  • WEB-14009 (Bug): Rename TypeScript import statement does not also rename references to imported module
  • WEB-16431 (Bug): TypeScript: String arrays from lib.es6.d.ts; "Unresolved function or method map"
  • WEB-16528 (Bug): Typescript 1.5 Es6 style import statement and intellisense not working
  • User Interface:
  • IDEA-138257 (Bug): High DPI monitor issue: small text in notification popups
  • Vagrant:
  • PY-15849 (Bug): Vagrant: abandoned winpty-agent processes on each vagrant command run
  • Version Control:
  • IDEA-137838 (Usability Problem): Ctrl + C - should copy a file name into a clipboard in Commit Changes window, not absolute path
  • IDEA-139870 (Bug): Issue with context menu for annotation panel for files without an associated type
  • IDEA-139488 (Bug): Ctrl-C in Local Changes copies to clipboard one file name only
  • IDEA-130530 (Bug): Changes Tool Window - Local Changes - ctrl+c = ctrl+shift+c
  • Version Control. Git:
  • IDEA-137749 (Exception): Compare with branch: Read access is allowed from event dispatch thread or inside read-action only: Throwable at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.getDocument
  • Version Control. Log:
  • IDEA-138326 (Bug): Selected commit can get out of sight after switching IntelliSort on or off.
  • XML:
  • IDEA-129370 (Feature): Support XML Schema (XSD) 1.1

New in PhpStorm 9.0 Build 141.1000 EAP (May 6, 2015)

  • PHP lang:
  • WI-2233 (Feature): Run configurations: update the file name on Refactor / Rename file in IDE
  • PHP templates:
  • WI-27241 (Usability Problem): Enable HTML and other injections in Twig "verbatim" block
  • Plugin: Deployment _ FTP..:
  • WI-27252 (Cosmetics): Remote Edit: upload current remote file action should not be shown in context menu
  • WI-27246 (Bug): Remote Edit: it's impossible to open a file without known file type
  • WI-27264 (Bug): Remote Edit: assert error on multiple openings of a large file
  • WI-27233 (Bug): Remote edit: Hide file extension in editor tabs doesn't work
  • WI-27232 (Bug): Remote Edit: tabs names are not updated on deployment server name change
  • No subsystem:
  • IDEA-132554 (Usability Problem): automatic window scroll after CTRL-ALT-L
  • WEB-16175 (Bug): Element style doesn't have required attribute scoped
  • WEB-16257 (Bug): Incorrect documentation for Element#classList methods
  • Code Formatting and Code Style:
  • IDEA-138967 (Bug): \unnnn notation doesn't work in quick docs
  • Code Navigation:
  • IDEA-139293 (Bug): Strange behavior "Go to file" dialog when I paste file name with leading Tab
  • Editor. Editing Text:
  • IDEA-139523 (Feature): Option to retain Code Folding after Paste
  • HTML:
  • WEB-16321 (Bug): Inspection Unknown HTML boolean tag attribute Warns on Valid HTML5
  • JavaScript:
  • WEB-16277 (Performance Problem): infinite js parsing
  • WEB-16336 (Bug): Webstorm can't autocompletes alias imports
  • WEB-16198 (Bug): Javascript : unresolved function or method from super class where there is also a "static" method
  • WEB-16261 (Bug): RubyMine 7.1 Hangups
  • JavaScript. Frameworks:
  • WEB-16355 (Bug): JSX: HTML tags completion is not available, NPE at ReactXmlExtension$1.execute()
  • JavaScript. Inspections:
  • WEB-16314 (Bug): Add support for .eslintignore
  • Packaging and Installation:
  • IDEA-139036 (Bug): IDEA Updater - java.lang.OutOfMemoryError: Java heap space
  • Task Management:
  • IDEA-138415 (Bug): Open task: serverUrl is undefined
  • Version Control:
  • IDEA-77338 (Performance Problem): Perform 'Add to VCS' action under progress
  • Version Control. Git:
  • IDEA-139500 (Exception): Git: Interactive Rebase: AE at git4idea.rebase.GitRebaseLineListener.onLineAvailable

New in PhpStorm 9.0 Build 141.891 EAP (Apr 29, 2015)

  • Re-run (Ctrl+F5 / CMD – F5) shortcut bug is fixed.
  • Scratch files can be run or debugged with PHP Script or PHPUnit local run/debug configurations.
  • Remote edit: open single file directly from the remote host for editing:
  • One of the most-demanded features is here: single file can be now opened directly from the remote host (such as FTP, SFTP, FTPS, etc) and edited in the IDE without adding/downloading file to the local project.
  • Postfix code completion for PHP:
  • We are glad to introduce Postfix code completion for PHP, a new kind of completion which will extend your productivity even more.
  • Postfix code completion helps reduce backward caret jumps as you write code. It lets you transform an already typed expression to another one based on the postfix you added, the type of expression, and its context. For example, the .if postfix applied to an expression (with Tab key) wraps it with an if statement.
  • The postfix completion suggestions are shown as part of the basic completion. In case you’d like to see the whole list of postfix completions applicable in the context, use the Ctrl + J (Cmd - J) shortcut. All postfix completion templates can be found in Settings / Preferences | Editor | General | Postfix Completion.
  • Auto-reported Exception:
  • WI-2572 — Sometimes a bunch of exceptions right after PhpStorm start
  • WI-2677 — code completion crashes editor behaviour
  • WI-3030 — Startup | NoClassDefFoundError when i start the IDE
  • WI-3235 — Lots of exceptions during normal code editing
  • WI-5498 — IDE fatal errors while XSL editing
  • WI-5517 — IDE error when i'm trying to open css file from file manager by dblclick
  • WI-15820 — Framework MVC Structure Support is broken
  • Bug:
  • WI-9 — Broken autocompletion for { } in CSS editor
  • WI-10 — Support CSS linked with via parametrized link
  • WI-11 — In files with php extentions and htmls + php inside comments dont work properly
  • WI-15 — Error on start "Fatal error"
  • WI-19 — Pasted ' (apostrophe ) turn in ' (not only apostrophe, all symbols which have entities)
  • WI-21 — Do not auto-complete paths with '.' (period)
  • WI-22 — Problems on importing settings.jar from IntelliJIDEA 8.1
  • WI-24 — Tip of the Day not found
  • WI-25 — увеличенное расстояние между элементами меню Settings Dialog
  • WI-26 — Элементы диалога настроек скачут вверх-вниз
  • WI-28 — Can not disable inspection via intention
  • WI-31 — Exception intime switching between File Templates Tabs (Settings Dialog)
  • WI-32 — Не могу зарепортить багу через интерфейс Error Report
  • WI-33 — Can't find settings for encodings
  • WI-35 — Doesn't work autocompletion of image sizes in
  • WI-36 — Mac OS X: "Open in Browser" opens document in Parallels
  • WI-37 — Cannot copy file if file already exist
  • WI-40 — Go To Declaration wtihout paths to files
  • WI-46 — Javascript Debugger dont work with files with php extension?
  • WI-52 — Create selector in new file bug: cannot open dialog for choose directory
  • WI-57 — Can't find settings for Resources
  • WI-62 — Выключение Inspection в настройках не выключает его
  • WI-63 — Не работает Check for updates
  • WI-66 — Не подсвечиваются изменённые файлы в режиме View as: Favorities
  • WI-67 — Не открывается файл по нажатию Enter в режиме View as: Favorities
  • WI-71 — Create new class action creates wrong php class
  • WI-72 — Editor doesn't highlight missing php-end tag
  • WI-73 — Can't blame PHP plugin
  • WI-74 — Editor doesn't paste second quote when type forward quote
  • WI-75 — Missing options in completion after $
  • WI-85 — Autocomplete: global settings do not work for CSS
  • WI-88 — Cmd S in Web Preview -> IDE completely hanged
  • WI-91 — Unavailable Character Browser Plugin
  • WI-100 — External changes is visible in IDE after VERY long period (Synchronise doesn't help)
  • WI-105 — picture preview in css file on Shift+Mouse Over doesn't work
  • WI-106 — fast scroll of project tree causes artefacts (see the attachment)
  • WI-108 — Rename Folder/File dialog does not fill-in previous name anymore
  • WI-109 — WI не видит изменений и не коммитит их в SVN
  • WI-118 — Refreshing VCS history
  • WI-119 — TODO pattern is not recognized inside of PHPDOC comments
  • WI-121 — Navigation Bar doesn't work after pressing Alt+Home than Arrow
  • WI-134 — Menus with ticks dont clear properly
  • WI-135 — Keep XDebug connection after the page is processed
  • WI-136 — PHP constants are not autocompleted
  • WI-138 — Completion: support all magic function names
  • WI-139 — Wrong indent on array editing
  • WI-141 — Indent inside phpdoc
  • WI-143 — Links in phpdoc should be clickable
  • WI-149 — PHP library functions can have optional parameters
  • WI-153 — Type-inspection is a bit too strict
  • WI-155 — ISO-8859-15 encoded text is not displayed properly
  • WI-158 — Completion after "class name" should be smarter
  • WI-159 — SOE on class foo implements foo
  • WI-160 — Syntax error expected on wrong usage of extends/implements keywords
  • WI-162 — JS Debugger and js file linked to .php file
  • WI-163 — Editor inspections can't be disabled through status bar item
  • WI-165 — Spelling -> Rename to.. - hide outline when replacement canceled
  • WI-166 — phpDoc @param hightlite
  • WI-167 — Wrong handling for mixd type
  • WI-168 — /= is not recognized as operator
  • WI-169 — PHP-parser doesn't resolve type of function's output when used directly
  • WI-170 — "number" and int are not compatible?
  • WI-172 — instanceof only validates with literal class names
  • WI-173 — No value tooltip for PHP variable in debug mode
  • WI-177 — Code completition for static vars
  • WI-178 — include/require doesn't work well with dynamic paths
  • WI-179 — Refactoring rename interface-methodname doesn't offer to also rename implementors
  • WI-180 — "implements" some abstract class is allowed
  • WI-181 — function and class names in PHP are case insensitive
  • WI-182 — Changing the type of a primitive to class isn't recognized
  • WI-184 — Provide product-specififc image in the section "Suppressing inspections"
  • WI-187 — Can't find a place where I can change color for Language Injection
  • WI-695 — Spellchecker does not report problematic words such as 'we?re'
  • WI-698 — Formatting problems
  • WI-699 — navigating to (built-in) DHTML.js results in major performance problem
  • WI-702 — FTP Deployment: Web Servers browser: folder mapping creating should be done correctly
  • WI-703 — FTP Deployment: Web Servers browser: after file rename view is corrupted
  • WI-704 — FTP Deployment: for nested mappings, the 'common' files are uploaded to the single destination only
  • WI-706 — FTP deployment: for multiple paths from excluded directories it is impossible to invoke specific action
  • WI-707 — FTP deployment: exception on attempt to create new... webserver from run configuration/choose local paths to upload/ edit mappings
  • WI-708 — test
  • WI-711 — Standart php5 DOMNode class stub is incomplete
  • WI-713 — PHP Debug: long text variables value is truncated
  • WI-716 — PHP strtr() stub is not correct
  • WI-719 — No errors detected with construction ->foo
  • WI-721 — Error markers are corrupted in PHP file
  • WI-723 — alternate switch sysntax in multiple php fragments produces parser error
  • WI-725 — "new $className" does not resolve to $className variable
  • WI-727 — Web IDE hangs on building indices
  • WI-731 — "Expected string got array" for string characters access instead of "deprecated"
  • WI-733 — Add autocomplete for __construct
  • WI-737 — @group annotation is not parsed if before class definition
  • WI-738 — PHPDoc generation is broken
  • WI-740 — Folding phpdoc comments is broken
  • WI-744 — JavaScript: cannot unwrap one-line 'if' or 'else'
  • WI-747 — Class disappeared in structure
  • WI-750 — PsiInvalidElementAccessException, Report posting failed: ITN returns wrong data
  • WI-751 — HTML refactoring: rename 'radio inputs'
  • WI-752 — Renaming directory does not update project tree
  • WI-755 — xdebug - watch/inspect window cuts off showing value of a variable
  • WI-756 — «Parameter info» command does not show constructor parameters described in parent class
  • WI-766 — Mysql Highlighting fails to see expression in php variable
  • WI-767 — mysql highlighting fails to work on whole expression when there is a php variable
  • WI-770 — Param type inspection does not follow inheritance rules when not all class/interface definitions are present.
  • WI-772 — PHP Debugger Memory usage
  • WI-774 — No smarty file assoziation since 94.5
  • WI-775 — Can't open big project
  • WI-776 — Bug in replace dialog
  • WI-779 — Collapsing tree node collapses all subnodes
  • WI-783 — Reformat code breaks HEREDOC string.
  • WI-792 — Invoking any modal dialog window while in fullscreen mode minimizes the entire IDE
  • WI-796 — Correctly compare non-ascii files
  • WI-797 — File templates: File template creates template for "java" by default
  • WI-798 — "PHP Class" File Template can be modified in ways which are denied by documentation
  • WI-799 — No files shown in search results
  • WI-801 — No way to forcefully cancel "remote deployment" when quitting
  • WI-807 — PHP highlighting of multiline quotes can slow performance
  • WI-809 — Move statement Up/Down breaks identation (for Allman indent style code, at least)
  • WI-810 — Warning about undefined method missed
  • WI-811 — IDE fail in heredoc
  • WI-814 — expression expected notice is wrong
  • WI-816 — Autocomplete doesn`t work for variable got from annotated with PHPDOC @var variable
  • WI-817 — No warning for method call, that doesnt exist in called class, but exists in other class in project
  • WI-818 — No error warning for fragment with "anyword:"
  • WI-819 — No error warning for incorrect syntax ;->
  • WI-820 — Expected bool, got boolean - for the third parameter in in_array function
  • WI-821 — Expected array, got int - for min function
  • WI-823 — Php code blocks aren't recognized in .html files
  • WI-824 — Wrong html code commenting in php files
  • WI-826 — Folding doesn't work for alternate php syntax
  • WI-827 — Highlighting current scope and matched brace doesn't work on alternate php syntax
  • WI-828 — No warning for multiple labels with same name
  • WI-855 — Serious Performance Issues/Lockage with FTP Deployment
  • WI-857 — invalid window size if maximazied & restarted
  • WI-863 — HTML formatting in PHP files does not work
  • WI-867 — Good code is red for \0 and \v javascript escape characters
  • WI-868 — Copy path. Slashes.
  • WI-871 — Installed 94.48 and now evaluation license expired
  • WI-873 — "Quick Documention" doesn't show description from PHP API (for API function defined if it is missing in current PHP version)
  • WI-874 — whole-word search fails
  • WI-876 — Code folding by default doesn't work
  • WI-877 — Cannot convert value '0000-00-00 00:00:00' from column 20 to TIMESTAMP.
  • WI-881 — line-height should not require a dimension
  • WI-884 — Autocomplete for new StdClass() doesn`t work
  • WI-888 — PHP home read only once
  • WI-889 — SVN project in an invalid state after refactor->move
  • WI-891 — Wrong upload path with non "/" root path
  • WI-892 — autocomplete for PHPDoc tagnames before class doesn`t work
  • WI-895 — No error for wrong method declaration in interfaces
  • WI-896 — Wrong errors in PHP HEREDOC for escaped characters
  • WI-897 — No error warning for ; after method
  • WI-902 — PHPDoc autocomplete types after @property tag doesn`t work without $variable
  • WI-903 — Find Usages doesn`t work for finding file usages
  • WI-906 — Resources not found (can't set document root / web root / base href) due to unknown content path when using special dir layout
  • WI-908 — Analyze Stacktrace functionality (Tools | Analyze Stacktrace) is not implemented.
  • WI-911 — Unable to find required classes (javax.activation.DataHandler and javax.mail.internet.MimeMultipart). Attachment support is disabled.
  • WI-913 — Paired tags hilight bug
  • WI-915 — Bug when moving file between changelists
  • WI-917 — Debugger is unreliable
  • WI-920 — JavaScript code formating - IF indents
  • WI-921 — WebIDE doesn't highlite error in html code in .php file
  • WI-922 — Inspertor shows superclasses methods as undefined (PHP)
  • WI-933 — Update Remote Deployment page reference
  • WI-934 — Write access detected instead of read / Find usage wrong output
  • WI-935 — Wrong indent after 'class' statement (extra tab is inserted)
  • WI-936 — Show tabs in single row and quick navigation
  • WI-938 — Go to|File... - support backslashes in path
  • WI-940 — Atocomplete bug
  • WI-944 — Undefined method bug
  • WI-945 — Find usages of __construct is not worked.
  • WI-946 — Wrong indent of curly brace after 'class' statement
  • WI-947 — Web IDE Help: XSebug => XDebug
  • WI-950 — $[no_name] variable reference should result in parsing error.
  • WI-953 — exception
  • WI-956 — Expected bool, got boolean
  • WI-958 — Debugger says "Connection error: invalid packet"
  • WI-960 — No warning for calling undefined method from variable in foreach loops
  • WI-961 — Cannot type anything in editor, got exception
  • WI-966 — Variable is evaluated incorrectly when invoked from tooltip
  • WI-968 — Language-independent keymap
  • WI-970 — new operator: undefined methid bug in if class name stored in object property
  • WI-971 — Array of objects isn't recognized as array
  • WI-972 — Referencies calculation error in refactor preview tab
  • WI-975 — Update reference page "Background"
  • WI-980 — Infer filed type from initializer.
  • WI-983 — type inference from unary 'not'
  • WI-986 — Wrong inspection: access type for interface method must be omitted
  • WI-987 — Wrong foreach type inference
  • WI-988 — Typehinting: ClassName[] is not compatible with array type
  • WI-989 — Generate DTD (XSD) from XML file and Validating XML file - menu items are missing.
  • WI-990 — using minus sign before switching to php mode inside css leads to "Invalid CSS property value"
  • WI-991 — Undefined class: parent is undefined when inheriting from conditional class definition
  • WI-994 — Invalid formatting from "Insert pair }" in special case
  • WI-996 — Css structure widget becomes empty after reformatting the code
  • WI-998 — Show diff says "No differences" when line separators are changed
  • WI-1002 — Project vs IDE FTP/SFTP settings
  • WI-1004 — Cannot jump to included file if include() has PHPDoc with ".."
  • WI-1005 — No effect when ctrl-clicking a directory in include('foo/baz/bar.php')
  • WI-1008 — Annotation bug
  • WI-1010 — IntellijIdeaRulezzz
  • WI-1012 — Array item is recognized as array
  • WI-1014 — Class completion
  • WI-1015 — Code completion in single quotes
  • WI-1017 — Add build.txt
  • WI-1018 — Wrong function parameters indentation
  • WI-1019 — SVN: commit don't works in .149
  • WI-1020 — IDE completes quotes too much
  • WI-1022 — Linux usability problems
  • WI-1023 — Update reference for the Directory page of the settings dialog box.
  • WI-1025 — &$var is not parsed as $var reference in function calls
  • WI-1026 — HTML & JS code syntax coloring won't change without IDE restart
  • WI-1028 — FTP Deployment: hard to recreate folder deleted from different location
  • WI-1030 — FTP: Preverve timestamps may work incorrectly in case of non-empty root folder
  • WI-1031 — Annoying notice, that i can't get rid of
  • WI-1033 — Very poor formatting capability or bug
  • WI-1034 — Global namespace declaration bug
  • WI-1036 — FTP Deployment: class move is not synchronized at once
  • WI-1038 — FTP Deployment: ignored stuff should never be uploaded/downloaded
  • WI-1039 — Remove trailing whitespace fails on empty lines.
  • WI-1040 — FTP Deployment: after versioned package rename commit the ftp folder loses its contents
  • WI-1041 — FTP Deployment: Remote Host view loses its contents after closing project
  • WI-1042 — Bug with redrawing UI (particularly editor window)
  • WI-1045 — Refactoring namespaced classes and 'use' keyword
  • WI-1047 — Ctrl+V vs Shift+Insert (linux) in search box
  • WI-1049 — content.dat.storageData has 2Gb
  • WI-1050 — Double click to select a word takes a loooong time
  • WI-1052 — HTML syntax coloring does not affect id`s attribute value
  • WI-1054 — Incorrect detections of the parameter type
  • WI-1056 — 3-arg define is not parsed properly
  • WI-1059 — Inject Language not working
  • WI-1061 — Indent on enter is not correct for control structure without braces
  • WI-1064 — Smarty: improve array access
  • WI-1065 — Smarty: improve logical operators handling in if clause
  • WI-1066 — Smarty: custom blocks
  • WI-1067 — html/xhtml file templates are not visible in settings
  • WI-1069 — WI Hangs when reopening a project
  • WI-1070 — Open one file is opening parent directory
  • WI-1073 — FTP Deployment: the Limit Concurrent Connections value set in host Advanced Options is not preserved
  • WI-1076 — ClassCastException: PhpFile => PsiDirectory
  • WI-1077 — When moved folder appears under mapped paths, it's content is not uploaded
  • WI-1081 — Can't blame a plugin
  • WI-1082 — Smarty modifiers for variables and strings support
  • WI-1083 — PHP constants are case-sensitive
  • WI-1087 — Javascript&Smarty: unterminated statement bug
  • WI-1089 — Add Task and Context Management concept
  • WI-1093 — Map help button of the SQL page of Code Style settings.
  • WI-1094 — Add ability to customize Smarty inspections
  • WI-1095 — Formatter ignores comments while reformating.
  • WI-1097 — Console errors
  • WI-1098 — Smarty/PHP If/else (and other blocks) and html tag id uniqueness bug
  • WI-1101 — Upload task closes project instead of closing IDEA if requested
  • WI-1102 — Can't manage debug settings dialog under linux (kubuntu 9.10)
  • WI-1105 — Can't cancel remote deployment task
  • WI-1107 — Impossible to turn off auto-saving
  • WI-1108 — PHP 5.3 allows static function calls on variable class names
  • WI-1110 — Smarty foreach properties are not supported.
  • WI-1114 — FTP Deployment: after project reopening upload fails
  • WI-1116 — If class has method and member of same name, structure view only shows first one
  • WI-1117 — Server tree refresh freezes UI
  • WI-1118 — require_once bug
  • WI-1121 — Can't place Remote Deployment buttons on toolbar
  • WI-1123 — Wrong type warning after Replace quotes quickfix
  • WI-1124 — Can`t create Run configuration for xsl files.
  • WI-1128 — Add live preview with syntax coloring to formatting preview in settings
  • WI-1129 — Default Keymap Reference button does not work
  • WI-1131 — Zen coding: broken code for nested tags
  • WI-1134 — PHP editing broken by native Zen Coding
  • WI-1138 — Autoformatting breaks down if there is a syntax error anywhere in the file
  • WI-1140 — Zen Coding: no formatting is applied to a resulting code
  • WI-1144 — JS code syntax coloring won't change without IDE restart
  • WI-1145 — Formatting does not work in some cases
  • WI-1146 — JS weird reformat
  • WI-1148 — Html tag autoclosing does not work in some cases
  • WI-1157 — Convert string from 'abc' to "abc" fails in special cases
  • WI-1158 — Tooltip with the parameters of the function doesn't disappear
  • WI-1159 — Zen coding in PHP
  • WI-1160 — Add autocomplete for parent, self inside class method
  • WI-1161 — Wrong phpdoc @return indent if one of @protected/@private, @static, @throw was added to phpdoc too
  • WI-1163 — Exception on copy and then paste
  • WI-1172 — comment line in JS file spoils strings
  • WI-1176 — JSDoc interpretation of object property type declaration issue
  • WI-1180 — Html scope higlighting does not work in .php files
  • WI-1186 — phpdoc annotation and variable name with lower/upper case letters bug
  • WI-1187 — Highlight current scope in Smarty template bug
  • WI-1190 — Smarty {assign} tag validation bug
  • WI-1191 — cmd(apple key)+V not working for pasting in SEARCH box on MacOSX
  • WI-1192 — phpunit type hinting test fails from IDE and is OK from console
  • WI-1193 — cmd-shift-enter doesn't complete if/while statements
  • WI-1194 — smart-indent doesn't work as expected
  • WI-1196 — cmd-alt-B doesn't bring up subclass list
  • WI-1199 — Possible phpdoc @var annotation bug
  • WI-1200 — replace - can't replace with regexp
  • WI-1204 — Zen Coding wrongly triggered within PHP
  • WI-1205 — Backreferences in Edit-Replace using Regular Expressions
  • WI-1206 — static var not working with type detection
  • WI-1207 — auto-generated PHP doc is malformed
  • WI-1209 — WebStorm/PhpStorm saves its log file in a wrong place on Mac OS X
  • WI-1210 — debuger trouble: invalid packet
  • WI-1211 — Do not generate @access php-doc tag
  • WI-1212 — @var typehint removes the variable from completion
  • WI-1213 — Parameter inspection bug
  • WI-1223 — Menu is sized incorrectly
  • WI-1226 — HTML is injected into wrong HEREDOC literal
  • WI-1229 — Ctrl+V vs Shift+Insert (linux) in search box (так и не решено)
  • WI-1230 — Wrong variable suggestion order
  • WI-1231 — PHP inside JS literal - The IDE shows a php syntax error, while actually there isn't
  • WI-1233 — Cannot run PhpUnit tests on server if auto upload is on
  • WI-1236 — Use of "Split current tag" feature and language injection leads to an unpredictable result
  • WI-1239 — Move To outside of the current project crashes
  • WI-1241 — Productivity hints window contains defect images
  • WI-1242 — Unable to read Tip of the Day
  • WI-1243 — Remote server project loading stucks at "Logging in"
  • WI-1247 — WebIde file-browser must display available network locations
  • WI-1249 — Structure window shows outdated info
  • WI-1250 — 430 build help is gone
  • WI-1251 — help | default key map reference doesn't do anything
  • WI-1252 — include Yii framework in WebIDE
  • WI-1253 — Shebang Line in Linux start script is wrong
  • WI-1254 — failed to transfer file './htaccess'
  • WI-1256 — Ctrl + Shift + F7 on global variable does not work properly
  • WI-1257 — Please use correct *case sensitive* product names for both artifacts and root folders in help jars
  • WI-1259 — Method resolve when not under source root
  • WI-1261 — Variable as a class name (refactoring, highlighting)
  • WI-1266 — Remove irrelevant link
  • WI-1267 — Zen Coding support issues
  • WI-1269 — Update Getting Started with PhpStorm
  • WI-1274 — Don't store (S)FTP password if auth failed
  • WI-1275 — overeager brace insertion when non-related syntax-errors are present
  • WI-1278 — Problem with absolute path evaluation (require_once)
  • WI-1279 — Add support for php functions in Smarty if tag
  • WI-1281 — No method completion for parent static methods
  • WI-1283 — switch/case indentation in special case
  • WI-1285 — quickly pressing Alt+Tab, Alt+Tab activates menu File
  • WI-1286 — IDE can not recognize JS global function calls in object inner scope
  • WI-1289 — Remote Hosts port setting not saving correctly in version WI-94.430, worked in 94.335
  • WI-1290 — HTML text: Brace disappears
  • WI-1292 — Removed tasks reappear on restarting phpstorm
  • WI-1293 — Update the list of languages and IDE components in the Editor / Colors and Fonts reference
  • WI-1296 — WebIde uninstall doesn't work well
  • WI-1297 — Remote deployment option is not shown for template project
  • WI-1298 — Could not save a project
  • WI-1299 — WebIde stucked and won't even die after killing the process from Task Manager
  • WI-1300 — The Ide folder loading stucks at a certain folder
  • WI-1303 — Broken autocomplete for html tags in .php files
  • WI-1304 — xhtml strict html tag: wrong inspection
  • WI-1306 — Auto documentation steals pointer focus
  • WI-1313 — Unused css is not highlighted.
  • WI-1314 — 'null' in message box
  • WI-1315 — Create wrapping code example for JavaScript
  • WI-1316 — rename refactoring works correctly only once - PHPDoc is not renamed 2nd time.
  • WI-1317 — Issue with Monaco font into OSX Wi
  • WI-1318 — List of superglobal variables is wrong
  • WI-1319 — Bad code is green: no warning for undefined magic method calls
  • WI-1320 — do not resolve 'parent' keyword in a class without parent
  • WI-1321 — phpunit test with @ fails from IDE and is OK from console
  • WI-1322 — Wrong @return in PHPDoc generated for null
  • WI-1323 — Add ImageMagick extension support
  • WI-1324 — Wrong superglobal vars are completed
  • WI-1325 — Don't lock UI when opening new project in new window
  • WI-1327 — Rename: refactor rename folder always searches
  • WI-1329 — Smarty: array access
  • WI-1333 — javascript code parsing too strict
  • WI-1335 — Undefined field: press Alt+Enter -> 'Add field' and got var
  • WI-1340 — Make clear "Syncronize with remote" button and option
  • WI-1341 — Can't disable default Live templates
  • WI-1342 — Group filtering doesn't work with "All in Directory" test type
  • WI-1343 — "Issue not found" when switiching issues with jira
  • WI-1346 — No icon at Windows 7 task bar
  • WI-1347 — Performance bottleneck for long PHP files
  • WI-1350 — Zen coding: br expands to independently from file type
  • WI-1351 — wrong inspection for smarty config variables that surronded by {# and #} like {#var#}
  • WI-1357 — Test connection problem
  • WI-1358 — Wrong methods name in Structure tree (PHP)
  • WI-1359 — Change files permissions for mounted server
  • WI-1360 — Files with only property[index] expression type for Array props type inference is not working.
  • WI-1528 — Php functions are case insensitive, though variable's names are not
  • WI-1529 — true, false, null - undefined constants
  • WI-1530 — Parent class fields/methods are not resolved.
  • WI-1531 — Go to project home bring to wrong directory
  • WI-1532 — Mounted disc status is not updated
  • WI-1533 — Неверная раскраска в редакторе для методов с именами, совпадающими с именами глобальных библиотечных функций
  • WI-1534 — Auto formating on arrays doesn't work correctly
  • WI-1542 — NOWDOC parsing
  • WI-1546 — Typehinting in phpStorm does not take extends into consideration
  • WI-1548 — Unresolved include: PHP include/require path resolution fails on symlinks
  • WI-1551 — Exception class undefined
  • WI-1553 — Maia-95.4/ MacOS X 10.6.3 - PHP/xdebug not working.
  • WI-1554 — Incorrect formatting of big multirow control structures
  • WI-1556 — PHP+HTML+Javascript mix: wrong error 'statement missed'
  • WI-1557 — Optimize list-style properties inspection: loses close curly bracket when css rule on one line
  • WI-1560 — SQL language injection turns off when breaking the line into more
  • WI-1561 — "Edit genericSQL Fragment" works in the wrong way when having a phpvar in the SQL
  • WI-1563 — View->Show Line Numbers enables it ONLY for the currently open window
  • WI-1564 — Smarty foreach 'key=key' usage results in ?> expected error
  • WI-1565 — Using smarty in style attribute results in 'invalid css property'
  • WI-1566 — Php insertions in mysql-injected strings are considered errors
  • WI-1567 — Ctrl+click and ctrl+b navigate to parent's class constructor instead of current class declaration
  • WI-1571 — Code completion of variables should use variables, declared in phpdoc in other php fragments
  • WI-1573 — PHP debugging isn't working. Fatal error in IDE.
  • WI-1574 — Maia 95.4 - PHP development - using change name refactoring for a PHP class variable symbol changes all symbol names in all PHP files in project
  • WI-1576 — Some problem with dynamic include expression
  • WI-1580 — AutoComplete PHP function gives bad code ()(
  • WI-1582 — Indices are being rebuilt continously
  • WI-1583 — No autocompletion of phpDoc tags in some cases
  • WI-1584 — Zen Coding does not work
  • WI-1586 — Broken tree-view in Project Settings -> Directories
  • WI-1599 — Variables created through arguments by reference in methods are marked undefined
  • WI-1601 — Need to be able to edit WARNING_ATTRIBUTES option under colors.
  • WI-1602 — CSS Autoindenting
  • WI-1605 — Invalid "%} expected" error in Smarty template
  • WI-1610 — Some suggestions for "background-position" property value are wrong
  • WI-1612 — WebStorm crashed
  • WI-1617 — css autocomplete after edit string work wrong
  • WI-1618 — Wrong error is shown if string is MySQL injected
  • WI-1619 — Smarty: incorrect handling of javascript and {literal} tag
  • WI-1620 — If/else folding
  • WI-1622 — Do not work link redirections in JSDoc
  • WI-1623 — Closures inside functions
  • WI-1625 — "Inspect" and "Copy Value" options in the debugger give a truncated version of a long string
  • WI-1628 — Vertical indent line bug
  • WI-1629 — Folding: Folding manipulators overlay on gutter Can't expand a collapsed node
  • WI-1631 — The IDE cannot find and highlight the opening or the closing tag
  • WI-1632 — Incorrect formatting of some inline elemnts with php-inclusions
  • WI-1633 — Live templates php context is enabled where it shouldn't be
  • WI-1634 — define() isn't recognized if its not a top-level statement.
  • WI-1641 — Refactoring - Rename
  • WI-1644 — Interface's methods autoimplementation won't work on SPL interfaces
  • WI-1646 — "Parameter info" functionality works wrong in some cases.
  • WI-1650 — list-style-type values of upper-alpha and lower-alpha are incorrectly reported as invalid
  • WI-1651 — Variables are marked as undefined when they're defined by reference in exec() call
  • WI-1652 — Go to declaration goes wrong on creating object
  • WI-1653 — Wrong 'Undefined variable' after inner function
  • WI-1655 — Duplicate variants in completion popup
  • WI-1658 — reference class using a variable gives "Expected: semicolon" error
  • WI-1661 — Wrong argument for function in PHPUnit runner
  • WI-1665 — Missing 'undefined variable' when using variable before its declaration
  • WI-1666 — static class completion do not check static for inherited static methods
  • WI-1669 — Formatting bug: too big indent because of the closing brace postion
  • WI-1675 — Exception (fatal error) when phpdoc generation
  • WI-1677 — Function should be considered as valid callback
  • WI-1678 — Bad html formatting when having a control structure in html code
  • WI-1682 — Class member modifier stucks (until full fragment reparse)
  • WI-1683 — Javascript: find usages is totally unreliable
  • WI-1684 — Zen Coding: empty tags expands w/o closing slash independently from filetype
  • WI-1690 — Incorrect expression in "Watches" window stops debugger completely
  • WI-1691 — "Watches" window saves state only when debug session is active
  • WI-1692 — Missing 'undefined variable' when variable exists in both sides of assignment
  • WI-1707 — Replace quotes intension moves code block inside CDATA
  • WI-1708 — Closure isn't considered a valid callback
  • WI-1709 — use clause imported vars do not resolve to context vars (unused, not renamed, etc.)
  • WI-1710 — error_get_last function
  • WI-1712 — Type compatibility: expected resource, got string
  • WI-1716 — Static methods are offered in autocomplete for non-static methods
  • WI-1726 — Stubs for built-in PHP interfaces work wrong
  • WI-1727 — Nested instantatiation suggests wrong parameters
  • WI-1728 — SIOOBE at injection
  • WI-1732 — "Edit fragment" corrupts code.
  • WI-1733 — PhpUnit: E_WARNING: set_exception_handler() expects the argument (1) to be a valid callback
  • WI-1734 — Error running PHPUnit tests on a local server
  • WI-1736 — Remote filenames that contain '\' char are not supported
  • WI-1737 — Wrong formatting when using arrow notation
  • WI-1738 — Help is broken in PhpStorm 95.74 see screenshot
  • WI-1740 — Do not inject xml string with html
  • WI-1742 — Support alternative min() syntax
  • WI-1743 — Fix autocomplete for abbreviated class names
  • WI-1746 — Interface implementation inspection bug.
  • WI-1747 — comments wrong parse
  • WI-1748 — URI is not registered when using quote escapes
  • WI-1750 — Wrong error in sql (mysql) file is shown
  • WI-1751 — PHP syntax highlighting shows error when referencing static property via fully-qualified namespace
  • WI-1753 — Include resolution & inspection: Path '..' not found
  • WI-1754 — Unexpected "unused local variable" for "global $var;"
  • WI-1757 — SQL query inspection error (MySQL dialect)
  • WI-1759 — WebIde hangs if LiquidLookAndFeel installed
  • WI-1760 — Replace quotes trims string
  • WI-1762 — Include resolution & inspection: Incorrect path validation bug
  • WI-1763 — Duplicate result in completion list
  • WI-1764 — Enter action wrong formatting
  • WI-1767 — Case sensitive issue in mixing impements and extends for class.
  • WI-1769 — No line breaks in code sample
  • WI-1770 — Remove irrelevant link
  • WI-1774 — Remove irrelevant contents re ORM
  • WI-1775 — Remove mention of properties files in Encoding section
  • WI-1778 — Update contents of the section "Populating projects"
  • WI-1779 — Provide proper thumlnail
  • WI-1780 — Provide relevant contents in "surrounding with language constructs" section
  • WI-1781 — Provide conditional example of hippie completion
  • WI-1785 — Provide complete list of options in the section "Accessing Inspection Settings"
  • WI-1789 — Remove tag
  • WI-1790 — Update contents of the "Debugging" section
  • WI-1791 — Remove irrelevant sections
  • WI-1792 — Remove irrelevant sections
  • WI-1793 — Provide product-specific images
  • WI-1794 — Update description of the evaluate expression procedure
  • WI-1795 — Add description of the Scripts tab to Debug tool window
  • WI-1798 — Provide product-specific image
  • WI-1799 — Remove irrelevant section
  • WI-1801 — Smarty foreach error
  • WI-1802 — PHP Code Style tab does not work on OSX
  • WI-1804 — mootools support and javascript validator
  • WI-1805 — Inspector ignores equal method names with different cases
  • WI-1808 — PHPStorm does not interpret @property phpdocs correctly
  • WI-1809 — PHP console process is not destroyed when debugging stops if no Xdebug connection was established
  • WI-1810 — "Wrong attribute value" for HTML-autoinjected-string with escaped quotes/doublequotes
  • WI-1815 — PhpStorm Beta 95.74, some PHP classes are not indexed.
  • WI-1820 — Update description of the Code Style | General page
  • WI-1821 — Help page is missing for Settings - Code Style - Wrapping
  • WI-1822 — Update reference page for JavaScript/ECMAScript/ActionScript
  • WI-1823 — Update reference page for Deployment | Options
  • WI-1824 — Complete Deployment reference
  • WI-1825 — Update reference page for PHP|Debug
  • WI-1827 — No Code Completion: Object not recognized?
  • WI-1830 — Make html code completion behave in php editor as it behaves in html editor
  • WI-1832 — Edit HTML Fragment: Strange Behavior
  • WI-1840 — Rename a tag in HTML-autoinjected string
  • WI-1842 — Smarty don't offer to complete already defined attribute
  • WI-1843 — Smarty: offer completion of attributes names on empty space
  • WI-1845 — phpdoc vs moving lines (Ctrl+Shift+up/down)
  • WI-1846 — Extra line breaks inserted after Introduce variable
  • WI-1847 — Debugger validation file should not be scheduled to subversion addition
  • WI-1848 — Warning label is not updated
  • WI-1849 — Remote Host view is not updated properly on external deleting of folder
  • WI-1850 — Remote Host view is refreshed in all projects if the mapping is edited for one of them
  • WI-1851 — PhpUnit add custom working directory field in run configuration
  • WI-1853 — Array autocompletion regression
  • WI-1855 — Tools/Deployment menu should not show 2 same-named 'upload to ' actions (if there's a single server configured)
  • WI-1856 — Zen Coding is broken again in CSS
  • WI-1858 — Undo create file: project tool window bug + NPE
  • WI-1860 — Wrong error with MySQL Store proc
  • WI-1862 — Some functions are doubled in autocompletion list
  • WI-1864 — Autocomplete class doesn't work for "F::func()"
  • WI-1866 — Documentation popup improvement: show description for @method and @property without full phpdoc info
  • WI-1867 — Validate Xdebug setup for the directory where script is about to be executed
  • WI-1873 — PHP runtime crash when resuming XDebug session
  • WI-1875 — html+javascript: Unterminated statement
  • WI-1876 — Dialog Rename do not save last checkboxes status
  • WI-1877 — Search for text occurrences in Refactor\Rename spoils php code
  • WI-1878 — Viewing jquery.js causes fatal error in Webstorm Beta 95.98
  • WI-1879 — Broken support for highlight when using $variables in JSQualifiedNamedElement error.
  • WI-2214 — Generate PHPUnit test: PHPUnit generate test
  • WI-2215 — Parsing of code blocks started with "php echo opening tag"
  • WI-2218 — Annotation: declaration of constants not at the top-level scope using "const" syntax is forbiden
  • WI-2219 — Please document 'Compatibility mode' option
  • WI-2231 — Reference navigation & completion fails inside PHP HEREDOC literals with intellilang injections
  • WI-2234 — PHPUnit on server: Run tool window: class name is specified as "null"
  • WI-2237 — PHP Inspector strtok
  • WI-2238 — PHP Code Inspector error SCRIPT tag in PHP string
  • WI-2239 — Parsing of assignments in field declarations
  • WI-2242 — Web server browser; Don't show 'Could not connect' message when the problem is 'Could not change to work directory'
  • WI-2243 — When refreshing remote host view due on download, correctly handle the case when all the folders up to the root node are suddenly deleted
  • WI-2245 — Annotation: Namespace declaration statement has to be the very first statement in the script
  • WI-2246 — Annotation: No code may exist outside of namespace {}
  • WI-2251 — Search and Replace (ctrl+r) dialog mouse/vs keyboard Replace all invocation
  • WI-2252 — HTML injection incorrect warning
  • WI-2253 — "unused local variable" for Capital Variable
  • WI-2256 — Run configurations: PHPUnit: when XML configuration is provided, allow user to run (don't show error)
  • WI-2261 — structure pane A~Z locked on. It works even if not asked to work.
  • WI-2263 — Introduced variable do not work for ternary operator.
  • WI-2265 — Settings / Deployment / Options / "Delete target item if source one is missing" does not affect the download
  • WI-2267 — PHP debug: false error in case zend_extension is not configured, but xdebug.remote_enable is On
  • WI-2268 — Write access detection for parameters
  • WI-2269 — PHP code completion not working
  • WI-2271 — © symbol highlighted red in HTML 4.01 transitional document
  • WI-2275 — PhpUnit: @expectedException PHPUnit_Framework_Error
  • WI-2276 — Re-implement Undefined variable inspection/resolve via PSI (uses editor now, broken actually)
  • WI-2280 — Constant and Field with same name in same class
  • WI-2281 — Problem with loggin to Subversion (Ubuntu / svn 1.6 vs ghome-keyring)
  • WI-2283 — PHP debug: Xdebug validation fails for php-cgi, breakpoints do not work

New in PhpStorm 9.0 Build 141.792 EAP (Apr 23, 2015)

  • Highlights:
  • New inspection which reports functions/methods/classes usages that don’t respect cases in declaration
  • Solarized editor scheme is bundled
  • PHP | Servers configuration now can be created from deployment server
  • Rewriting default options for interpreter in PHP script debug configuration
  • Batch inspections using remote phpcs (PHP Code Sniffer) are supported
  • Color settings for brackets, parentheses, and braces
  • PHPUnit on Server run configuration renamed to PHPUnit by HTTP
  • and more (see full list in our issue tracker)
  • PHP Inspections:
  • WI-6517 (Feature): New inspection: function or class called not-case-sensitive
  • WI-26949 (Feature): Support batch inspection using remote PHPCS (Code Sniffer)
  • PHP debug:
  • WI-20951 (Feature): Allow to rewrite default options for interpreter in PHP Script debug configuration
  • WI-27148 (Feature): Import deployment path mappings into PHP|Servers
  • WI-27168 (Bug): Import deployment path doesn't copy the whole host for IPv6
  • PHP lang:
  • WI-26268 (Feature): Add color settings for brackets, parenthesis, and braces
  • PHP test:
  • WI-25983 (Usability Problem): PHPUnit on Server: rename run-configuration
  • WI-26678 (Usability Problem): Behat: doesn't force to press "Reload" after changing path to behat
  • No subsystem:
  • IDEA-138918 (Bug): IntelliJ 14.1.1 does not start after update
  • CoffeeScript:
  • WEB-11126 (Bug): variable incorrectly marked as unused
  • WEB-16050 (Bug): CoffeeScript: 'unexpected token' error when using 'do' statement with chained call
  • Cucumber JVM:
  • IDEA-134890 (Bug): cucumber-java plugin does not support hooks when creating run configurations through "Run 'XYZ'"
  • Debugger:
  • WEB-15467 (Feature): copy / paste debugger watch values as JSON string
  • WEB-16256 (Bug): Debugger emits errors for io.js > 1.6.3
  • Diff_Merge:
  • IDEA-138359 (Bug): Show regular diff dialog from "Navigate to File" instead of modal
  • IDEA-139223 (Bug): Compare with window is modal
  • JavaScript:
  • WEB-16059 (Cosmetics): JavaScript setting needs to say ES2015
  • WEB-15691 (Bug): JavaScript: Go to source finds too many matches
  • WEB-16166 (Bug): "Suppress for file" of the string literal breaks HTML inspection - does not work, and inspection error should not even appear
  • WEB-6643 (Bug): Custom code folding regions doesn't work when more than 2 level nesting on WebStorm #WB-121-390
  • WEB-15906 (Bug): Presence of big .js cause OutOfMemory
  • JavaScript. Formatter:
  • WEB-16051 (Bug): Wrong continuation indent for return statement in parentheses
  • WEB-14395 (Bug): On splitting string literal by pressing Enter, wrapped line is not indented
  • WEB-13918 (Bug): Bad continuation indent inside JS function call
  • WEB-14259 (Bug): Bad JS-Formatter within conditions
  • JavaScript. Refactoring:
  • WEB-15426 (Bug): ES6 file scope
  • LESS:
  • WEB-16236 (Bug): Autocomplete for @-webkit-keyframes adds a second @ at the beginning
  • WEB-14862 (Bug): error when expand properties "-webkit-border-radius"
  • Node.js:
  • WEB-16190 (Bug): Select path to Node.js automatically
  • Packaging and Installation:
  • IDEA-139164 (Bug): moving from jdk 8 to jdk7 causes iDEA startup fail
  • Plugin Support. API:
  • IDEA-138236 (Bug): Multiresolve behaves differently in 14.1
  • SASS:
  • WEB-16088 (Bug): Sass parser incorrect error message
  • Structural Search and Replace:
  • IDEA-138671 (Bug): User Defined Structural Search Templates has broken management
  • User Interface:
  • IDEA-138954 (Bug): in debug window when click 'stop' the 're-run' buttons disappears for a short while causing all other buttons shift up and then down again
  • IDEA-137092 (Bug): "Choose declaration" context menu can extend out of screen

New in PhpStorm 9.0 Build 141.690 EAP (Apr 15, 2015)

  • PHP Profiler:
  • WI-27012 (Exception): Exception is thrown on analysis of snapshot
  • PHP debug:
  • WI-27019 (Bug): Copied server shares "Shared" checkbox state
  • PHP lang:
  • WI-22663 (Feature): Structure view totally misses visibility filters
  • WI-3557 (Feature): Wrapping a statement in () by pressing Ctrl+Shift+Enter on a completion option
  • PHP templates:
  • WI-27045 (Bug): Blade-Support: Preferences dialog doesn't show up after update to plugin version 141.582
  • No subsystem:
  • WEB-16162 (Bug): jshint 2.7.0
  • WEB-14926 (Exception): org.xml.sax.SAXParseException: expected Element when open page in browser
  • Build tools:
  • WEB-16109 (Cosmetics): Icon by Gulp settings is for Grunt, not Gulp
  • WEB-16035 (Bug): Impossible to open build tool popup (alt+f11 )if no one gulp\grunt file is chosen.
  • WEB-16033 (Bug): Change text for 'Add Gulp\Grunt file with...'
  • WEB-16000 (Bug): Gulp integration creates invalid run/debug tasks
  • Debugger:
  • WEB-16172 (Bug): Javascript debugging - breakpoints dont match display when using template blocks (and not )
  • IDEA-137692 (Bug): Keyboard key for expanding variable inspection missing
  • WEB-16142 (Bug): Getting "Argument for @NotNull parameter 'name' of org/jetbrains/debugger/VariableImpl. must not be null" error while exploring a javascript variable of type Float32Array
  • Diff_Merge:
  • IDEA-138143 (Bug): assertEquals difference view: support showing line ending differences
  • IDEA-138732 (Bug): Viewing Diff sometimes shows wrong picture when filenames are identically
  • IDEA-138916 (Bug): Incorrect order in local history changes preivew
  • IDEA-138322 (Exception): IllegalStateException LineStatusTrackerDrawing.getDiffColor must not return null
  • JavaScript:
  • WEB-16057 (Cosmetics): Typo in project settings
  • WEB-11845 (Bug): function param: incorrect "select word"
  • WEB-16110 (Bug): Unclear meaning of decorators in JavaScript files
  • WEB-16127 (Bug): Cannot find declaration when using namespace
  • WEB-16072 (Exception): Exception when convert comments to C-style
  • JavaScript. Refactoring:
  • WEB-15091 (Exception): AssertionError when try to change signature of the function
  • Node.js:
  • WEB-15971 (Bug): Webstorm doesn't cleanly kill node process when debugging
  • WEB-16145 (Bug): Node.js: local module references from require statement are unresolved
  • TypeScript:
  • WEB-16066 (Bug): Typescript: align object properties broken in 10
  • WEB-16075 (Bug): warning: variable might not have been initialized for destructuring variables
  • WEB-16082 (Bug): sometimes compiler output TS2345: [object Object]
  • WEB-16100 (Bug): TypeScript compiler: when using 'Compile All', run the compiler once when 'Compile Main File only' is enabled
  • WEB-14317 (Bug): TypeScript: support external module declaration merging
  • User Interface:
  • IDEA-138551 (Bug): Action toolbar: clicking on a combobox with shown popup should hide the popup
  • Version Control:
  • IDEA-131544 (Usability Problem): Push dialog: be more keyboard friendly, especially in the case of Git repository with multiple remotes
  • Version Control. Git:
  • IDEA-137900 (Usability Problem): Don't propose to update (and don't auto-update) if force push was rejected
  • IDEA-138824 (Usability Problem): Report Git rebase result in a balloon notification, rather than in a modal message dialog
  • IDEA-137510 (Usability Problem): "Edit all targets" link should be disabled while edit mode enabled
  • IDEA-128280 (Bug): GitLogParser fails if commit message contains some special ascii control characters
  • Version Control. Log:
  • IDEA-131466 (Usability Problem): Git log: if user is set to 'me' use strict matching with my username
  • IDEA-137894 (Cosmetics): Text padding somehow depends of references number.
  • IDEA-138326 (Bug): Selected commit can get out of sight after switching IntelliSort on or off.
  • Version Control. Mercurial:
  • IDEA-137686 (Bug): Mercurial blame is not colored
  • IDEA-136313 (Exception): Exception During Merge: "Merging with Ancestor Has no Effect"
  • Version Control. Subversion:
  • IDEA-117963 (Bug): Rename class frequently fails with exception
  • IDEA-138525 (Bug): Search in tree not working in Version Control / Project Info (updated files window)
  • IDEA-121090 (Bug): Do not change documents during undo as it will break undo sequence.
  • IDEA-122217 (Bug): SVN commit fails when committing lots of files in one commit (resulting svn command length exceed the limit)
  • IDEA-117085 (Bug): Subversion 1.8: attempt to set svn:needs-lock property with wildcard value fails with confusing error
  • IDEA-138348 (Bug): SVN Repositories View -> Show History does not work
  • IDEA-91155 (Bug): SVN: updating mark in Changes View after revert for svn properties doesn't go away until explicit refresh
  • IDEA-125679 (Exception): Exception at com.intellij.psi.util.PsiUtilCore.ensureValid
  • IDEA-121168 (Exception): RE at com.intellij.psi.impl.source.PostprocessReformattingAspect.beforeDocumentChanged

New in PhpStorm 9.0 Build 141.582 EAP (Apr 9, 2015)

  • Highlights:
  • PHP | Server configuration can now be shared with project collaborators (when Shared option is enabled in PHP | Server configuration);
  • Ability to collapse/expand Twig comment blocks, and other Twig enhancements;
  • Support for Xdebug 2.3+ profiler;
  • PHP formatting enhancements;
  • Fixed issues:
  • WI-16497 — PHP completion sorting should honor the prefix typed by the user and suggest closer matching variants first
  • WI-23073 — Add option to share PHP|Server configuration inside the project
  • WI-17828 — Collapse/expand twig comment block
  • WI-27003 — PHPUnit: support phpunit 4.6 by phar
  • WI-26896 — PHP Code Formatting put a comma behind last assignment option to only affect multiline arrays
  • WI-26466 — Add support for cachegrind's file name and function name compression (XDebug 2.3.1)
  • WI-23678 — Allow proper formatting for monadic (single line) twig block tags (eg. {% block blockName 'blah' %})
  • WI-26737 — Twig: Support shortcut "blocks"
  • WI-19753 — Twig: Auto-completion for {% endset %} is missing
  • WI-19635 — Twig: missing indent for sandbox, set and verbatim tags
  • WI-11980 — twig comment tag bug
  • WI-27013 — Exception is thrown for snapshot analysis: Argument for @NotNull parameter 'fileName' (XDebug < 2.3)
  • WI-27004 — Blade does not save custom directive setting
  • WI-26991 — Add space between "Project URL" and the URL of the project in Deployment settings
  • WI-26964 — Completion inserts additional dollar sign ($) or miss one for variable into PhpDoc
  • WI-26963 — Missing parent call doesn't handle extends over another class
  • WI-26959 — Missing parent call doesn't handle empty functions as well as abstract classes, PHPDoc methods
  • WI-26939 — Reformat Code with "Add a comma after last element" selected does not respect scope.
  • WI-26867 — Impossible to disable injection/provide persistent one for method argument and expression part
  • WI-25521 — Complete current statement: alternative syntax: braces are inserted after else/elseif
  • WI-21812 — "Inno" is highlighted in MySQL table Text tab
  • WI-20637 — Warn if parameter new name collides with local variable

New in PhpStorm 9.0 Build 141.473 EAP (Apr 1, 2015)

  • Highlights:
  • PHP Code Sniffer can be run using remote PHP interpreters;
  • New inspections: missing parent::__construct() call, missing magic method’s call, missing parent:: call in overridden method;
  • Introduce parameter refactoring now allows to extract global function;

New in PhpStorm 9.0 Build 141.332 EAP (Mar 25, 2015)

  • Injections in PHP:
  • WI-539 (Feature): Add support for persistent language injection into PHP
  • PHP Formatter:
  • WI-9978 (Feature): PHP Code Formatting, Wrapping and Braces / Array Initializer: Please put a comma behind last assignment
  • WI-15492 (Feature): Convert True/False/Null constants at completion time according to settings
  • WI-18755 (Bug): Wrong indentation in spaghetti code
  • PHP Inspections:
  • WI-15145 (Feature): Call Declaration mismatch: add checkbox to ignore functions with "func_get_arg", "func_get_args", "func_num_args"
  • WI-26810 (Bug): Parameters mismatch: Impossible to disable "Disable for functions/methods with func_get_arg call inside and other" option
  • WI-26812 (Exception): Parameter mismatch: Operation not supported exception is thrown if there is a @method in PHPDoc
  • PHP Refactoring:
  • WI-22666 (Cosmetics): "Convert to short sysntax" intention title may be confusing at a glance
  • WI-26783 (Bug): Extract method: should be disabled for 'a'=>'b' expression
  • PHP Run configuration:
  • WI-26862 (Bug): Warning "Path mappings are not configured for selected interpreter" is mistakenly shown
  • PHP lang:
  • WI-24464 (Feature): Allow to use PHP surrounds from HTML in PHP files
  • WI-26784 (Bug): PHPDoc block generator not detecting that doc block already exists for function
  • WI-17967 (Bug): Bug with private field in traits
  • WI-26844 (Bug): Surround with (expr) and !(expr) should be disabled for 1=>2 expressions
  • WI-15291 (Bug): Shortcut Command+Shift+Enter add braces to the end of code block
  • WI-26333 (Bug): Convert binary nowdoc to string produces double quoted string
  • WI-26868 (Bug): PHPDoc before constant value causes "expression is not allowed as constant value"
  • PHP lib stubs:
  • WI-26706 (Bug): Missing MognoDB driver exceptions
  • WI-26016 (Bug): Missing PHP SSLVERSION CURL constants
  • WI-26811 (Bug): Update stub for min function
  • PHP test:
  • WI-26850 (Bug): ide-behat.php is not compatible with latest Behat master changes
  • WI-26441 (Bug): Changing the remote interpreter name prevent PHPUnit from running
  • No subsystem:
  • WEB-15766 (Cosmetics): VCS Commit: change product name in the message shown on attempt to commit with 'code analysis' enabled while indexing
  • IDEA-137751 (Exception): IAE on project closing
  • Build tools:
  • WEB-15547 (Usability Problem): gulp button won't save its position on bottom left tool button
  • WEB-15672 (Bug): Grunt environment in IDEA 14.1 differs from command line and IDEA 14.0
  • WEB-15722 (Bug): Need to specify grunt-cli package on every startup
  • Debugger:
  • WEB-15739 (Exception): Debugger: SIOOBE is thrown on each stop on breakpoint
  • WEB-15737 (Exception): InterruptedException when debug Meteor project
  • Diff_Merge:
  • IDEA-138017 (Exception): java.lang.IndexOutOfBoundsException in oneside viewer
  • Editor. Editing Text:
  • IDEA-137341 (Cosmetics): Code editor Simplified Chinese font display seems to have problems
  • IDEA-137257 (Bug): Enter action after block comment
  • IDEA-137103 (Exception): AssertionError when edit code in .phtml file
  • File Watchers:
  • WEB-15650 (Feature): Change default Traceur file watcher template
  • HTML:
  • WEB-14031 (Feature): Allow HTML warning supressing comments to be followed by newline
  • WEB-15749 (Bug): Custom language injection - cursor jumps around upon hitting enter
  • IDE Configuration:
  • IDEA-136619 (Feature): Cannot assign shortcut to "File -> Open Recent"
  • JSP:
  • IDEA-137949 (Exception): NPE from JSP prevents file from being opened
  • JavaScript:
  • WEB-15557 (Feature): ES6: Provide support of the export\import with rename
  • WEB-15539 (Bug): Object literal inside a template literal parsed incorrectly
  • WEB-15742 (Bug): "Element need to be exported" extra warning when make import
  • WEB-15625 (Bug): Missing completion and inspection for imported variables exported as default
  • WEB-15606 (Bug): unresolved variable or type await inside methods
  • WEB-15843 (Bug): ES6: NPE on completion invocation inside import statement
  • WEB-14793 (Bug): Incorrect arrow function parsing in JavaScript
  • WEB-15469 (Bug): Sequence expression is not correctly parsed under ES6 language version setting
  • WEB-12838 (Bug): ES6: Webstorm does not understand class expressions
  • WEB-15578 (Bug): Emmet should be available only on the top-level of JS harmony file
  • WEB-12340 (Bug): `as` is forbidden to be a variable
  • WEB-13911 (Bug): Bug: JSDocs/NgDocs is declared once, but WebStorm thinks there are two implementations
  • WEB-13914 (Bug): JSDocs/NgDocs Can't add property to method
  • JavaScript. Formatter:
  • WEB-15656 (Bug): ES6: Formatting: do not put class keyword on the next line
  • JavaScript. Frameworks:
  • WEB-15486 (Bug): Tag 'a' is expanded wrong in JSX files
  • JavaScript. Refactoring:
  • WEB-15503 (Bug): Refactor>Rename does not work for ES6-style methods.
  • LESS:
  • WEB-14573 (Bug): Incorrect linting and messed up indentation in LESS stylesheets
  • WEB-15651 (Bug): Support optional imports for .less files
  • Plugin Support. DevKit:
  • IDEA-137369 (Bug): findElementAt behavior has changed in IDEA 14
  • REST Client:
  • WEB-11070 (Bug): Rest client does not respect the noProxyHosts
  • SASS:
  • WEB-15799 (Bug): No titles after ampersand (&) in file structure (Ctrl + F12)
  • Task Management:
  • IDEA-128728 (Feature): Support configurable issue states in task repositories
  • IDEA-137716 (Bug): Task management: Close Task: GUI freeze with CloseTaskAction.actionPerformed() call
  • TypeScript:
  • WEB-15572 (Feature): Automatically double ` when inputing ES6/TypeScript template strings
  • WEB-15638 (Bug): "Method can be static" is wrongly reported in TypeScript when member is referenced from arrow function
  • WEB-15741 (Bug): IDE Freezes on large/complex TypeScript project
  • WEB-15694 (Exception): TypeScript Compiler: Throwable on "Compile Current File" invocation via keyboard shortcut
  • User Interface:
  • IDEA-57649 (Cosmetics): "locals" window can be minimized to horizontal size 0
  • IDEA-137520 (Bug): Debugger close button doesn't function as expected when clicked from within the button overflow area.
  • Version Control:
  • IDEA-137685 (Bug): Annotate hotkey not working in FIle History panel
  • Version Control. Git:
  • IDEA-78347 (Usability Problem): Option to use --full-history in file history
  • Version Control. Log:
  • IDEA-137760 (Cosmetics): Something wrong with IntelliSort icon (in Log) in retina
  • IDEA-135302 (Cosmetics): Log: Select Folders dialog appearing from paths filter is too small by default.
  • IDEA-135940 (Cosmetics): Wrong preposition

New in PhpStorm 9.0 Build 141.176 EAP (Mar 17, 2015)

  • PHP Inspections:
  • WI-15145 (Feature): Call Declaration mismatch: add checkbox to ignore functions with "func_get_arg", "func_get_args", "func_num_args"
  • WI-19986 (Bug): Parameter Type: Closure is not treated as object
  • WI-26334 (Bug): Anonymous function has type callable instead of Closure
  • WI-16785 (Bug): Closure $fn->bindTo() not supported by PHP inspector
  • WI-26650 (Bug): Create parameter: doesn't handle variadic
  • WI-26686 (Bug): Some operations are not properly recognized as read or write operations
  • PHP Refactoring:
  • WI-26692 (Usability Problem): Filter expressions for Introduce constant/parameter
  • WI-26691 (Bug): Introduce parameter: should not allow to refactor single key=>value in array
  • PHP debug:
  • WI-26640 (Usability Problem): Debugger: "Click to set up path mapping" not clickable
  • WI-26356 (Usability Problem): Inline debugger: show fields value without expanding $this node in Variables (XDebug)
  • WI-26553 (Usability Problem): Inline debugger: value of filed with instance inside a class is shown as array
  • WI-26552 (Usability Problem): Inline debugger: class and string are indistinguishable
  • PHP lang:
  • WI-12575 (Bug): Method Closure::bind() is marked undefined ("Method 'bind' not found in class callable")
  • WI-26285 (Bug): Constructor params from trait are not shown
  • WI-26712 (Bug): __debugInfo missing from override window
  • PHP lib stubs:
  • WI-26704 (Bug): Third parameter in array_filter function
  • WI-26778 (Bug): DateTime::__set_state type is wrongly void
  • WI-26713 (Bug): Incorrect warning when using max with more than two paramters.
  • No subsystem:
  • IDEA-119669 (Usability Problem): Event Log / Mark all as read: allow to assign a keyboard shortcut
  • IDEA-136945 (Usability Problem): Scopes: Impossibility to exclude recursively (via UI) if dir doesn't contain any files
  • IDEA-124562 (Bug): Wrong tab gets selected after closing if Sort tabs by filename is enabled
  • IDEA-90597 (Bug): Next Tab/Previous Tab work incorrectly when Alphabetical mode is enabled.
  • IDEA-137554 (Exception): NPE at com.intellij.util.xmlb.MapBinding.deserializeKeyOrValue
  • IDEA-136268 (Exception): AssertionError in completeTaskWhichFailToAcquireReadAction when running global inspections
  • Build tools:
  • WEB-15652 (Bug): Grunt: "Jump to Source" action is not available for some tasks or targets
  • CSS:
  • WEB-15649 (Bug): CSS3: background-position highlighted incorrectly
  • Code Formatting and Code Style:
  • IDEA-136400 (Bug): Add java style support for empty array initializer with no space between braces
  • Console:
  • IDEA-137629 (Bug): Console auto scroll to the end - stops scrolling
  • IDEA-137557 (Bug): "Scroll to the end" not activated by default in log consoles anymore
  • DB.Console:
  • DBE-1164 (Bug): Consoles: folders with consoles have internal names when opened at other project
  • Debugger:
  • IDEA-132168 (Usability Problem): Debugger: Show value on selection change: selection is evaluated twice
  • IDEA-123075 (Performance Problem): "Suspend breakpoint" (Alt+Button1) conflicts with keymap-defined Alt+Button1
  • IDEA-137517 (Bug): Unable to display '\uFFFF' in debugger string values
  • WEB-15053 (Bug): Firefox debugger: Remove 'Firefox' from 'JavaScript Debug' run configuration
  • IDEA-137320 (Bug): GTK: debugger/eval inspection nodes do not show the expand triangle until selected
  • WEB-12268 (Bug): Names are truncated in debugger tooltips when inspecting Angular attribute values
  • IDE Configuration:
  • IDEA-134631 (Bug): Suggestion to restart IDEA is not shown on Welcome Screen after plugin update
  • IDEA-137340 (Exception): Lost original startup error message
  • JSP:
  • IDEA-137302 (Bug): Editor marks import in JSP as unused even when it's used
  • JavaScript. Formatter:
  • WEB-15595 (Bug): angular equal sign alignment issue
  • Project Configuration:
  • IDEA-137215 (Bug): Save Settings error - Can save scheme 'External Tools: The data "null" is not legal for a JDOM attribute: A null is not a legal XML value.
  • Run | Debug configuration:
  • IDEA-137169 (Bug): some TestNG and JUnit run configurations cannot be run
  • TypeScript:
  • WEB-11751 (Feature): TypeScript: provide 'create field' intention
  • WEB-13979 (Bug): TypeScript return type inference is broken
  • WEB-15504 (Bug): TypeScript: Red code: incorrect parsing of curly brackets
  • Unit Tests:
  • WEB-15584 (Bug): JShint 2.6.1-3 are available
  • User Interface:
  • IDEA-137649 (Bug): Unable to open IDEA project in a new window
  • IDEA-135538 (Bug): Editor tab name with blurring looks ugly on Ubuntu and Windows
  • IDEA-133828 (Bug): Regression: middle-clicking on tool window header doesn't close it anymore
  • IDEA-137098 (Bug): Changing active file is work incorrectly while Quick definition is opened
  • Version Control:
  • IDEA-136086 (Usability Problem): A modal progress "Refresh change lists after update" quickly appears when reverting changes
  • IDEA-131858 (Bug): Git push: Don't let enter edit mode from keyboard when there is error
  • IDEA-131328 (Bug): Shelf fails completely if one of patches couldn't be parsed
  • Version Control. Git:
  • IDEA-136353 (Feature): change branches for push in multiroot project
  • IDEA-137492 (Bug): Git remote operations fail on mac under JDK 1.6 if Built-in SSH is used with an ISE "No handler for key"
  • Version Control. Log:
  • IDEA-116782 (Feature): Log: highlight "my commits"
  • IDEA-135308 (Cosmetics): Log: too big repository marker for newly created repo
  • IDEA-135472 (Exception): Log: Access is allowed from event dispatch thread only. Throwable at com.intellij.vcs.log.ui.VcsLogUiImpl.addLogListener
  • XML:
  • IDEA-108020 (Feature): Add "Refresh external resource" intention on external resources
  • IDEA-137333 (Bug): JavaEE 7 XML schema mapping is broken and seems to pick XSDs at random

New in PhpStorm 9.0 Build 141.89 EAP (Mar 9, 2015)

  • PHP Inspections:
  • WI-5113 (Feature): Add access validation support for @property-read and @property-write
  • WI-26649 (Bug): Parameter inspection false positive introduced with optional parameters in 9.0 EAP
  • WI-26045 (Bug): Call Declaration parameter mismatch: doesn't handle variadic correctly
  • PHP Refactoring:
  • WI-9257 (Feature): New refactoring: Introduce Parameter...
  • WI-26648 (Bug): Introduce parameter: doesn't propagate parameter value into calls
  • WI-26647 (Bug): Introduce parameter: doesn't update PHPDoc
  • PHP debug:
  • WI-26629 (Usability Problem): Can not detect debug extension - requires remove/add of interpreters (after settings import from version 8)
  • PHP lang:
  • WI-20788 (Feature): Add option to create fluent setter instead of usual one
  • WI-22842 (Usability Problem): Inline backticks not rendered in markdown docblocks
  • WI-26578 (Usability Problem): Constructor generator: Callable type can be provided
  • WI-26653 (Usability Problem): Add mnemonic to "Fluent setters" checkbox
  • WI-26655 (Usability Problem): Fluent setters checkbox reset field selection
  • Plugin: Deployment _ FTP..:
  • WI-25360 (Bug): PhpStorm 7.1.3 and 8.x.x - Deployment feature (SFTP) - Algorithm negotiation fail
  • Plugin: GAE support:
  • WI-26613 (Bug): Allow setting php55 runtime when deploying
  • DB.Console:
  • DBE-1159 (Usability Problem): Console: database result sets have same name for different consoles
  • DBE-1151 (Bug): Progress indication for activities initiated from console's table result tab
  • Database:
  • IDEA-137234 (Bug): MySQL SSL Tunnel always auth failure with OpenSSH 6.7
  • IDE Configuration:
  • IDEA-137104 (Bug): Code templates don't save their state
  • IDE.User Interface:
  • DBE-1148 (Cosmetics): PostgreSQL, MS SQL: tab name for result of SELECT statement is incorrect
  • DBE-1146 (Bug): Console: no available schemas shown for Oracle, MS SQL, Sybase data sources
  • DBE-1160 (Bug): Database View: incorrect shortcut for console
  • Jade:
  • WEB-14185 (Usability Problem): Jade: do not invoke completion while typing dot after script/style tags
  • JavaScript:
  • WEB-12384 (Feature): ES6: Ctrl+click on imported module should navigate to module definition
  • WEB-15157 (Bug): ES6: missing completion for imported variables
  • WEB-15459 (Bug): correct JS code is highlighted as syntactically incorrect
  • JavaScript. Predefs:
  • WEB-11478 (Bug): Add support for ECMAScript 5/6 objects
  • SQL:
  • IDEA-137187 (Bug): the PostgreSQL dialect misses support for data-modifying queries in common table expressions
  • SQL.Highlighting:
  • DBE-1161 (Bug): MySQL: declare continue/exit handler for (number) shows as error - but it's not
  • TypeScript:
  • WEB-15541 (Bug): Typescript type inference error within a closure
  • WEB-15540 (Bug): With typescript compiler enabled, files with names matching ts files names are not shown in the Project view
  • spy-js:
  • WEB-15505 (Feature): spy-js timeline labels
  • WEB-15509 (Bug): spy-js first run focus issue

New in PhpStorm 9.0 Build 140.2765 EAP (Feb 28, 2015)

  • PHP Formatter:
  • WI-5641 (Feature): Add support for controlling indentation of "break" in a switch statement
  • WI-26110 (Usability Problem): 'define()' not being spaced properly according to code style when reformatting code
  • WI-26007 (Cosmetics): "Coding Style > PHP > Spaces" wrong operator examples
  • PHP Inspections:
  • WI-25826 (Usability Problem): Undefined callback: don't report undefined callback if type is compound (string | callback)
  • WI-16339 (Bug): Annotator: Inspection produces seemingly invalid warning for protected constructor
  • WI-22686 (Bug): Inspection is missed: undefined variable as a dynamic class field
  • WI-24724 (Bug): Unnecessary fully qualified class name wrongly reported
  • PHP Refactoring:
  • WI-24399 (Usability Problem): "Extract variable" intention fails on new object reference
  • WI-26296 (Bug): Inline variable: doesn't surround with parenthesis new expression
  • WI-26297 (Bug): Inline: doesn't work for closure function with variable from parent scope
  • WI-26295 (Bug): Inline: don't allow to inline into complex expression inside string
  • WI-7880 (Bug): Refactoring: Unable to inline variable if method in use
  • WI-19929 (Bug): Simplify boolean expression works incorrectly with "and" and "or"
  • WI-25580 (Bug): PHP Add method intention doesn't work when class instance is inside array
  • PHP debug:
  • WI-25802 (Feature): Inline debugger: Show variables in editor for PHP
  • WI-17389 (Usability Problem): Break at first line in PHP Script option sometimes doesn't have tick
  • WI-26167 (Usability Problem): Show error message on not paused debugger session
  • WI-22516 (Usability Problem): Remote interpreter: mnemonics doesn't work for fields
  • WI-23488 (Usability Problem): Show link "Edit path mapping" on "Remote file path ... is not mapped to any file path in project" for debug with remote interpreter.
  • WI-26355 (Bug): Inline debugger: fields from trait/base class is not shown
  • WI-26066 (Bug): Remote Interpreter: Apply button doesn't change state if configuration options was changed
  • PHP lang:
  • WI-21954 (Feature): Constructor generator argument types
  • WI-16549 (Feature): Auto-add PhpDoc with parameter types in contructor generation
  • WI-26461 (Bug): Inadequate processing of PHPDoc with tag
  • WI-14479 (Bug): Add syntax check for 'goto' into loop or switch statement is disallowed
  • WI-13771 (Bug): Annotator: PHP: don't allow using a constant as a left argument of instanceof
  • WI-24657 (Bug): Call to method __clone from invalid context (inside class Object)
  • WI-26037 (Exception): Intention "Surround with if" fails in variables in string with {}
  • PHP lib stubs:
  • WI-26486 (Bug): LDAP_MODIFY_BATCH_* Constants Are Missing: Undefined Constant
  • WI-25715 (Bug): Oracle extension functions not marked up properly
  • PHP templates:
  • WI-25829 (Usability Problem): Blade: doesn't indent the next line after inline section
  • Plugin: Deployment _ FTP..:
  • WI-26137 (Usability Problem): SFTP Deployment: 'SavePassword' option checking in the Login dialog invoked by 'Test SFTP Connection' button should make password preserved
  • WI-26205 (Usability Problem): Allow Sorting in Mapping Table
  • WI-26550 (Usability Problem): Retry to connect while creating new connection on pure network problem
  • WI-26420 (Usability Problem): Simple - please expand the SFTP host line
  • WI-26276 (Bug): Recursive symlinks on FTP fail syncing with SOE
  • Plugin: WordPress:
  • WI-26480 (Feature): Wordpress Help
  • Documentation:
  • IDEA-135521 (Bug): Commit Changes tip of the day hardcodes Ctrl+K keyboard shortcut
  • No subsystem:
  • WEB-15327 (Feature): Can you support server side includes in preview server
  • IDEA-134061 (Feature): Built-in web server does not serve content from JAR files
  • WEB-14445 (Feature): Spread variables declaration
  • IDEA-135828 (Feature): Command-line option to bring WebStorm to front
  • WEB-13143 (Usability Problem): Open in browser action on .py files
  • WEB-13821 (Bug): WebStorm 9-generated command-line launcher script does not work on OSX
  • IDEA-133688 (Bug): suppress.focus.stealing prevents tool windows in pinned mode from hiding
  • IDEA-133082 (Bug): YourKit: Warning at start: om.intellij.util.ProfilingUtil - YourKit controller initialization failed
  • WEB-14375 (Bug): Cucumber.js: express server run in BeforeFeatures fails with EADDRINUSE
  • WEB-15238 (Bug): Syntax check for config.jscs.json reports "esprima" key as unknown
  • IDEA-136776 (Bug): As of 14.1 IDEA Color & Font theme resets after every restart to default
  • WEB-15308 (Bug): WebStorm keeps re-indexing every few seconds
  • IDEA-134055 (Bug): Editor error highlighting stops updating
  • IDEA-135949 (Bug): Move statement broken in presence of anonymous classes
  • IDEA-131468 (Bug): Settings / File Encoding / Project Encoding = System default: new files are created with IDE encoding
  • IDEA-137009 (Exception): TODO toolwindow causes exception
  • WEB-14864 (Exception): AssertionError when connect via 'Firefox remote'
  • ..(please choose one)..:
  • DBE-1081 (Bug): remember hidden columns
  • Build tools:
  • WEB-15380 (Bug): Grunt: alias tasks defined in load-grunt-config aliases.yaml aren't loaded
  • CSS:
  • WEB-10596 (Feature): New inspection: missing comma
  • WEB-14433 (Task): Emmet: expand words start with '$' and '@' as values
  • WEB-14435 (Bug): CSS: do not suggest convert rgba colors to hex
  • WEB-15050 (Bug): Twig - (Inspection) Missing semicolon
  • WEB-14175 (Bug): Locate Duplicates for CSS should ignore differences in case
  • WEB-14537 (Exception): CSS: IOOBE on applying property from completion
  • Code Analysis. Duplicates:
  • IDEA-135532 (Bug): "View duplicates like this" tab has no title
  • Code Analysis. Inspection:
  • IDEA-131643 (Bug): "Suppress for file" doesn't work in html when other suppression is present
  • CoffeeScript:
  • WEB-14223 (Cosmetics): Incorrect example in code style snippet on spaces tab
  • WEB-13566 (Bug): CoffeeScript: false positive for extra commas in lists and function args
  • WEB-13839 (Bug): CoffeeScript: false "Duplicate Catch Block #loc" error
  • WEB-14461 (Bug): Syntax aware selection incorrectly work with multiline strings
  • WEB-12165 (Bug): parse error coffeescript
  • WEB-12573 (Bug): coffeescript inspection: `arguments` keyword outside function
  • WEB-10873 (Bug): CoffeeScript: Red code: expression with empty conditional body as argument
  • WEB-10875 (Bug): CoffeeScript: Red code: @ variable in loop
  • WEB-13685 (Bug): Invalid scope detection and invalid "Invalid number of arguments" inspection on anonymous functions
  • WEB-12203 (Bug): CoffeeScript: Wrong "Unresolvable variable" warning when using conditional existence assignment operator ?=
  • WEB-11641 (Bug): Colors&fonts settings for coffee script not corresponding with editor
  • WEB-12097 (Bug): Good code is red
  • WEB-14895 (Bug): If variable is checked with existential operator inside of the method - it shouldn't be treated as necessary
  • WEB-13002 (Bug): Incorrect behavior of variable renaming in method
  • WEB-11460 (Bug): CoffeeScript: 'Expected:JS:RPAR' error for callback return value in for loop
  • WEB-5362 (Bug): "continue" can't be surrounded
  • WEB-14560 (Bug): Syntax aware selection incorrectly work for single strings (step missed)
  • WEB-14247 (Bug): Passing Regex as default param to function breaks in CoffeeScript
  • WEB-13996 (Bug): CoffeeScript: variables declared using destructuring assignment are shown as unused inside if block
  • WEB-15229 (Bug): Duplicate declaration can not be present in coffee
  • WEB-14324 (Bug): CoffeeScript: show error on attempt to call non-callable value
  • WEB-14320 (Bug): Coffeescript not keyword is not highlighted
  • WEB-12984 (Bug): CoffeeScript formatter removes escaped line breaks
  • WEB-13585 (Bug): CoffeeScript: Red code: Backslashes inside multiline strings
  • WEB-13586 (Bug): CoffeeScript: Red code: Expected end of line error
  • WEB-14982 (Bug): Method call arguments, split to multiple lines without commas, are incorrectly marked as a syntax error.
  • WEB-10866 (Bug): CoffeeScript: Red code: 'then' statement after class name
  • WEB-13339 (Bug): Return is unnecessary as the last statement in a function with no return value
  • WEB-10869 (Bug): CoffeeScript: Red code: destructuring catch parameter
  • WEB-10868 (Bug): CoffeeScript: Red code: single line 'try', 'catch' and 'finally' statements
  • WEB-14043 (Bug): Syntax highlighting error in coffeescript string interpolation
  • WEB-14716 (Exception): CoffeeScript: Assertion error is thrown on attempt to Preview Compiled CoffeeScript File for the trace file
  • DB.Console:
  • DBE-1066 (Cosmetics): DB2 Inspection SQL_LINE_COMMENT
  • DB.Introspection:
  • DBE-1056 (Bug): Support for varbinary(MAX) on SQL Server
  • DBE-1044 (Bug): PostgreSQL: wrong type at Database View for timestamptz, timetz and time formats with precision
  • DBE-318 (Bug): varchar tooltip for longtext column for MySql
  • Data.Viewer:
  • DBE-1052 (Feature): Provide a button to pin results
  • DBE-1026 (Usability Problem): Table Editor: Transpose View: a column that appears on 'Add Row' action is not wide enough
  • DBE-1032 (Usability Problem): Table Editor: Large Values: popup for cell value does not disappear after moving focus
  • DBE-1070 (Performance Problem): Disable displaying blobs
  • DBE-1059 (Performance Problem): Click to count: superfluous subquery is executed
  • DBE-1042 (Bug): Oracle GUIDs show a bunch of 0's at the beginning, and a bunch of random characters on the end
  • DBE-1047 (Exception): Exception encountered deleting rows from a PostgreSQL table
  • Database:
  • IDEA-88363 (Usability Problem): Database table editor: Shift+Enter could open multiline editor even in not editing mode
  • IDEA-63267 (Usability Problem): Database table editor: inconsistent moving of focus with Enter/Shift+Enter (not in cell editing mode)
  • IDEA-134029 (Bug): Database console - unable to edit results.
  • IDEA-135406 (Bug): Keyboard shortcut for "clone row" does not work
  • Debugger:
  • WEB-15446 (Bug): Array length is equal to false for nodejs evalutations and watches
  • WEB-14879 (Bug): Firefox debugger: infinite 'Collecting data' for some variables
  • WEB-14889 (Bug): Firefox debugger: extra setters and getters in the 'Variable' tab
  • WEB-14888 (Bug): Firefox debugger: variable is not added in the list "Local" if it was declared as a passed parameter
  • WEB-14493 (Bug): Node debugger: 'Internal error: value null' while evaluating regexp
  • WEB-15039 (Exception): Firefox debugger: IllegalArgumentException when switch to another item in "Frames"
  • WEB-14886 (Exception): Firefox debugger: IllegalStateException when mute breakpoints
  • WEB-15152 (Exception): ES6: NullPointerException when run js file
  • Editor. Editing Text:
  • IDEA-129961 (Feature): Make scratch files executable
  • IDEA-100724 (Usability Problem): Issue with Move Statement Up/Down
  • IDEA-87318 (Usability Problem): Backspace should delete whitespace to chosen indent level, or be configurable
  • IDEA-58130 (Performance Problem): Improve editor performance during working with large files written in a single line
  • IDEA-136848 (Bug): Error transferring a comment by pressing Enter
  • IDEA-136319 (Bug): Hungry Backspace intermittent strange behavior since upgrade to 14.0.3
  • IDEA-135341 (Bug): Uncomment action removes a space after a comment prefix which ends with a space.
  • IDEA-101129 (Bug): Move Statement Up is broken in emum:s
  • IDEA-99510 (Bug): Move statement up/down behaves unexpectedly when used on class level annotation
  • IDEA-100878 (Bug): Emacs Tab behaves strange when indenting with tabs
  • File System:
  • IDEA-136705 (Usability Problem): Externally changed files aren't refreshed reliably on process termination
  • Find, Replace, Find Usages:
  • IDEA-131672 (Performance Problem): Find usages of Java package / class / method / field / constructor should skip JavaScript code unless source latter has Nashorn language dialect
  • HAML:
  • RUBY-12407 (Bug): haml underline illegal nesting
  • RUBY-16293 (Bug): interpolation causes string end to be missed by inspections in haml javascript filter
  • RUBY-16231 (Bug): haml parsing thrown off by capture within lambda
  • RUBY-12007 (Bug): haml: cant go to class declaration if node have 2+ classes
  • RUBY-15837 (Bug): CoffeScript filter doesn't work properly in haml files
  • HTML:
  • WEB-10804 (Feature): Emmet / Live Template: more options for "Expand (abbreviation) with"
  • WEB-10344 (Feature): "Insert background image size" action for HTML
  • WEB-15020 (Bug): Emmet does not recognise XML-namespaced attributes
  • IDE Configuration:
  • IDEA-131439 (Bug): Description of some items in Preferences -> Keymap reads internal ids rather than human-readable name
  • IDEA-134855 (Bug): "Check for Update" uses secure connection even if "Use secure connection" option is disabled
  • IDEA-131691 (Bug): Settings repository plugin: it doesn't make sense to sync last opened project between IDEs
  • IDE.General:
  • DBE-1057 (Bug): XML extractor does not escape illegal characters in xml columns on SQL Server
  • IDE.User Interface:
  • DBE-1020 (Usability Problem): Data Sources and Drivers: make possible to copy values of non-editable driver fields
  • JSP:
  • IDEA-37004 (Feature): TLD: tag/body-content value could be supported
  • IDEA-96801 (Bug): Exception in jsp
  • IDEA-17307 (Bug): Enum must not be local in JSP declaration block
  • IDEA-58299 (Bug): JSP: Find Usages / Rename works incorrect for variables defined in tag c:forEach
  • Jade:
  • WEB-14288 (Feature): jade: todo comments are not recognized
  • JavaScript:
  • WEB-11222 (Feature): Java 8: Nashorn: Java object in javascript files appears undefined, Java.type() not supported
  • WEB-15376 (Feature): Can not use the @interface JSDoc-tag with a name
  • WEB-14964 (Feature): Create Babel File watcher configuration
  • WEB-15366 (Cosmetics): As of 14.1 keyword "of" (like in for (x of xlist)) is no longer highlighted as keyword
  • WEB-13845 (Bug): JSDoc: type mismatch errors when using function new type to specify the constructed type of a constructor
  • IDEA-136652 (Bug): Packages prefix to reference java classes in Nashorn
  • WEB-14683 (Bug): es6 computed properties mismatched syntax coloring
  • WEB-13344 (Bug): Using @name tag breaks hightlighting and inspection rules for property functions
  • WEB-14714 (Bug): ES6: Shorthand property names
  • WEB-13877 (Bug): PsiEquivalenceUtil.areElementsEquivalent must not be null
  • WEB-14877 (Bug): Support @member to type instance properties
  • WEB-11571 (Bug): es6 annotations support
  • WEB-11723 (Bug): EcmaScript Harmony: support 'async' and 'await'
  • WEB-14963 (Bug): ES6: 'identifier expected' error when using 'this.' to access fields in destructuring assignment pattern
  • WEB-13900 (Bug): Assigned expression type string is not assignable to type T
  • WEB-13648 (Bug): Property name in object literal does not support unicode escape sequence
  • WEB-14893 (Bug): Export statement with a `let` binding results in a syntax error
  • WEB-14565 (Bug): Assigned expression type boolean is not assignable to type {}
  • WEB-10956 (Bug): JSDoc local and external references to @class, @alias or @name
  • WEB-14607 (Bug): Wront type detecting in inline-documented function param
  • WEB-15227 (Bug): JSX Harmony: 'async' and 'await' cannot be referenced as identifiers
  • WEB-15225 (Bug): Async/await: support method shorthand
  • WEB-12839 (Bug): ES6: Computed property names
  • WEB-14699 (Bug): global/public jsdoc namepaths unrecognized
  • WEB-11553 (Bug): Incomplete auto-completion and validation for custom types defined with @typedef
  • WEB-11524 (Bug): Node.js: function added to GLOBAL not resolved
  • WEB-13589 (Bug): JSDoc: provide type checking/completion for parameters in function that implements interface method
  • WEB-14727 (Bug): ES6: autocomplete
  • WEB-15256 (Bug): Incorrect reserved word used as a name
  • WEB-12946 (Bug): unresolved instance field of exported object
  • WEB-15362 (Exception): JSDoc: StringIndexOutOfBoundsException when print parameter name on Russian
  • WEB-15361 (Exception): Closure Compiler: NullPointerException when use certain @param syntax
  • WEB-14530 (Exception): JavaScript: NumberFormatException on "Convert to" intention for Octal and Binary literals
  • JavaScript. Formatter:
  • WEB-11520 (Feature): "Align multiline variable declaration" should align values on equal sign.
  • JavaScript. Frameworks:
  • WEB-15430 (Feature): Add Emmet support for JSX files/snippets
  • WEB-15029 (Feature): Make IDE aware of Backbone.js 'extend'-style inheritance.
  • WEB-13490 (Bug): Debug for Meteor packages doesn't work
  • WEB-10908 (Bug): JQuery 2.1.0, 1.11: '$' not resolved
  • WEB-15408 (Bug): ExtJS xtype 'component' is not recognized
  • JavaScript. Inspections:
  • WEB-12037 (Bug): Potentially invalid usage of this in arrow function
  • WEB-14604 (Bug): Strange signature mismatch problems
  • JavaScript. Refactoring:
  • WEB-13219 (Bug): "Remove unnecessary parentheses" breaks code
  • LESS:
  • WEB-12626 (Feature): Add Navigate Symbol support for LESS variables
  • WEB-14938 (Bug): AngularJS custom directive still shows "unknown element" in LESS
  • WEB-15132 (Bug): LESS duplicated property
  • Language Injection:
  • IDEA-135780 (Bug): Language Injection via comment: does not work for concatenated strings in annotations
  • Node.js:
  • WEB-14662 (Bug): Node.js Express New Project: add Handlebars engine support
  • WEB-15074 (Bug): Stack trace is not clickable
  • Plugin Support. API:
  • IDEA-133409 (Feature): Properties PSI: dedicated PSI for "PropertyKey"
  • Profiling:
  • WEB-14481 (Feature): Profiling: Timeline: improve selection
  • WEB-14480 (Feature): Profiling: Timeline: open Timeline tab on Zoom action
  • WEB-14973 (Feature): Profiling: CPU: save log file with a time stamp
  • WEB-14473 (Feature): Profiling: Jump to Source: provide context menu action
  • WEB-15095 (Usability Problem): Profiling: CPU: improve context actions for calls
  • WEB-15328 (Usability Problem): Profiling: CPU: improve time stamp for the log file
  • WEB-14974 (Usability Problem): Profiling: CPU: Timeline: improve "Usage hints" popup
  • WEB-15395 (Usability Problem): Profiling: Heap: provide "Take Heap Snapshot" action for Run Configuration
  • WEB-14965 (Usability Problem): Profiling: Run Configuration: improve UI
  • WEB-15428 (Usability Problem): Profiling: Heap: Communication port: change number format
  • WEB-15429 (Usability Problem): Profiling: provide Help button for V8 Profiling and V8 Heap views
  • WEB-14890 (Usability Problem): Profiling: Heap: provide expandable marks for top nodes
  • WEB-14911 (Usability Problem): Profiling: Heap: improve tabs naming
  • WEB-14910 (Usability Problem): Profiling: Heap: long URLs should be shown shorter
  • WEB-14467 (Bug): Profiling: Expand by Default: improve selection and expand state of the selected part of the tree
  • WEB-14500 (Bug): Profiling: result scales and values are differ in UI and in V8 external tool
  • WEB-14469 (Bug): Profiling: Top Calls: group name should be shown
  • WEB-15440 (Bug): Profiling: Heap: Take Heap Snapshot button does nothing if shown after hover over hidden buttons
  • WEB-14483 (Bug): Profiling: Export: synchronize changes automatically for generated files
  • WEB-14976 (Bug): Profiling: Heap: Summary: negative distance value
  • WEB-15396 (Bug): Profiling: Heap: Remove Mark should update all tabs at once
  • WEB-14474 (Bug): Profiling: Jump to Source: improve "Select file to navigate to" popup
  • WEB-14471 (Bug): Profiling: Total Filter: improve popup
  • WEB-14472 (Bug): Profiling: Jump to Source: provide correct info in the status bar
  • WEB-15330 (Bug): Profiling: CPU: do not delete .log file on IDE restart
  • WEB-14470 (Bug): Profiling: Collapse All: reject current selection on collapse action
  • WEB-15006 (Bug): Profiling: CPU: MacOS/Unix: log file cannot be created
  • WEB-15007 (Bug): Profiling: CPU: MacOS/Unix: Timeline is not created
  • WEB-15003 (Bug): Profiling: false error message in RD configuration
  • WEB-15181 (Bug): Profiling: CPU: Compare with Clipboard action is disabled for the first call in a table
  • WEB-14951 (Bug): Profiling: Heap: Many odd objects are shown for the Heap snapshot from the Chrome Canary
  • WEB-14453 (Bug): Profiling: NPE is thrown on attempt to start with Node.js 0.10.x version
  • WEB-14912 (Bug): Profiling: Heap: "Take Heap Snapshot" action should be disabled for stopped Node.js RC
  • WEB-15175 (Bug): Profiling: CPU: Top Calls: Total Filter cannot be set to default "no" value
  • WEB-15172 (Bug): Profiling: CPU: wrong highlighting and structure for Calls tab on columns reorder
  • WEB-15173 (Bug): Profiling: CPU: Timeline: prohibit empty x range selection
  • WEB-15389 (Bug): Profiling: Tools: V8 Profiling menu group should be dumb aware
  • WEB-15400 (Bug): Profiling: Heap: context menu invoked for Search results should not use selection from other tabs
  • WEB-15093 (Exception): Profiling: Timeline: NPE on clicking Zoom action twice
  • WEB-14903 (Exception): Profiling: Heap: IllegalStateException on loading Heap with enabled advanced profiling settings
  • WEB-15398 (Exception): Profiling: Heap: Summary: IOOBE on expanding child nodes of top groups
  • WEB-15394 (Exception): Profiling: Heap: validate name of the created snapshot
  • WEB-15169 (Exception): Profiling: CPU: Top Calls: CCE on Expand Node action invocation
  • WEB-15168 (Exception): Profiling: CPU: NPE on Collapse Node action invocation for a leaf node
  • Project Configuration:
  • IDEA-130669 (Feature): Language level should match JDK version for new projects
  • IDEA-27486 (Feature): Make file templates per-project
  • IDEA-134233 (Bug): New Project: custom Project Language Level is ignored
  • IDEA-133903 (Bug): Overriding existing project files in the new project wizard has no effect
  • IDEA-136336 (Bug): Cannot compile project after changing JDK version
  • Puppet:
  • RUBY-15325 (Feature): Support regexp syntax highlighting
  • RUBY-15610 (Feature): Fallback resolving mode for Puppet
  • RUBY-16270 (Feature): Add highlighting for puppet heredoc
  • RUBY-16221 (Bug): Type isn't matched in the match operation (=~)
  • RUBY-16268 (Bug): Uniqueness of hash set param per resource instance is not guaranteed
  • RUBY-16213 (Bug): Unique attribute marker isn't parsed
  • RUBY-16215 (Bug): Possible to define variables with uppercase
  • RUBY-16219 (Bug): Splat operator isn't parsed
  • RegExp:
  • IDEA-112498 (Bug): Regex named-group backreference (\k) marked as error
  • IDEA-91028 (Bug): Language injection for java.util.regex.Pattern does not know about special hex syntax, good code is red
  • Run | Debug configuration:
  • IDEA-123682 (Bug): Alternative JRE setting is not persisted
  • SASS:
  • WEB-14502 (Task): Change SASS to Sass
  • WEB-14947 (Bug): SCSS: "'{' expected" error reported for media query if a space between 'and' and expression is missing
  • WEB-14978 (Bug): PhpStorm hangs while opening bootswatch project
  • WEB-14813 (Bug): SASS: Colour is added like hex when use completeion
  • SQL:
  • IDEA-44071 (Usability Problem): SQL: typing opening quote does not insert closing quote in hexadecimal and binary strings (literals)
  • IDEA-44159 (Bug): SQL: MySQL: bit literals in form 0bvalue are red
  • IDEA-130102 (Bug): SQL: formatting: "New line before Select items" does not preserve new line after comment
  • IDEA-136754 (Bug): MySQL dialect marks COLLATE as error
  • SQL.CodeStyle:
  • DBE-470 (Usability Problem): Code Style: setting "comment at first column" not persisted
  • DBE-1049 (Bug): SQL / PostgreSQL formatting doesn't fully respect comment indentation
  • SQL.Editing:
  • DBE-1125 (Bug): Formatting issues in MySQL's quickdoc
  • DBE-1128 (Bug): Add live template on the fly
  • SQL.Highlighting:
  • DBE-932 (Bug): Oracle: 'select 2' without FROM clause is green
  • DBE-1043 (Bug): Oracle. Unresolved partition in "create table" statement
  • Structural Search and Replace:
  • IDEA-92927 (Bug): Structural Search and Replace surround match with non wanted ''lesser than'' and ''greater than'' chars
  • IDEA-128820 (Exception): Exception while structural replacement in html-code with empty replace template
  • TextMate Bundles:
  • RUBY-14770 (Bug): TextMate bundles: wrong highlighting for shellscript bundle
  • TypeScript:
  • WEB-13281 (Bug): Typescript dictionary interface not work for intellisense
  • WEB-13884 (Bug): Error when using quoted properties in a typescript enum
  • WEB-14971 (Bug): Unexpected error: "Initializer type X is not assignable to variable type Y" when TypeScript file watcher is disabled – type from JSDoc is used instead of type from type inference
  • WEB-13904 (Bug): Typescript: assigning "this" to another variable breaks typing.
  • WEB-15057 (Bug): Typescript: External Module export/import and `Unresolved variable` Error
  • WEB-15023 (Bug): Typescript: alias does not work inside class
  • WEB-11959 (Bug): TypeScript: recognize function name in quotes
  • WEB-14844 (Bug): TypeScript: properties of a type exposed via 'export import' are not available in completion
  • WEB-8485 (Bug): Wrong error highlighting on classes and interfaces with string literal as field name
  • WEB-14497 (Bug): Avoid multi-resolving to overloaded typescript functions
  • WEB-12392 (Bug): Typescript get set creates incorrect syntax errors
  • WEB-13274 (Bug): typescript parameter info doesn't works for inheritance constructors
  • WEB-11740 (Bug): Parameter info does not show for external TypeScript module's class constructor
  • Unit Tests:
  • WEB-11356 (Usability Problem): Cucumber-js: Win: path should be shown in win style
  • WEB-15042 (Bug): Right-clicking in a Jasmin test file tries to check it out.
  • User Interface:
  • IDEA-134569 (Bug): disabled annotation processors: list looks stange
  • IDEA-126493 (Bug): JetBrains TV link in Help menu may need an update
  • IDEA-133614 (Bug): Spring Boot: on file rename to application.properties its icon gets blinking (changing ''properties"/"spring boot" icon) until restart
  • IDEA-134135 (Bug): Settings: Scopes list shouldn't stick to configurable's borders
  • User Interface.Darcula:
  • IDEA-111827 (Cosmetics): Edge labels in UML diagram almost unreadable with darcula theme
  • Version Control. Perforce:
  • IDEA-134510 (Usability Problem): Don't show empty Perforce changelists after they're removed by the user from Local Changes view
  • IDEA-135398 (Bug): Can't add filenames containing the ellipsis wildcard (...) error on attempt to refresh changes
  • IDEA-134675 (Bug): Perforce: "no config file" message is shown in PerforceConfigurationState dialog though config exists in the project folder
  • IDEA-134673 (Bug): Perforce: changes in p4ignore are detected after Force Refresh only
  • IDEA-135438 (Bug): Perforce: annotate displays incorrect versions for moved file
  • XML:
  • IDEA-129977 (Feature): Allow create-namespace fix to work on unbound XML attributes
  • IDEA-58423 (Bug): xml: commenting double dashes produces invalid xml
  • IDEA-131342 (Bug): Commenting XML line containing just - produces invalid XML
  • YAML:
  • RUBY-15143 (Bug): RubyMine Freezing when Indexing Project (Mac OS Mavericks)
  • RUBY-16245 (Bug): Intellij Freezes when Indexing project. Clearing cache does not help
  • spy-js:
  • WEB-15113 (Usability Problem): Spy-js: Diagram: provide friendly message inside empty Details panel on first opening
  • WEB-15115 (Usability Problem): Spy-js: Diagram: Details: provide Expand All / Collapse All buttons
  • WEB-15116 (Usability Problem): Spy-js: Diagram: provide context menu for elements
  • WEB-15127 (Usability Problem): Spy-js: Diagram: cut long URL in the element tooltip
  • WEB-15128 (Usability Problem): Spy-js: Diagram: Details: improve context menu on session stop
  • WEB-15138 (Usability Problem): Spy-js: Diagram: multiple selection results in Details for single node only
  • WEB-15110 (Bug): Spy-js: Diagram is not redrawn on "Show application dependency diagram" action re-invocation
  • WEB-15140 (Bug): Spy-js: Diagram: Details cannot be displayed for external script invoked from withing inline script
  • WEB-15111 (Bug): Spy-js: Advanced Search: triple click discards Search results
  • WEB-15114 (Bug): Spy-js: Diagram: UI locks while loading Details for heavy trace/dependencies

New in PhpStorm 8.0.3 Build 139.1348 (Feb 13, 2015)

  • Distribution packages:
  • WI-25595 (Feature): Change Help/File issue to Help/Request Support
  • Injections in PHP:
  • WI-26402 (Bug): Edit fragment Escape sequences handling in various literals
  • WI-25397 (Bug): Escaped dollar sign in string ends language injection
  • WI-23728 (Bug): Nowdoc gave up parsing JavaScript language injection after (/
  • WI-26227 (Exception): Exception is thrown on attempt to create any injection inside HEREDOC
  • PHP Completion:
  • WI-21927 (Usability Problem): Over gregarious method completion options offered when (); is present
  • PHP Formatter:
  • WI-21950 (Bug): Complete statement fails in `define` scenario
  • PHP Inspections:
  • WI-3321 (Usability Problem): Unresolved include: include evaluation does not support $_SERVER['DOCUMENT_ROOT'] and other array constructs
  • PHP Refactoring:
  • WI-26231 (Bug): Rename HEREDOC/NOWDOC: doesn't support binary literals
  • PHP lang:
  • WI-26394 (Bug): Triple backslash doesn't escape variable
  • WI-25435 (Bug): Incorrect string parsing
  • WI-22891 (Bug): PHP - Phpdoc @param Type[] (array of type) cannot be followed when showing help (CTRL+Q)
  • WI-23897 (Bug): Expressions is not allowed as class constant value: false positive: if the array is immediately dereferencing in class constant
  • WI-26419 (Bug): Edit fragment Escape sequence \' handling is broken
  • WI-26232 (Bug): Split string doesn't preserve binary string
  • WI-23907 (Bug): PHP 5.6 False positive: expressions are not allowed as field default value
  • WI-3130 (Bug): PHP: binary literal is reported as error
  • WI-25675 (Bug): PHP literal lexer/parser breaks on variable interpolation with more than two dollar signs (like "$$$a")
  • WI-26229 (Bug): Convert heredoc/nowdoc doesn't support binary literals
  • WI-26228 (Bug): Replace quotes intention doesn't support binary strings
  • WI-25678 (Bug): PHP literal lexer/parser breaks on two trailing dollar signs in string
  • WI-2812 (Bug): PHP: erratic escape sequneces highligting in heredoc literals
  • WI-16774 (Bug): Rearranger: Match by name doesn't sort elements
  • WI-25889 (Bug): Problem while parsing HEREDOC string
  • WI-26293 (Bug): Heredoc/Nowdoc parsing fails if there are spaces before identifier
  • WI-26290 (Bug): Replace quotes doesn't work for single quotes if caret is around binary indication
  • WI-26154 (Bug): Incorrectly Treating Double Backslash As Escape (Double-Quoted Strings)
  • WI-26289 (Bug): Split string break code if the caret before binary literal
  • WI-26288 (Bug): Split string mixes quotes if caret is before last quote
  • WI-25452 (Bug): Curly braces in doubly quoted strings
  • WI-25865 (Bug): Parsing of nested function calls (15+) hogs CPU for minutes / Affecting Indexing, editor etc.
  • PHP lib stubs:
  • WI-22798 (Feature): Stub for PECL pthreads
  • WI-26054 (Bug): Missing stub for date_create_immutable()
  • WI-26081 (Bug): class_alias stub is wrong and missing third argument
  • PHP templates:
  • WI-25860 (Usability Problem): Blade: Add @var and @type to exclusion list of blade directives
  • WI-25959 (Bug): Blade: exception from PhpLexer on php part
  • WI-25683 (Bug): Smarty Paste Problem
  • WI-25864 (Exception): Blade: Access is allowed from event dispatch thread only after the change of directives
  • PS specific:
  • WI-1498 (Usability Problem): PhpStorm: "Upload to ..." functionality lacks of keyboard shortcut
  • Plugin: Deployment _ FTP..:
  • WI-25902 (Bug): "Create project from existing files" on the welcome screen is grayed out
  • WI-26204 (Bug): IDE fails on D'n'D of recursive symlinks on FTP or FTPS
  • Plugin: GAE support:
  • WI-25866 (Usability Problem): Move php google app engine project type in IDEA to PHP project generators group
  • Plugin: Phing:
  • WI-26281 (Task): Update Phing dom structure to 2.9.1
  • WI-26184 (Bug): Phing - ApplyTask Not Recognized ("Cannot resolve symbol 'apply'")
  • Plugin: WordPress:
  • WI-25850 (Performance Problem): WordPress integration causes freezes
  • WI-26234 (Exception): Error in WPModuleDetectionManager.getWPModule
  • No subsystem:
  • IDEA-131621 (Bug): IDEA 139.144.2 takes forever to start. Hangs on 100% splash screen state
  • IDEA-131144 (Bug): A part of method name is improperly reported as undefined path variable
  • WEB-14686 (Bug): Run Configurations: "CreateProcess error=87, The parameter is incorrect" error on invalid environment variable
  • IDEA-133598 (Bug): PsiInvalidElementAccessException: Element: class com.intellij.psi.impl.source.PsiJavaCodeReferenceElementImpl because: containing file is null
  • IDEA-134505 (Bug): Default settings are not applied anymore when opening a new directory in new version (139.659.2) if default settings was created in previous version (139.224.1)
  • IDEA-134087 (Bug): Deadlock while running an inspection on the project
  • PY-14543 (Bug): Links in Python debugger don't link to correct line
  • IDEA-131770 (Bug): IllegalStateException on start
  • WEB-14133 (Bug): Live template is evaluated inside another live template placeholder (scope: JSON)
  • IDEA-135933 (Exception): Throwable at com.intellij.ide.errorTreeView.NavigatableMessageElement.(NavigatableMessageElement.java)
  • Build tools:
  • WEB-14606 (Feature): Gulp: use default run configuration when fetching tasks from gulpfile
  • WEB-13924 (Feature): Gulp: RC: provide possibility to define arguments for tasks
  • WEB-14508 (Feature): Add ability to hide gulp tasks from "Select Run/Debug configuration" dropdown
  • WEB-14511 (Bug): Grunt: support navigable links in the output from the grunt-typescript package
  • WEB-14391 (Bug): cannot navigate to source for some gulp tasks
  • CSS:
  • WEB-14635 (Cosmetics): Intention settings for CSS: remove extra line from 'Description'
  • WEB-14647 (Bug): Incorrect visualization of partially duplicated code blocks in css files.
  • WEB-14664 (Bug): Editor pane should recognize @charset-declared encoding for CSS/SCSS files
  • WEB-14733 (Bug): CSS calc erroneously shown to be syntax error for complex subexpressions
  • WEB-14308 (Bug): Mouse focus lost on style and script tags
  • WEB-12616 (Bug): Auto-formatting adds extra space - breaks CSS
  • Code Formatting and Code Style:
  • IDEA-134402 (Bug): Can't rearrange entries when formatting a single file
  • Code Navigation:
  • IDEA-90564 (Bug): Navigation bar closes prematurely if in floating mode
  • CoffeeScript:
  • WEB-14980 (Bug): Files becomes uneditable, and application unusable, in 9.0.3
  • Cucumber JVM:
  • IDEA-123945 (Bug): Cucumber step definitions not found if in separate module
  • Debugger:
  • IDEA-134572 (Bug): Watch edit by mouse click is triggered when it should not
  • Diff_Merge:
  • IDEA-132514 (Bug): Change markers on scrollbar can be outdated in merge panel
  • Eclipse Integration:
  • IDEA-132813 (Bug): Eclipse integration: format of .iml linked to .classpath is changed unreasonably
  • Editing:
  • RUBY-16084 (Bug): Formatting code always prepends extra space every re-format call (nested method in array case)
  • Editor. Editing Text:
  • IDEA-133842 (Bug): IntelliJ IDEA 14.0.1: "Copy Reference" of Test file turns background to the color of the test file tab
  • File System:
  • IDEA-134360 (Bug): Deadlock in vfs
  • File Watchers:
  • WEB-14764 (Bug): File watchers, TypeScript: watcher for a file that imports external module is not triggered when changing this module
  • WEB-14790 (Bug): WebStorm does't show full error description from file watcher.
  • WEB-14812 (Exception): java.lang.AssertionError: Already disposed: Project (Disposed)
  • IDE:
  • RUBY-15995 (Bug): Rubymine 7 command line launcher doesn't exit on OSX
  • IDE Configuration:
  • IDEA-134783 (Usability Problem): Plugin manager: check dumbawareness of actions
  • IDEA-134370 (Performance Problem): Check connection via proxy freezes IDEA completely
  • IDEA-134979 (Bug): IDEA hangs on startup
  • IDEA-134737 (Bug): can't download plugin
  • IDEA-133305 (Security Problem): using TLS and a correct TLS/SSL certificate for product updates
  • Indices:
  • IDEA-133507 (Performance Problem): SDK refresh performs unnecessary file reads
  • IDEA-127304 (Bug): Exception at first IDE start
  • IDEA-134115 (Bug): Scanning files to index scans 'excluded' folders
  • JavaScript:
  • WEB-13350 (Bug): Harmony modules: import star syntax does not work
  • JavaScript. Formatter:
  • WEB-14661 (Bug): JavaScript: Formatter: Assertion Error with enabled "Wrap at right margin" option on Code Cleanup action
  • LESS:
  • WEB-14596 (Bug): `fade(#000, 50%)` background value must be valid in *.less files
  • Structural Search and Replace:
  • IDEA-132983 (Bug): Search for "$String$" without further constraints finds non-string literals
  • IDEA-130798 (Bug): SSR retains too much memory
  • IDEA-133006 (Bug): Literal not found in annotation
  • Task Management:
  • IDEA-134191 (Bug): Tools -> Tasks -> Server -> Gitlab: allows access to first 20 projects only
  • Terminal:
  • IDEA-118860 (Performance Problem): SSH Terminal: Do not block UI on trying to connect to remote host
  • IDEA-134893 (Performance Problem): SSH Terminal: hang on trying to close PyCharm after failed connection
  • IDEA-118842 (Bug): Ineffective console standard output color (Terminal)
  • IDEA-124136 (Bug): SSH sessions not available in the Start SSH Session dialog
  • IDEA-134741 (Bug): Terminal: the toolwindow remains empty after opening
  • IDEA-118869 (Exception): SSH terminal: can't handle connection error correctly
  • IDEA-134487 (Exception): Terminal: not able to open without console foreground set: ISE at org.jetbrains.plugins.terminal.JBTerminalSystemSettingsProvider$MyColorSchemeDelegate.getDefaultForeground
  • TypeScript:
  • WEB-14758 (Bug): React.createClass in a TypeScript class causes bug
  • User Interface:
  • IDEA-132237 (Usability Problem): Notification messages could have some useful actions
  • IDEA-133995 (Cosmetics): Settings / Intentions: category description appearance could be improved
  • IDEA-135089 (Bug): Search and replace multiline text allows to input only three lines
  • IDEA-130840 (Bug): 'keymap' configurable is modified after open Preferences
  • IDEA-135711 (Bug): 'Problems' icon not always highlighted when there is a problem
  • IDEA-133408 (Bug): Weird find in current file in Gtk theme
  • IDEA-104113 (Exception): Exception occurs if pressing alt+F1 shortcut ("Select In..." action) in repository browser
  • Version Control:
  • IDEA-117448 (Performance Problem): ShelvedChangesViewManager should not process all patches in config.patches on project load
  • IDEA-133826 (Cosmetics): Clumsy label text
  • IDEA-131944 (Bug): Typo in dialog confirming changed TODO
  • Version Control. Git:
  • IDEA-68866 (Feature): Please support "reword" and "fixup" rebase options
  • IDEA-134721 (Usability Problem): Git: interactive Rebase: show error on Fixup option selecting for the very first commit
  • IDEA-88890 (Usability Problem): Notify user about Git Rebase is finished
  • IDEA-134736 (Performance Problem): Freeze on open commit dialog with more than 10000 files removed
  • IDEA-134564 (Task): GitHandler auth listener does not detect authentication failed.
  • IDEA-81563 (Bug): "Resolve conflicts..." option under "VCS | Git" is doing nothing after merge conflict in submodules
  • IDEA-123397 (Bug): Git: History for file doesn't show anything before the move if there were too many changes in the commit that moved the file
  • IDEA-133564 (Bug): Version Control - Git settings for Force Push are stored separately
  • IDEA-133873 (Bug): pre-commit hook that modifies files
  • IDEA-134412 (Bug): "Share project on GitHub" initial push failed: no current branch
  • IDEA-134424 (Bug): IntelliJ fails to show the interactive rebase dialog if there are "fixup" commits
  • IDEA-133726 (Bug): New fetched tags don't cause the log to refresh (if pull/fetch has no branch updates)
  • IDEA-133737 (Bug): Regression for case with git+ssh+http_proxy
  • IDEA-135159 (Exception): NPE at git4idea.update.GitUpdateOptionsPanel.updateFrom
  • Version Control. Subversion:
  • IDEA-113535 (Usability Problem): Allow to Revert all Locally deleted files
  • IDEA-105028 (Task): Remove org.jetbrains.idea.svn.actions.AddAction
  • IDEA-103447 (Bug): Button "..." in "configure subversion branches" dialog is disabled
  • IDEA-131822 (Bug): Subversion checkout dialog no longer intelligently suggests folders
  • IDEA-131171 (Bug): Weird SVN error message during diff
  • IDEA-125347 (Bug): svn error browsing for changes since a date
  • IDEA-124213 (Bug): VCS Local Change View - New unversioned file not listed if package is unversioned too
  • IDEA-133835 (Bug): Error on creating SVN patch
  • IDEA-110604 (Bug): Negative number of unversioned files in changes pane (PyCharm 2.7.3 @ macos 10.8.4)
  • XML:
  • IDEA-134818 (Bug): Unable to fetch a missing resource

New in PhpStorm 8.0.3 Build 139.1226 EAP (Jan 31, 2015)

  • Injections in PHP:
  • WI-26227 (Exception): Exception is thrown on attempt to create any injection inside HEREDOC
  • PHP Refactoring:
  • WI-26231 (Bug): Rename HEREDOC/NOWDOC: doesn't support binary literals
  • PHP lang:
  • WI-3130 (Bug): PHP: binary literal is reported as error
  • WI-26229 (Bug): Convert heredoc/nowdoc doesn't support binary literals
  • WI-26228 (Bug): Replace quotes intention doesn't support binary strings
  • WI-26289 (Bug): Split string break code if the caret before binary literal
  • WI-26288 (Bug): Split string mixes quotes if caret is before last quote
  • WI-26232 (Bug): Split string doesn't preserve binary string
  • WI-26290 (Bug): Replace quotes doesn't work for single quotes if caret is around binary indication
  • PHP lib stubs:
  • WI-22798 (Feature): Stub for PECL pthreads
  • PS specific:
  • WI-1498 (Usability Problem): PhpStorm: "Upload to ..." functionality lacks of keyboard shortcut
  • Plugin: Deployment _ FTP..:
  • WI-26204 (Bug): IDE fails on D'n'D of recursive symlinks on FTP or FTPS
  • Plugin: Phing:
  • WI-26281 (Task): Update Phing dom structure to 2.9.1
  • WI-26184 (Bug): Phing - ApplyTask Not Recognized ("Cannot resolve symbol 'apply'")
  • Plugin: WordPress:
  • WI-26234 (Exception): Error in WPModuleDetectionManager.getWPModule
  • No subsystem:
  • IDEA-133598 (Bug): PsiInvalidElementAccessException: Element: class com.intellij.psi.impl.source.PsiJavaCodeReferenceElementImpl because: containing file is null
  • Code Navigation:
  • IDEA-90564 (Bug): Navigation bar closes prematurely if in floating mode
  • CoffeeScript:
  • WEB-14980 (Bug): Files becomes uneditable, and application unusable, in 9.0.3
  • Editing:
  • RUBY-16084 (Bug): Formatting code always prepends extra space every re-format call (nested method in array case)
  • IDE Configuration:
  • IDEA-134979 (Bug): IDEA hangs on startup
  • TypeScript:
  • WEB-14758 (Bug): React.createClass in a TypeScript class causes bug
  • User Interface:
  • IDEA-135089 (Bug): Search and replace multiline text allows to input only three lines
  • Version Control. Git:
  • IDEA-134412 (Bug): "Share project on GitHub" initial push failed: no current branch
  • XML:
  • IDEA-134818 (Bug): Unable to fetch a missing resource

New in PhpStorm 8.0.3 Build 139.1069 EAP (Jan 14, 2015)

  • PHP Inspections:
  • WI-3321 (Usability Problem): Unresolved include: include evaluation does not support $_SERVER['DOCUMENT_ROOT'] and other array constructs
  • PHP lang:
  • WI-25435 (Bug): Incorrect string parsing
  • WI-22891 (Bug): PHP - Phpdoc @param Type[] (array of type) cannot be followed when showing help (CTRL+Q)
  • WI-25675 (Bug): PHP literal lexer/parser breaks on variable interpolation with more than two dollar signs (like "$$$a")
  • WI-25678 (Bug): PHP literal lexer/parser breaks on two trailing dollar signs in string
  • WI-25889 (Bug): Problem while parsing HEREDOC string
  • WI-25452 (Bug): Curly braces in doubly quoted strings
  • WI-16774 (Bug): Rearranger: Match by name doesn't sort elements
  • PHP lib stubs:
  • WI-26054 (Bug): Missing stub for date_create_immutable()
  • WI-26081 (Bug): class_alias stub is wrong and missing third argument
  • PHP templates:
  • WI-25860 (Usability Problem): Blade: Add @var and @type to exclusion list of blade directives
  • Plugin: WordPress:
  • WI-25850 (Performance Problem): WordPress integration causes freezes
  • No subsystem:
  • WEB-14133 (Bug): Live template is evaluated inside another live template placeholder (scope: JSON)
  • WEB-14686 (Bug): Run Configurations: "CreateProcess error=87, The parameter is incorrect" error on invalid environment variable
  • IDEA-131144 (Bug): A part of method name is improperly reported as undefined path variable
  • Build tools:
  • WEB-14508 (Feature): Add ability to hide gulp tasks from "Select Run/Debug configuration" dropdown
  • WEB-13924 (Feature): Gulp: RC: provide possibility to define arguments for tasks
  • CSS:
  • WEB-14635 (Cosmetics): Intention settings for CSS: remove extra line from 'Description'
  • WEB-14664 (Bug): Editor pane should recognize @charset-declared encoding for CSS/SCSS files
  • WEB-14733 (Bug): CSS calc erroneously shown to be syntax error for complex subexpressions
  • WEB-14647 (Bug): Incorrect visualization of partially duplicated code blocks in css files.
  • Code Formatting and Code Style:
  • IDEA-134402 (Bug): Can't rearrange entries when formatting a single file
  • File Watchers:
  • WEB-14790 (Bug): WebStorm does't show full error description from file watcher.
  • WEB-14764 (Bug): File watchers, TypeScript: watcher for a file that imports external module is not triggered when changing this module
  • WEB-14812 (Exception): java.lang.AssertionError: Already disposed: Project (Disposed)
  • IDE Configuration:
  • IDEA-134783 (Usability Problem): Plugin manager: check dumbawareness of actions
  • IDEA-134737 (Bug): can't download plugin
  • Task Management:
  • IDEA-134191 (Bug): Tools -> Tasks -> Server -> Gitlab: allows access to first 20 projects only
  • Terminal:
  • IDEA-118860 (Performance Problem): SSH Terminal: Do not block UI on trying to connect to remote host
  • IDEA-134893 (Performance Problem): SSH Terminal: hang on trying to close PyCharm after failed connection
  • IDEA-118842 (Bug): Ineffective console standard output color (Terminal)
  • IDEA-124136 (Bug): SSH sessions not available in the Start SSH Session dialog
  • IDEA-134741 (Bug): Terminal: the toolwindow remains empty after opening
  • IDEA-118869 (Exception): SSH terminal: can't handle connection error correctly
  • IDEA-134487 (Exception): Terminal: not able to open without console foreground set: ISE at org.jetbrains.plugins.terminal.JBTerminalSystemSettingsProvider$MyColorSchemeDelegate.getDefaultForeground
  • User Interface:
  • IDEA-132237 (Usability Problem): Notification messages could have some useful actions
  • Version Control:
  • IDEA-117448 (Performance Problem): ShelvedChangesViewManager should not process all patches in config.patches on project load
  • Version Control. Git:
  • IDEA-134721 (Usability Problem): Git: interactive Rebase: show error on Fixup option selecting for the very first commit
  • IDEA-134736 (Performance Problem): Freeze on open commit dialog with more than 10000 files removed
  • IDEA-81563 (Bug): "Resolve conflicts..." option under "VCS | Git" is doing nothing after merge conflict in submodules
  • IDEA-135159 (Exception): NPE at git4idea.update.GitUpdateOptionsPanel.updateFrom

New in PhpStorm 8.0.3 Build 139.873 EAP (Dec 27, 2014)

  • PHP Formatter:
  • WI-21950 (Bug): Complete statement fails in `define` scenario
  • PHP lang:
  • WI-15291 (Bug): Shortcut Command+Shift+Enter add braces to the end of code block
  • WI-25865 (Bug): Parsing of nested function calls (15+) hogs CPU for minutes / Affecting Indexing, editor etc.
  • PHP templates:
  • WI-25959 (Bug): Blade: exception from PhpLexer on php part
  • WI-25683 (Bug): Smarty Paste Problem
  • WI-25864 (Exception): Blade: Access is allowed from event dispatch thread only after the change of directives
  • Plugin: Deployment _ FTP..:
  • WI-25902 (Bug): "Create project from existing files" on the welcome screen is grayed out
  • Plugin: GAE support:
  • WI-25866 (Usability Problem): Move php google app engine project type in IDEA to PHP project generators group
  • Plugin: WordPress:
  • WI-25850 (Performance Problem): WordPress integration causes freezes
  • No subsystem:
  • PY-14543 (Bug): Links in Python debugger don't link to correct line
  • IDEA-131770 (Bug): IllegalStateException on start
  • IDEA-131621 (Bug): IDEA 139.144.2 takes forever to start. Hangs on 100% splash screen state
  • Build tools:
  • WEB-14606 (Feature): Gulp: use default run configuration when fetching tasks from gulpfile
  • WEB-14511 (Bug): Grunt: support navigable links in the output from the grunt-typescript package
  • WEB-14391 (Bug): cannot navigate to source for some gulp tasks
  • CSS:
  • WEB-12616 (Bug): Auto-formatting adds extra space - breaks CSS
  • WEB-14308 (Bug): Mouse focus lost on style and script tags
  • Debugger:
  • IDEA-134572 (Bug): Watch edit by mouse click is triggered when it should not
  • Editor. Editing Text:
  • IDEA-133842 (Bug): IntelliJ IDEA 14.0.1: "Copy Reference" of Test file turns background to the color of the test file tab
  • File System:
  • IDEA-134360 (Bug): Deadlock in vfs
  • IDE:
  • RUBY-15995 (Bug): Rubymine 7 command line launcher doesn't exit on OSX
  • IDE Configuration:
  • IDEA-134370 (Performance Problem): Check connection via proxy freezes IDEA completely
  • IDEA-133305 (Security Problem): using TLS and a correct TLS/SSL certificate for your product downloads / updates
  • Indices:
  • IDEA-133507 (Performance Problem): SDK refresh performs unnecessary file reads
  • IDEA-134115 (Bug): Scanning files to index scans 'excluded' folders
  • IDEA-127304 (Bug): Exception at first IDE start
  • JavaScript:
  • WEB-13350 (Bug): Harmony modules: import star syntax does not work
  • JavaScript. Formatter:
  • WEB-14661 (Bug): JavaScript: Formatter: Assertion Error with enabled "Wrap at right margin" option on Code Cleanup action
  • LESS:
  • WEB-14596 (Bug): `fade(#000, 50%)` background value must be valid in *.less files
  • Structural Search and Replace:
  • IDEA-133006 (Bug): Literal not found in annotation
  • IDEA-130798 (Bug): SSR retains too much memory
  • IDEA-132983 (Bug): Search for "$String$" without further constraints finds non-string literals
  • Terminal:
  • IDEA-118842 (Bug): Ineffective console standard output color (Terminal)
  • IDEA-134487 (Exception): Terminal: not able to open without console foreground set: ISE at org.jetbrains.plugins.terminal.JBTerminalSystemSettingsProvider$MyColorSchemeDelegate.getDefaultForeground
  • User Interface:
  • IDEA-133995 (Cosmetics): Settings / Intentions: category description appearance could be improved
  • IDEA-133408 (Bug): Weird find in current file in Gtk theme
  • IDEA-104113 (Exception): Exception occurs if pressing alt+F1 shortcut ("Select In..." action) in repository browser
  • Version Control:
  • IDEA-133826 (Cosmetics): Clumsy label text
  • IDEA-131944 (Bug): Typo in dialog confirming changed TODO
  • Version Control. Git:
  • IDEA-68866 (Feature): Please support "reword" and "fixup" rebase options
  • IDEA-88890 (Usability Problem): Notify user about Git Rebase is finished
  • IDEA-134564 (Task): GitHandler auth listener does not detect authentication failed.
  • IDEA-133726 (Bug): New fetched tags don't cause the log to refresh (if pull/fetch has no branch updates)
  • IDEA-123397 (Bug): Git: History for file doesn't show anything before the move if there were too many changes in the commit that moved the file
  • IDEA-133873 (Bug): pre-commit hook that modifies files
  • IDEA-133564 (Bug): Version Control - Git settings for Force Push are stored separately
  • IDEA-133737 (Bug): Regression for case with git+ssh+http_proxy
  • IDEA-134424 (Bug): IntelliJ fails to show the interactive rebase dialog if there are "fixup" commits
  • Version Control. Subversion:
  • IDEA-113535 (Usability Problem): Allow to Revert all Locally deleted files
  • IDEA-105028 (Task): Remove org.jetbrains.idea.svn.actions.AddAction
  • IDEA-113468 (Bug): Subversion1.8: Lock operation hangs up if no credentials are provided
  • IDEA-103447 (Bug): Button "..." in "configure subversion branches" dialog is disabled
  • IDEA-133835 (Bug): Error on creating SVN patch
  • IDEA-110604 (Bug): Negative number of unversioned files in changes pane (PyCharm 2.7.3 @ macos 10.8.4)
  • IDEA-131171 (Bug): Weird SVN error message during diff
  • IDEA-125347 (Bug): svn error browsing for changes since a date
  • IDEA-124213 (Bug): VCS Local Change View - New unversioned file not listed if package is unversioned too
  • IDEA-131822 (Bug): Subversion checkout dialog no longer intelligently suggests folders

New in PhpStorm 8.0.2 Build 139.732 (Dec 11, 2014)

  • HIGHLIGHTS:
  • formatting for Blade templates, custom code styles for Blade, support for Blade custom delimiters
  • significant performance improvements (especially on big files, and files with multiple injected fragments)
  • sorting for getters/setters generation
  • improved detection for return types
  • possibility to specify path for PHP binary instead of path for directory containing PHP binary
  • support for ANSI sequences in console output (for remote PHP interpreters, Behat & PHPUnit)
  • variadic method parameters generation in PHPDoc
  • custom SQL parameters for language injection
  • ASP-style tags Log disappeared
  • IDEA-130032 (Bug): Compare with screen smooshes commit messages.
  • IDEA-130660 (Bug): Push Dialog: "No remotes" caption, if target branch is empty.
  • IDEA-132090 (Bug): Using F6 to move changes between change lists does not work anymore
  • IDEA-124768 (Bug): Git: log for external repository is not shown if vcs-integration for current project is not enabled
  • IDEA-133320 (Bug): Unregistered root detected: combined link Add Root and Configure in Event Log
  • IDEA-132577 (Bug): Git Add does not fully stage the conflicted file
  • IDEA-133475 (Bug): Remember filter text in Log when mouse covers '>>' icon.
  • IDEA-115773 (Bug): File Cache Conflict after updating from SVN with symlinks in the project paths
  • IDEA-132149 (Bug): Changes -> Log view does not works for projects with many modules
  • IDEA-132218 (Bug): Filter by relatively old branch + user name => empty log is shown
  • IDEA-120133 (Exception): RE at com.intellij.openapi.vcs.changes.ChangeListWorker.removeChangeList
  • IDEA-130779 (Exception): Exception when pushing Mercurial repository in a mixed project
  • IDEA-133194 (Exception): Change Log view: IAE: Comparison method violates its general contract
  • IDEA-121949 (Exception): Exception on trying to filter by non-existent branch
  • Version Control. Git:
  • IDEA-98693 (Usability Problem): Git Push dialog does not remember remote branch
  • IDEA-112732 (Usability Problem): git changes log: copy & paste does not work as expected
  • IDEA-120611 (Usability Problem): Github create pull request dialog: master should be default branch unless other branch was previously selected
  • IDEA-131714 (Usability Problem): Copy revision number should copy full revision number
  • IDEA-84771 (Usability Problem): Cherry-pick: do not propose to commit empty changelist
  • IDEA-131973 (Usability Problem): Push: load order of commits should depend on focus in Editor
  • IDEA-84497 (Usability Problem): Version Control settings is polluted with 'unregistered roots' errors
  • IDEA-82746 (Cosmetics): Disable "Push" button in Push dialog when there is nothing to push
  • IDEA-130889 (Cosmetics): push dialog cosmetics: community repository is truncated
  • IDEA-116489 (Task): Handle VFS refresh after pull same way as for checkout
  • IDEA-131705 (Bug): EAP: Unable to push into refs repos after git push dialog redesign
  • IDEA-87769 (Bug): "Unregistered git root detected" pointing to HomeBrew's /usr/local
  • IDEA-132298 (Bug): Can't run offline inspections because of PluginException: git4idea.test.GitTestRepositoryManager PluginClassLoader
  • IDEA-131036 (Bug): NPE when using git push or pull/fetch with proxy
  • IDEA-132502 (Bug): Git Pull Dialog with many branches: FrequentEventDetector - Too many events posted
  • IDEA-95523 (Bug): Live lock when calling Update Project during Cherry-Pick
  • IDEA-130245 (Bug): Git Push: pushing from detached HEAD state produces exception
  • IDEA-133368 (Bug): Enable Git Add on a newly added and changed file
  • IDEA-131438 (Bug): Git Push ignores choosed repository
  • IDEA-132430 (Bug): 'Open on GitHub' doesn't use http if specified on host
  • IDEA-132199 (Bug): Git>Branches... Dialog does not pop up when module is "library home"
  • IDEA-111168 (Bug): "Add All" button to add all unregistered roots at once
  • IDEA-133876 (Bug): Pull Changes from Remote - remote change doesn't filter remote branches list
  • IDEA-130702 (Bug): Using git-svn: git4idea.branch.GitBranchUtil - No remote found with the name [origin]
  • IDEA-115997 (Bug): Git Log: create Tag action doesn't update log
  • IDEA-133652 (Bug): git confusion when branch name is the same as file/directory name
  • IDEA-116748 (Bug): Git Cherry-Pick didn't commit more about a half of the files (150)
  • IDEA-98781 (Bug): Unregistered Git root detected in excluded directory
  • IDEA-95947 (Bug): Git: the same notification for unregistered git roots appear every time on adding new module to the project
  • IDEA-84715 (Bug): Non-latin letters and git
  • IDEA-130898 (Exception): RE at com.intellij.util.xmlb.XmlSerializerImpl.newInstance
  • IDEA-133309 (Exception): GitPushSettings.getUpdateMethod must not return null
  • Version Control. Mercurial:
  • IDEA-130781 (Bug): Diff is broken for files with spaces in name
  • Version Control. Perforce:
  • IDEA-132170 (Bug): Perforce integration: do not block EDT processing VFS events
  • IDEA-131255 (Bug): Perforce Job Specification Parse Error
  • Version Control. Subversion:
  • IDEA-130628 (Performance Problem): Subversion-related CPU hugging
  • IDEA-131413 (Bug): Schedule for Addition deadlock - after importing project from Eclipse
  • IDEA-104940 (Bug): Subversion: the very first History invocation returns the single (latest) revision only
  • IDEA-130923 (Bug): Deadlock when trigger SVN-Commit
  • IDEA-118950 (Bug): VCS 'Limit history by' value is still applied even when checkbox is unchecked
  • IDEA-118826 (Bug): svn annotate doesn't work on moved/renamed files
  • IDEA-130912 (Exception): CCE at org.jetbrains.idea.svn.auth.AuthenticationService.requestSshCredentials
  • XML:
  • IDEA-125016 (Bug): Commenting out a line in an XML file with commented out comments lower in the file can cause unwanted changes (and invalid xml). REGRESSION
  • IDEA-133531 (Bug): IDEA ignores the xsi:schemaLocation under certain circumstances
  • IDEA-132828 (Bug): Strange line breaks in the middle of the attribute name
  • IDEA-121450 (Bug): xsd:boolean - Idea is highlighting 0 and 1 as invalid values
  • XSLT:
  • IDEA-132585 (Bug): NPE when XSLT debug

New in PhpStorm 8.0.2 Build 139.659 RC 5 (Dec 4, 2014)

  • PHP Completion:
  • WI-25763 (Bug): Completion doesn't suggest elements defined in else condition
  • WI-23442 (Bug): Completion doesn't suggest elements defined in if condition
  • PHP Inspections:
  • WI-20157 (Feature): Support variadic method parameters PHPDOC
  • PHP debug:
  • WI-24660 (Exception): Set value doesn't accept \r\n separators
  • PHP lang:
  • WI-25596 (Bug): Complete current statement: alternative syntax: inserted closing statement is outside of php tag
  • PHP templates:
  • WI-24981 (Usability Problem): Blade: add warning about equal delimiters
  • WI-24980 (Bug): Blade: Custom delimiters can't be just @ (at)
  • PHP test:
  • WI-24206 (Bug): PHPUnit 4.*: fix loading by include path
  • Plugin: Drupal support:
  • WI-25232 (Usability Problem): Provide Drupal search URL in external documentation (ex. Cannot "View External Documentation" for Drupal (launches php.net instead))
  • No subsystem:
  • WI-9207 (Bug): Too many Spaces on Change the method visibility on a class
  • WEB-13981 (Bug): Alt+F2 should open page on default web server configured in Settings/Deployment
  • WEB-14347 (Bug): JSX emmet support incorrect for tag
  • Build tools:
  • WEB-12112 (Feature): make grunt console output navigable.
  • WEB-14309 (Bug): unreadable warning color in grunt console
  • CSS:
  • WEB-14205 (Bug): Create Selector: New CSS file...: no Content Roots are shown in the dialog
  • Debugger:
  • WEB-13653 (Bug): Open in browser opens only Chrome after debugging
  • IDEA-133432 (Bug): IDE hangs when deleting a line multiple times because of xdebugger
  • IDEA-132772 (Bug): Changed objects are not marked as modified
  • Editor. Editing Text:
  • IDEA-133649 (Bug): Font not working
  • File Watchers:
  • WEB-14104 (Feature): Finish watcher before running tests
  • JSP:
  • IDEA-133345 (Bug): Idea inserts wrong closing tag
  • LESS:
  • WEB-14345 (Bug): LESS: Error "Mismatched property values" when use color operation functions
  • WEB-14303 (Bug): less animation-delay negative error
  • WEB-14382 (Bug): LESS: Highlighting of unclosed comment is missing if cursor is on a new line
  • Packaging:
  • PY-9389 (Usability Problem): Install package: enter in search field should select most relevant package in the list of packages
  • PY-9736 (Cosmetics): Packaging: emphasize installing label by another color
  • PY-9738 (Bug): Packaging: spinning backgroung process indicator disappears after selection change
  • Version Control:
  • IDEA-116400 (Usability Problem): Vcs Log: in a multi-repo project recent commits list can be incorrect
  • IDEA-112436 (Usability Problem): "Unregistered VCS root message" improvements: "Add root" button; optional automatical roots registration.
  • IDEA-133197 (Cosmetics): VCS log: Log vanishes after invoke "Collapse linear branches" or "Expand all branches" actions
  • IDEA-107117 (Bug): Filter part of toolbar panel in Changes->Log disappeared
  • IDEA-133475 (Bug): Remember filter text in Log when mouse covers '>>' icon.
  • IDEA-133320 (Bug): Unregistered root detected: combined link Add Root and Configure in Event Log
  • Version Control. Git:
  • IDEA-84497 (Usability Problem): Version Control settings is polluted with 'unregistered roots' errors
  • IDEA-132199 (Bug): Git>Branches... Dialog does not pop up when module is "library home"
  • IDEA-84715 (Bug): Non-latin letters and git
  • IDEA-133652 (Bug): git confusion when branch name is the same as file/directory name
  • IDEA-133368 (Bug): Enable Git Add on a newly added and changed file
  • IDEA-132502 (Bug): Git Pull Dialog with many branches: FrequentEventDetector - Too many events posted
  • IDEA-111168 (Bug): "Add All" button to add all unregistered roots at once
  • IDEA-133309 (Exception): GitPushSettings.getUpdateMethod must not return null
  • XML:
  • IDEA-121450 (Bug): xsd:boolean - Idea is highlighting 0 and 1 as invalid values
  • IDEA-133531 (Bug): IDEA ignores the xsi:schemaLocation under certain circumstances

New in PhpStorm 8.0.2 Build 139.584 RC 4 (Nov 27, 2014)

  • PHP Formatter:
  • WI-22628 (Bug): No indent for PHP array new line
  • WI-18809 (Bug): Continuation indent is doubled for chained methods
  • WI-20054 (Bug): "else if" html formatting
  • PHP lang:
  • WI-25598 (Bug): Complete current statement: alternative syntax: additional closing tag is inserted if there is a PHPDoc/comment
  • WI-25654 (Bug): Support autocomplete for exception interfaces in catch()
  • WI-25505 (Bug): PHP literal lexer/parser breaks on variable variable interpolation "$$a"
  • PHP lib stubs:
  • WI-25632 (Bug): sqlite_query() and sqlite_exec() stubs missing one of arguments
  • WI-25623 (Bug): wrong stub for function parse_url
  • WI-25655 (Bug): Missing documentation for Locale::canonicalize()
  • PHP templates:
  • WI-25673 (Bug): Laravel Blade @lang ----- MissHighlight error Expected )
  • WI-25641 (Bug): Blade: exception is thrown on pressing enter inside non-closed html tag
  • WI-25412 (Bug): Blade: missing indent for tags except @section (tags like @for, @if, etc)
  • PHP test:
  • WI-25461 (Bug): Behat testrun fails with Symfony 2.3.*
  • No subsystem:
  • WEB-14058 (Performance Problem): Store only limited initializer texts in stubs of JSVariable (e.g. store only literal constant expressions in initializers)
  • IDEA-133415 (Cosmetics): Image missing in the ToD
  • WEB-13990 (Bug): spread attributes not supported for JSX
  • WEB-13998 (Bug): JSX: when formatting JSX fragment, text children of a JSX element are not indented correctly
  • Code Analysis. Inspection:
  • IDEA-133442 (Exception): Code Cleanup: sometimes cannot be run
  • Console:
  • IDEA-132694 (Bug): ANSI colors need restart for a new settings to apply
  • Debugger:
  • WEB-13972 (Bug): Debugger: Cannot stop on breakpoint due to internal error: TypeError: Object function () { ... } has no method 'value'
  • HTML:
  • WEB-2405 (Bug): Code style / HTML / "Do not indent children ... or if tag size more than" actually works like "more or equals"
  • IDE:
  • RUBY-15682 (Bug): "Error parsing vagrant file" on RubyMine 7.0 EAP (138.1466)
  • IDE Configuration:
  • IDEA-116809 (Bug): File Types: reassigned wildcard between predefined file types is not preserved upon restart
  • Indices:
  • IDEA-128919 (Bug): Eclipse Code Formatter gives "Invalid stub element type in index"
  • JavaScript:
  • WEB-14120 (Bug): Locate Duplicates for Java Script is dead in V14
  • WEB-14283 (Bug): Local variable in JSX file is marked as unused
  • WEB-14330 (Exception): NPE at com.intellij.lang.javascript.inspections.JSUnusedLocalSymbolsInspection$1.registerReferencedFromReference
  • JavaScript. Frameworks:
  • WEB-14182 (Bug): JSX variables showing as un-used with common-js
  • WEB-14165 (Bug): Attribute class shouldn't be obligatory in custom angular directives
  • JavaScript. Inspections:
  • WEB-12639 (Bug): "'Return' inside 'finally' block" JavaScript inspection triggers for different function scope
  • WEB-12939 (Bug): Bad inspection "PointlessArithmeticExpressionJS"
  • User Interface:
  • IDEA-133162 (Cosmetics): Typo in Export Test Results
  • IDEA-132962 (Bug): Exception when opening old project in CLion
  • Vagrant:
  • PY-13945 (Bug): VagrantFile with additional parameters should be parsed
  • XML:
  • IDEA-132828 (Bug): Strange line breaks in the middle of the attribute name

New in PhpStorm 8.0.2 Build 139.496 RC 3 (Nov 21, 2014)

  • This update features:
  • formatting for Blade templates and custom code styles for Blade
  • ASP-style tags

New in PhpStorm 8.0.2 Build 139.173 RC 1 (Oct 24, 2014)

  • PHP Completion:
  • WI-25277 (Feature): Add stubs for xhprof extension constants and functions
  • PHP Formatter:
  • WI-25265 (Bug): Incorrect indenting for switch statements if "Next line shifted" is enabled
  • WI-25239 (Bug): Two additional indent is inserted inside case block
  • PHP Inspections:
  • WI-25315 (Bug): "Traditional syntax array detected" real world usage
  • PHP Refactoring:
  • WI-25204 (Usability Problem): Convert to heredoc inserts an extra blank line
  • PHP lang:
  • WI-24747 (Performance Problem): Random Slow-Downs / High CPU usage in bigger files with lots of language injections
  • WI-18436 (Bug): Generate getter/setter doesn't take into account type of @property
  • WI-25256 (Bug): Functions with 16 or more return statements get marked as returning void
  • PHP lib stubs:
  • WI-25316 (Bug): SessionHandlerInterface.php stub has broken links to php docs due to typo.
  • PHP test:
  • WI-25271 (Bug): php.xml config always changes with remote interpreter
  • Plugin: Deployment _ FTP..:
  • WI-24916 (Bug): Deployment root /users/... changed to /Users/... every time PyCharm is restarted
  • No subsystem:
  • IDEA-131239 (Bug): "Alt F3" search in editor should have "pink" background if there are no matches
  • IDEA-117429 (Bug): 'Base on This Class' action doesn't work properly in Hierarchy window
  • IDEA-120252 (Bug): Plugin Manager: "Restart IntelliJ IDEA" button does nothing
  • IDEA-128848 (Bug): Idea asks for class destination directory in Project tree
  • IDEA-131067 (Bug): Extract constant refactoring creates uncompilable code
  • Code Analysis. Inspection:
  • IDEA-131685 (Bug): Cleanup code quick fix / Settings: focus does not go into Inspection dialog
  • Code Formatting and Code Style:
  • IDEA-95117 (Feature): Arrangement: Allow to specify 'condition sequences'
  • IDEA-95126 (Feature): Arrangement: Provide ability to negate conditions
  • IDEA-131147 (Bug): Code Style: "Detect and use existing file indents for editing": old indent state is used on the first update
  • CoffeeScript:
  • WEB-13578 (Bug): CoffeeScript: recognize Javascript language version inside injections
  • Database:
  • IDEA-131250 (Bug): Database console result grid fonts looks very small.
  • Debugger:
  • IDEA-125136 (Bug): variables/watches are not updated when changes come from different view
  • IDEA-131105 (Bug): Inspect arrays and collections does not work
  • IDEA-131298 (Bug): Eliminate Ctrl+enter vs Enter confusion in evaluation dialog
  • IDEA-131230 (Bug): Read action should not be required for XDebugSessionImpl.breakpointReached
  • IDEA-131100 (Bug): RubyMine EAP does not detect evaluate expression code fragment mode any more
  • Diff_Merge:
  • IDEA-94552 (Cosmetics): Diff connector line is too short by one pixel
  • Editor. Code Completion:
  • IDEA-131251 (Usability Problem): Please disable insert selected variant on typing dot... on comment nodes
  • IDEA-131207 (Bug): Live Template: escaping back-slash in Variable
  • Editor. Editing Text:
  • IDEA-131657 (Usability Problem): Don't expand foldings on 'Move Caret to Next/Previous Word' actions
  • IDEA-131568 (Bug): Wrong fold region is unfolded on mouse click
  • File System:
  • IDEA-131281 (Bug): VfsImplUtil$2 processing of (after) vfs events is slow (11.5s)
  • Find, Replace, Find Usages:
  • IDEA-130894 (Bug): Find usages does not support operators
  • HAML:
  • RUBY-15817 (Bug): Reformat code breaks indent for multiline block
  • RUBY-15730 (Bug): Wrong indentation inspection appear for commented lines
  • RUBY-12007 (Bug): haml: cant go to class declaration if node have 2+ classes
  • RUBY-15312 (Bug): HAML i18n inspection bug
  • HTML:
  • WEB-12364 (Bug): HTML5 microdata: correctly complete properties from schema.org
  • IDE Configuration:
  • IDEA-131432 (Usability Problem): Description text in Settings | Updates should tell that this option also affects plugins
  • JavaScript:
  • WEB-13777 (Feature): JSON: Settings: provide Colors And Fonts
  • WEB-10498 (Bug): Don't parse the single-line html-comments in script tags as javascript
  • JavaScript. Formatter:
  • WEB-13223 (Bug): JavaScript styling - Object properties alignment is broken for exporessions
  • Project Configuration:
  • IDEA-114862 (Bug): Formatter Control: with disabled formatter and enabled 'Use tab character' option spaces in not formatted lines are replaces with tabs in some cases
  • Project View:
  • IDEA-131416 (Bug): Delete key on a Module in Project View Toolwindow does nothing
  • Run | Debug configuration:
  • IDEA-96819 (Bug): CTRL + F2 shortcut not killing process [Ubuntu 12.04]
  • Structural Search and Replace:
  • IDEA-130949 (Bug): Structural Search does not support nested classes syntax
  • UML:
  • IDEA-131584 (Exception): NPE at com.intellij.diagram.util.DiagramUtils.navigateTo
  • Version Control:
  • IDEA-122007 (Feature): Improve "Copy Hash" action in Git log
  • IDEA-130850 (Usability Problem): Log: Keep description scrolling position on refresh
  • IDEA-130650 (Usability Problem): git push to non-origin remotes not working
  • IDEA-124768 (Bug): Git: log for external repository is not shown if vcs-integration for current project is not enabled
  • IDEA-130779 (Exception): Exception when pushing Mercurial repository in a mixed project
  • Version Control. Git:
  • IDEA-112732 (Usability Problem): git changes log: copy & paste does not work as expected
  • IDEA-116489 (Task): Handle VFS refresh after pull same way as for checkout
  • IDEA-131705 (Bug): EAP: Unable to push into refs repos after git push dialog redesign
  • IDEA-131036 (Bug): NPE when using git push or pull/fetch with proxy
  • IDEA-130245 (Bug): Git Push: pushing from detached HEAD state produces exception
  • IDEA-131438 (Bug): Git Push ignores choosed repository
  • Version Control. Subversion:
  • IDEA-130628 (Performance Problem): Subversion-related CPU hugging
  • IDEA-130923 (Bug): Deadlock when trigger SVN-Commit

New in PhpStorm 8.0.2 Build 139.105 EAP (Oct 17, 2014)

  • PHP Formatter:
  • WI-25175 (Bug): Strange indenting with simple if-statements
  • WI-24443 (Bug): PHPDoc generator always uses short name for @property
  • WI-25167 (Bug): PHPDoc generator always uses FQN name for @return
  • WI-2641 (Bug): switch indentation
  • WI-9237 (Bug): "Wrap when typing reaches right margin" while typing comment line - should start new line comment when wrapped
  • PHP Refactoring:
  • WI-25206 (Bug): Double quote + Identifier + Double quote is a valid heredoc identifier
  • PHP lang:
  • WI-25171 (Bug): Ctrl-P does not show parameters list when caret is right after opening parenthesis
  • PHP templates:
  • WI-25174 (Performance Problem): Slow performance on Find in Path function
  • WI-25242 (Bug): Blade: Failure of syntax highlighting
  • WI-24782 (Exception): Blade: Exception occurs on attempt to open php tag
  • openapi:
  • WI-24363 (Bug): Allow multiple php.typeProvider2 getType matches
  • No subsystem:
  • IDEA-130724 (Bug): NPE in LogConsoleBase
  • IDEA-130604 (Bug): Reporting exception fails
  • WEB-13696 (Bug): Broken Live Templates
  • CSS:
  • WEB-2078 (Feature): CSS as New file in menu
  • WEB-13736 (Cosmetics): CSS completion: Browser compatibility icons are too distracting
  • WEB-13601 (Bug): "Create selector" don't let me choose CSS file on my content roots
  • WEB-10439 (Bug): Default live template m-t for css works incorrectly
  • WEB-13695 (Bug): Cannot use directories when creating some types of files
  • Code Analysis. Inspection:
  • IDEA-130964 (Usability Problem): Spell check in commit dialog only works if enabled in inspection
  • Debugger:
  • IDEA-131247 (Bug): Debugger: changes in watches made out of debugger session are not saved
  • Diff_Merge:
  • IDEA-16393 (Usability Problem): Add ability to customize default next-diff/prev-diff bindings (for example to Alt-Down/Alt-Up)
  • IDEA-123196 (Usability Problem): Merge tool should support stepping over only unresolved conflicts
  • IDEA-130874 (Usability Problem): 'Revert' action does nothing when invoked inside a changed file but not on a line containing changes
  • IDEA-115799 (Performance Problem): Visual Merge tool produce 100% CPU usage
  • Editor. Editing Text:
  • IDEA-116877 (Usability Problem): IntelliJ should disallow line breaks in changelist name
  • IDEA-93998 (Usability Problem): In overwrite mode it is impossible to add new line to the file
  • IDEA-107490 (Bug): Backspace with sticky selection not working
  • IDEA-130863 (Bug): Chaotic selection on reopening editor
  • IDEA-126958 (Bug): Syntax-coloured copying: TODOs color are ignored
  • IDEA-130866 (Bug): Code folding for getter method - cursor doesn't move into method implementation
  • IDEA-101360 (Exception): Rearrange code action should treat read-only files correctly
  • File Watchers:
  • WEB-13719 (Bug): TypeScript: when File Watcher is enabled some errors are not highlighted in the Editor
  • WEB-13667 (Bug): Can't jump to error reported line with File Watcher and TypeScript 1.1.0-1
  • Find, Replace, Find Usages:
  • IDEA-130637 (Cosmetics): Find: "Context" chooser combobox cut-off
  • JavaScript:
  • IDEA-130914 (Bug): JavaScript debug Run Configuration doesn't allow Make before Run
  • WEB-13112 (Bug): No JSDoc is shown for properties of inferred types
  • JavaScript. Inspections:
  • WEB-13594 (Usability Problem): JSCS: Settings: improve "Custom configuration file" field
  • WEB-13687 (Bug): JSCS: should work on Unix/Mac
  • WEB-13623 (Bug): JSCS: avoid errors highlighting blinking on typing in the Editor
  • WEB-13669 (Bug): JSCS: Settings dialog opened from the Error pane is not shown correctly
  • Project Configuration:
  • IDEA-130930 (Bug): misc.xml configuration overlaps the other definition of a component
  • IDEA-113773 (Bug): Welcome Screen: no way to correct search query in recent project panel, because Backspace deletes projects now
  • SASS:
  • WEB-13027 (Bug): background-image size intention does not work in scss
  • WEB-7061 (Bug): Support interchangeability of dash and underscore in SASS/SCSS identifiers
  • Unit Tests:
  • WEB-13744 (Bug): karma rerun tests lunches new karma servers
  • User Interface:
  • IDEA-122990 (Usability Problem): Scrollbar overlaps content and prevents clicking
  • IDEA-131126 (Cosmetics): Selection coloring gets an excessive offset on editor left margin on 139
  • IDEA-130812 (Bug): Settings / Keymap: custom scheme is shown selected, but all shortcuts are from Default (regression)
  • IDEA-130997 (Bug): Editor gutter tooltips must properly de-escape content
  • IDEA-130808 (Bug): Settings dialog: search field: clean icon disappears when focus is off the field
  • IDEA-131149 (Bug): Preferences search occasionally doesn't find items in Keymap section
  • IDEA-131108 (Bug): com.intellij.util.ui.Animator doesn't work in Welcome Wizard (where there is no application)
  • Version Control:
  • IDEA-116192 (Usability Problem): Show star* near date/author in the log table if commit-date/committer is different from author-date/author
  • IDEA-118653 (Cosmetics): Weird background for containing branches section
  • IDEA-131186 (Cosmetics): Vcs log does not look nice after look&feel switch
  • IDEA-120133 (Exception): RE at com.intellij.openapi.vcs.changes.ChangeListWorker.removeChangeList
  • Version Control. Git:
  • IDEA-84771 (Usability Problem): Cherry-pick: do not propose to commit empty changelist
  • IDEA-116748 (Bug): Git Cherry-Pick didn't commit more about a half of the files (150)
  • IDEA-95523 (Bug): Live lock when calling Update Project during Cherry-Pick
  • IDEA-130898 (Exception): RE at com.intellij.util.xmlb.XmlSerializerImpl.newInstance
  • Version Control. Perforce:
  • IDEA-131255 (Bug): Perforce Job Specification Parse Error

New in PhpStorm 8.0.2 Build 139.14 EAP (Oct 9, 2014)

  • This build brings improved detection for return types, many bug fixes and performance improvements.
  • Other changes from IntelliJ platform and web are also included, including new layout of Settings (Preferences).

New in PhpStorm 8.0.2 Build 138.2502 EAP (Sep 27, 2014)

  • PHP Completion:
  • WI-15503 (Bug): Auto-import: Doesn't work for constants
  • PHP Composer:
  • WI-25021 (Bug): Composer: doesn't work with ''Default project interpreter''
  • PHP Formatter:
  • WI-24625 (Bug): Complete statement for switch doesn't move cursor inside switch
  • WI-23563 (Bug): PHP Code Arrangement is not saved/applied
  • WI-24840 (Exception): Exception is thrown on attempt to insert PHPDoc comment
  • PHP Refactoring:
  • WI-21910 (Usability Problem): Remove Unused parameter: Allow to apply quick fix in inspection result tab
  • WI-20333 (Bug): Move static member: Attempt to move field/function from trait to child class of class that uses the trait leads to unnecessary warning
  • WI-20848 (Bug): Move static: Late static binding is not detected if new static is used as function argument
  • PHP lang:
  • WI-11128 (Bug): Array element assignment on a field inside logical expression: Expression is not assignable
  • WI-17949 (Bug): failed to determine type of expression with @(error control operator) inside
  • PHP lib stubs:
  • WI-16637 (Bug): session_set_save_handler incorrect tip
  • WI-24634 (Bug): strrpos stub have wrong description
  • WI-22288 (Bug): Stubs of the Mongo extension are wrong/outdated
  • WI-24944 (Bug): Missing ReflectionParameter method stub docs
  • PHP project configuration:
  • WI-15976 (Usability Problem): PhpStorm won't recognize the php installation in case of php start-up warnings
  • WI-13110 (Usability Problem): Allow to specify path for php binary instead of path for directory
  • PHP templates:
  • WI-24743 (Feature): Blade Syntax Changes / Custom Delimiters
  • WI-24977 (Cosmetics): Blade: warning is empty on setting reopenning
  • WI-24947 (Bug): Smarty: add settings validation
  • PHP test:
  • WI-24457 (Bug): Behat & PHPUnit doesn't support ANSI colors
  • Plugin: Deployment _ FTP..:
  • WI-24288 (Bug): Remote Interpreters: ide hang on setting project interpreter to remote host which is not available currenlty
  • Plugin: Drupal support:
  • WI-24928 (Bug): Drupal coding standards: spacing
  • Plugin: GAE support:
  • WI-24694 (Feature): Provide option to use OAuth2 authentication
  • WI-24698 (Cosmetics): Improper initialization of enabled property in settings
  • No subsystem:
  • WEB-12516 (Feature): Google Web Starter Kit into WebStorm
  • IDEA-128575 (Performance Problem): PushedFilePropertiesUpdaterImpl upon getting directory created event starts new dumb mode task viq schedulePushRecursively
  • WI-24752 (Bug): Find usages, scope not respected
  • WEB-12234 (Bug): inspector doesn't know about MutationObserver
  • WEB-13492 (Bug): Dollar sign characters incorrectly show up as errors in JSX Harmony
  • WEB-13366 (Bug): Cannot remove absent project direcories
  • IDEA-128272 (Bug): Shortcut for "View assertEquals difference"
  • IDEA-129950 (Bug): Repository browser expects http urls only
  • IDEA-128090 (Bug): Complete statement and variable renaming don't play nicely (JavaScript)
  • IDEA-129015 (Bug): Settings Window: Link "Configure 'Spelling' inspection is broken
  • IDEA-130143 (Bug): Having the UTF8 char in the path cannot launch command line launcher
  • IDEA-129127 (Bug): Scope include recursively not working
  • IDEA-130013 (Bug): Appcode 3.0.5 crashes when I create new SingleView Project
  • IDEA-129735 (Bug): Do not log ProcessCanceledException upon cancelling project opening
  • IDEA-129633 (Bug): Copy/Paste from image viewer
  • IDEA-129013 (Bug): Middle click linux clipboard are clear after swith to another file
  • IDEA-129936 (Bug): Race condition in ClassPathCache
  • WEB-11426 (Bug): Incorrect parsing of JavaScript code in a HTML file
  • IDEA-129376 (Bug): Bug in IDE Fatal error submission
  • IDEA-130138 (Bug): Add a UI hint that File and Code templates' language is Velocity
  • IDEA-129573 (Bug): 'Check for Update...' does not work when invoked via 'Find Action'
  • IDEA-126582 (Exception): Throwable at com.intellij.openapi.editor.impl.EditorFactoryImpl.createViewer
  • Build tools:
  • WEB-13474 (Bug): Can't find gulp tasks in webstorm 9
  • WEB-13300 (Bug): GULP: shell environment issues
  • WEB-13509 (Bug): Console in Grunt Console Window is hidden
  • CSS:
  • WEB-13315 (Usability Problem): HTML "Create selector" intention don't append it at end of stylesheet if file ends with a comment
  • WEB-13433 (Bug): All of the basic properties are marked with "CSS 3.0"
  • WEB-13455 (Bug): text-decoration is marked as a Firefox property
  • WEB-13434 (Bug): IE-only properties are marked with "CSS 1.0"
  • WEB-9871 (Bug): broken css after autorefotmat
  • WEB-13425 (Bug): Css code completion provides outdated rules at first place
  • IDEA-129463 (Bug): CSS autocomplete not available
  • WEB-13456 (Bug): white-space is marked with too many browser icons
  • Code Analysis. Inspection:
  • IDEA-130330 (Usability Problem): Inspection settings: severity of disabled scope is reported as for enabled
  • IDEA-129796 (Usability Problem): Settings / Inspections: individual inspection tooltip could be improved
  • IDEA-130323 (Usability Problem): Severity filter in inspection settings acts strangely
  • IDEA-129799 (Usability Problem): Settings / Inspections: two arrow key presses required to collapse / expand
  • IDEA-130385 (Usability Problem): Inspection settings treeview: left arrow does not scroll the view when group node is not visible
  • IDEA-130390 (Cosmetics): Inspection settings: name of "Reset to Defaults Settings" could be corrected
  • IDEA-130387 (Bug): Inspection settings: Reset to Default make additional options panel disappear
  • IDEA-130388 (Bug): Inspection settings: Reset to Default does not work if the only changes are inspection-specific options
  • IDEA-130342 (Bug): Inspections settings: adding scope to group does not update containing inspections in tree view
  • Code Formatting and Code Style:
  • IDEA-125070 (Exception): Arranger: exception is thrown during rearrangement of empty xml
  • IDEA-95395 (Exception): TraceableDisposable$DisposalException at TraceableDisposable.throwDisposalError() on project closing
  • Code Navigation:
  • IDEA-125738 (Usability Problem): Goto custom region action usability
  • CoffeeScript:
  • WEB-12960 (Bug): CoffeeScript: false alarm syntax error on return with new line indent
  • WEB-12110 (Bug): CoffeeScript validation error for valid code
  • WEB-13338 (Bug): Expression statement is not assignment or call
  • WEB-13305 (Bug): CoffeeScript: `Unexpected token` error with constructor, line break, and call method
  • WEB-9046 (Bug): CoffeeScript: a shorthand for assigning class field not recognized
  • Console:
  • IDEA-129066 (Bug): Console auto scroll does not work properly with foldings
  • Data.Viewer:
  • DBE-776 (Usability Problem): hint cover "more" button
  • Database:
  • IDEA-129885 (Usability Problem): Ctrl+up/down should scroll in Database Console
  • Debugger:
  • IDEA-65205 (Feature): Clicking on exception breakpoint mark should switch this breakpoint off instead of creating new line breakpoint
  • IDEA-130019 (Usability Problem): Unexpected setting of Breakpoints on clicking at line starts
  • WEB-13249 (Bug): support names mapping (function params and locals)
  • IDEA-127641 (Bug): Error tooltips are not shown for certain editors
  • WEB-13202 (Bug): Node.js debugger resumes on Step Over
  • IDEA-129621 (Bug): Watches cannot be modified when not debugging
  • WEB-13448 (Bug): Debugging Node-Webkit applications with a "node-main" script
  • IDEA-129239 (Bug): Evaluate window does not update context on steps
  • IDEA-125376 (Bug): Highlited current debug line disappear after switch between pages (Ctrl+E)
  • WEB-11324 (Bug): Live Console vs. stdin
  • IDEA-129861 (Bug): Show a failure popup for Quick Expression Evaluation, instead of nothing
  • IDEA-129486 (Exception): NPE at com.intellij.xdebugger.impl.ui.tree.nodes.XDebuggerTreeNode.fireNodesRemoved
  • IDEA-129313 (Exception): Throwable at com.intellij.debugger.engine.SuspendContextImpl.a
  • Diff_Merge:
  • IDEA-37313 (Usability Problem): Diff from changes view scrolls to last line for added files
  • IDEA-126302 (Bug): 'Go to next difference' doesn't scroll editor in diff
  • IDEA-128312 (Bug): Diff SynchronizeScrolling works incorrectly, if one of editors have search popup opened
  • IDEA-129533 (Bug): 'Change marks' on gutter are still shown after committing
  • IDEA-89858 (Bug): Diff tool doesn't apply proper language's code style
  • Distribution packages:
  • WI-16861 (Feature): Tutorials button in PhpStorm
  • WI-24666 (Task): Use the attached files for ToD
  • Editor. Editing Text:
  • IDEA-15412 (Feature): Expand or Collapse all existing foldings in selection
  • IDEA-119234 (Feature): Option to show whitespaces only in front and behind
  • IDEA-74010 (Feature): outliner-like code folding improvements
  • IDEA-129862 (Feature): Allow to bind custom shortcuts to live template expansion, not just Tab/Space/Enter
  • IDEA-66504 (Feature): Implement brace matcher & highlighter for generics angle brackets
  • IDEA-120880 (Performance Problem): Slow soft wraps calculating
  • IDEA-117756 (Bug): File structure: editor window is not scrolled to the chosen element if latter is folded
  • IDEA-129337 (Bug): Empty editor when switching tabs
  • IDEA-129597 (Exception): Exception loop on creating SQL scratch
  • Editor. Error Highlighting:
  • IDEA-129824 (Feature): java.util.Scanner methods need language injection for regexp parameters
  • External Tools:
  • IDEA-108491 (Usability Problem): Command line launcher ignores the merge command
  • File System:
  • IDEA-128902 (Bug): Recursive Symlinks STILL cause idea to spin forever
  • Find, Replace, Find Usages:
  • IDEA-76660 (Feature): New multi-line search/replace should have Regex option
  • IDEA-129807 (Usability Problem): Find in Path allows searching in empty directory
  • IDEA-122268 (Usability Problem): Replace in Path: "Cancel" should be "Review"
  • IDEA-127886 (Bug): Unwanted escaping in background tasks dialog
  • IDEA-107627 (Bug): Find key command select input text even if already focused
  • IDEA-73862 (Bug): Focus moves to the editor, when switching to Multiline mode in find/replace
  • IDEA-129537 (Bug): Scope "Selected Files" finds nothing when selected file is directory
  • IDEA-130168 (Bug): Find in Path - result options are always collapsed initially
  • IDEA-129326 (Exception): IOOBE is thrown on attempt to expand Find Usage results
  • HTML:
  • WEB-13155 (Bug): set a User-Agent header when downloading libraries using intention
  • WEB-10812 (Bug): Can't download library from http://code.createjs.com
  • using intention
  • WEB-13309 (Bug): Emmet trips up on rules with parenthesis
  • WEB-12465 (Bug): Wrong attribute suggestion on HTML anchor elements
  • WEB-11558 (Bug): 'Fix all "there is no locally stored library" problems' do nothing
  • WEB-12667 (Bug): 'symbol' element from SVG namespace is reported as 'unknown HTML tag'
  • WEB-369 (Bug): "Duplicate ID reference" error shown when the ID of an element is the same as the name of an anchor tag
  • IDE:
  • RUBY-15651 (Usability Problem): console: "Scroll to the end" should be disabled when there is nothing to scroll
  • IDE Configuration:
  • IDEA-129351 (Usability Problem): Cannot restore deleted live template
  • IDEA-128620 (Usability Problem): Can't change notification display type after I changed it to "ballon"
  • IDEA-130046 (Bug): Plugins configuration: ability to filter by repository missed
  • Indices:
  • IDEA-129245 (Bug): Deadlock in 138.1696.2
  • IntelliJ Platform:
  • WI-24456 (Feature): Add support for ANSI sequences in the console output for Remote Interpreter
  • WI-5906 (Usability Problem): Add "Report Issue" to Help menu
  • JSP:
  • IDEA-128451 (Bug): IDEA can't resolve namespace in EL
  • JavaScript:
  • WEB-3660 (Feature): JSDoc @this support
  • WEB-12185 (Bug): Functions not resolved when file is referenced via another file in Node.js
  • WEB-13270 (Bug): Simplify if statement intention does nothing for empty if-block
  • WEB-12521 (Bug): Bad code after typing expression with "Insert selected variant on typing..."
  • WEB-10585 (Bug): Move statement up in JSON/JavaScript literal: Bad comma treatment
  • WEB-10269 (Bug): Go to declaration of minified JavaScript file is unnecessary
  • WEB-13483 (Bug): Count not resolve string methods for repeat param
  • WEB-13520 (Bug): ES6 generators not parsed correctly when language level is set to 'JSX Harmony'
  • WEB-12278 (Bug): JS inspections: using the wrong namespace is not reported
  • WEB-12803 (Bug): JSDoc @callback
  • WEB-13539 (Bug): NPE on parsing javascript with custom template markup, editor stops redrawing
  • WEB-13229 (Bug): Live Template variable disappear while editing another variable
  • WEB-13306 (Bug): JSDoc @typedef properties overflow to classes
  • JavaScript. Formatter:
  • WEB-5653 (Feature): JavaScript: add wrapping for comments on code reformatting
  • WEB-13175 (Bug): JavaScript formatting for binary expressions, align when multiline off, does not indent at all
  • WEB-11401 (Bug): Smart indent: don't auto-indent block contents on Enter if it's aligned with braces
  • WEB-12086 (Bug): Comments before function-as-argument produces wrong indentation
  • JavaScript. Inspections:
  • WEB-12074 (Bug): Quick Documentation don't work with constructor property
  • WEB-11121 (Bug): Good code is yellow: JS: Invalid number of arguments
  • JavaScript. Refactoring:
  • WEB-2088 (Bug): JS, Extract Method refactoring: with 'global' scope, created functional expression is not resolved
  • JavaScript. Templates:
  • WEB-10221 (Bug): Embedded javascript in script block placed after template script block not rendered correctly
  • LESS:
  • WEB-13316 (Usability Problem): HTML "Create selector" intention don't jump to LESS file
  • WEB-13314 (Bug): LESS unclosed comment not detected as error
  • WEB-13120 (Bug): code style -> align values mistake for media query (LESS)
  • WEB-13334 (Bug): Less: don't add spaces after ampersand (&) on formatting
  • Language Injection:
  • IDEA-130121 (Cosmetics): Language Injections shared across projects
  • Packaging and Installation:
  • IDEA-129262 (Bug): Failed update from 138.1751 to latest version
  • Password Safe:
  • IDEA-130364 (Bug): Github: checkout from welcome screen with master password leads to deadlock
  • Plugin Support. API:
  • IDEA-128774 (Feature): Add ConsoleView as parameter into ConsoleFilterProviderEx
  • Project Configuration:
  • IDEA-129033 (Performance Problem): Loading project with thousands of orderEntry records get exponentially slower
  • Project View:
  • IDEA-130012 (Bug): Program crashes when attempting to add an existing file to a project
  • REST Client:
  • WEB-13326 (Bug): REST Client Response Headers are empty for HTTP code 204 (No Content)
  • WEB-13418 (Bug): REST Client cookies tab sets editor and console font line spacing to 1.2
  • SASS:
  • WEB-12533 (Bug): Do not run 'ruby compass' with read lock
  • WEB-13092 (Bug): Sass stdlib framework is detected but configuration fails
  • WEB-13468 (Bug): Placeholder definition doesn't shows body.
  • Spellchecker:
  • WI-25013 (Usability Problem): Add "Laravel" word to the dictionary used by spellchecker
  • Structural Search and Replace:
  • IDEA-127784 (Feature): "Recent Find Usages" for recent Structural Search and Replace searches
  • Stylus:
  • WEB-9218 (Bug): Stylus: Red code and Reformat Code: complex import statements
  • WEB-13182 (Bug): Stylus: Red code: placeholder as selector inside @extend
  • Task Management:
  • IDEA-126470 (Exception): Redmine connection problem
  • Terminal:
  • IDEA-126617 (Cosmetics): Resizing terminal moves caret
  • IDEA-128769 (Bug): Terminal isn't working (OSX)
  • TypeScript:
  • WEB-12249 (Bug): Typescript reference wrong from lambda
  • WEB-12823 (Bug): TypeScript: function type mismatch
  • WEB-12912 (Bug): #TypeScript Arrow function's parameter type code hints not displayed
  • WEB-12101 (Bug): Typescript: 'private member not accessible' error shown for usages of private variable declared in reopened module
  • WEB-12866 (Bug): TypeScript - no code completion for result of function with generic
  • WEB-13416 (Bug): TypeScript — too strict return type checking for lambdas
  • WEB-13415 (Bug): TypeScript — PHPStorm assumes this for closures
  • Unit Testing. JUnit:
  • IDEA-119967 (Bug): Test runner: FileComparisonFailure diff window misses Prev/Next failure arrows
  • User Interface:
  • IDEA-56406 (Feature): Option: Open new editor tabs at the end (bottom end for multiple tabs).
  • IDEA-129565 (Usability Problem): Settings|Notifications: table with notification's groups should be disabled if checkbox is disabled
  • IDEA-129741 (Usability Problem): Settings, File Colors tab: defult size of "Scopes" dialog window is too small
  • IDEA-129877 (Cosmetics): Gutter grows when editor reaches 99 lines instead of 100
  • IDEA-129319 (Cosmetics): Settings: gap between header and list of links for a group in Alloy
  • IDEA-129305 (Cosmetics): Settings: remove >> symbols in lists for setting groups
  • IDEA-130272 (Cosmetics): New Settings dialog: increase tree node height
  • IDEA-127879 (Cosmetics): Inspections UI: selection foreground is wrong in advanced options popup
  • IDEA-116923 (Task): Fix, kill or rewrite FinderRecursivePanelSelectionUpdateTest
  • IDEA-129655 (Bug): Inspections UI: Dragging details pane divider too far right makes it disappear
  • IDEA-129568 (Bug): 'Tab title limit' setting does not dither out when Tab Placement set to 'None'
  • IDEA-129614 (Bug): NullPointerException on "check for updates"
  • IDEA-129962 (Bug): Two+ index bars when status bar is hidden
  • IDEA-129395 (Bug): 'Do not ask me again' option of 'Confirm exit' dialog is saved even when 'Cancel' button is pressed
  • IDEA-129623 (Bug): 'Quick Documentation' doesn't show content of image file when invoked on a file reference in java code
  • IDEA-129246 (Bug): search in new settings doesn't find inspections
  • IDEA-130294 (Bug): Draw line highlighters with no gap to the gutter splitter
  • IDEA-128731 (Bug): X-Selection gets lost in "Find in Path" Dialog
  • IDEA-129344 (Bug): Dialogs invoked from expandable tooltip (debugger hint) appear under it
  • IDEA-129296 (Bug): Settings in Code Style are not saved on changing
  • IDEA-129381 (Bug): Settings dialog: not the whole area of hyperlinks is clickable
  • IDEA-129860 (Bug): Settings: "Updates info" dialog contains non-functional hyperlink
  • IDEA-130139 (Bug): Settings dialog: on clearing search query dim-out doesn't disappear
  • IDEA-128048 (Bug): Inspections UI: filter icon is not pressed down when filter is applied
  • Version Control:
  • IDEA-127139 (Feature): Git Log: Possibility to filter log by regular expression
  • IDEA-113222 (Usability Problem): Shelve changes to project dir
  • IDEA-128664 (Usability Problem): Add a shortcut for "Revert" action in changes view
  • IDEA-128955 (Usability Problem): Push dialog: focus should be in the main area by default
  • IDEA-128954 (Usability Problem): Push dialog: enter invoked on the repository node should move it to edit mode
  • IDEA-129008 (Task): PushDialog: create PushSpec only for @NotNull PushTarget, and add annotation.
  • IDEA-126380 (Task): Synchronize refs & log loading on refresh
  • IDEA-117057 (Bug): Merge commit changes are not shown in (new) log
  • IDEA-117337 (Bug): Git Log: can't filter by commit ID
  • IDEA-129253 (Bug): IDEA hangs up on opening the checked out project
  • Version Control. Git:
  • IDEA-129682 (Feature): Allow to create common branch, even if it exists in one of repos
  • IDEA-85773 (Feature): Enable git push force from the UI
  • IDEA-75353 (Usability Problem): Git, commit in a detached HEAD: Intrusive warning message
  • IDEA-120605 (Usability Problem): Github Create Pull Request: get rid of initial modal fetching
  • IDEA-120608 (Usability Problem): Select base fork dialog should not appear before create pull request dialog
  • IDEA-120604 (Usability Problem): Github create pull request: two modal progresses instead of one
  • IDEA-77483 (Usability Problem): GIT "Push tags" missing from push dialog
  • IDEA-117553 (Performance Problem): Vcs log: initial loading is significantly slower than in the command line
  • IDEA-115997 (Bug): Git Log: create Tag action doesn't update log
  • IDEA-129048 (Bug): Github: Create Pull Request: Diff window is not available until dialog closing
  • IDEA-124356 (Bug): "Share project on GitHub" incorrectly reports, "Project is already on GitHub."
  • IDEA-129935 (Bug): Git push dialog shows 2 entries per each merge commit
  • Version Control. Mercurial:
  • IDEA-129808 (Usability Problem): hg4idea push dialog should only show affected repos on "commit and push", not all repos with affected ones selected
  • IDEA-129637 (Bug): mercurial updates to wrong revision if there tag and branch with the same name
  • IDEA-98785 (Bug): Cannot commit Mercurial subrepo change from interface
  • Version Control. Perforce:
  • IDEA-113807 (Bug): Improve diagnostics when p4 executable cannot be found
  • IDEA-127026 (Bug): Perforce connection doesn't recognize config file starting with .
  • IDEA-129917 (Bug): Perforce ignored files support: tolerate insufficient permissions messages
  • Version Control. Subversion:
  • IDEA-128840 (Bug): While browsing svn repository "Loading..." node is always shown in case of error (during children load)
  • IDEA-129377 (Exception): Exception when updating Subversion project
  • XML:
  • IDEA-119253 (Feature): Option to turn off auto-complete for HTML
  • IDEA-124279 (Performance Problem): DOM: IndexedElementInvocationHandler triggers PSI building for @Stubbed
  • IDEA-127191 (Exception): "can't find tag for interface org.jetbrains.idea.devkit.dom.ExtensionPoint" thrown by 'Analyze Dependencies' action

New in PhpStorm 8.0.1 Build 138.2001 (Sep 19, 2014)

  • Various bug fixes and stability improvements from the PHP, web & IntelliJ platform sides.

New in PhpStorm 8.0 Build 138.2000 (Sep 16, 2014)

  • PHP Language Support: Full support for PHP 5.6; completely reworked mixed language editing (i.e. SQL in PHP); new intentions and inspections; enhanced formatting, type inference, and other coding assistance features.
  • Frameworks: Support for Blade template engine, WordPress, and Drupal 8.
  • Behat support.
  • Remote PHP interpreters support.
  • Debugging & testing improvements; support for Zend Server Z-Ray.
  • Support for the top trending web technologies: AngularJS, spy-js (a JavaScript and Node.js tracing tool), Grunt (a JavaScript task runner), PhoneGap/Cordova, Bower, gulp.js, CucumberJS, postfix templates for JavaScript, and many others.
  • This release also inherits all of the of the great improvements made in the underlying IntelliJ Platform including: multiple carets and selections, working with a single file without creating a project, bundled Scratch plugin, EditorConfig support, and more.

New in PhpStorm 8.0 Build 138.2071 EAP (Sep 6, 2014)

  • PHP Formatter:
  • WI-20538 (Bug): Properly support PSR2 code formatting of multi-line arguments
  • WI-23361 (Bug): Missing line break after phpDoc auto-comment for a function
  • PHP Inspections:
  • WI-24665 (Exception): java.lang.ArrayIndexOutOfBoundsException: -1 in PHP plugin
  • PHP Refactoring:
  • WI-24533 (Bug): Inlining variable with two uses in the same string only inlines the first
  • WI-24302 (Bug): Move namespace refactoring creates invalid use’s for core types
  • WI-24418 (Bug): Move class: doesn't update target directory if a new namespace is an old namespace + some text
  • PHP debug:
  • WI-24630 (Bug): Debugger tries to accept connection from Z-Ray
  • PHP lang:
  • WI-23536 (Bug): PHPDoc for closure in return statement doesn't work
  • PHP lib stubs:
  • WI-24659 (Bug): MySQLi_STMT::bind_result shouldn't accept zero parameters
  • PHP templates:
  • WI-24487 (Bug): Blade: Ignore CSS rules (ex. warning error with @import)
  • WI-24654 (Bug): Blade templates: @extends shows warning "expected semicolon" when the second parameter is used
  • PHP test:
  • WI-23233 (Feature): Add support of Behat 3.0 Turnip regex
  • Plugin: Command line:
  • WI-23555 (Bug): Command Line tools are not consistent with connection
  • Plugin: Deployment _ FTP..:
  • WI-24628 (Usability Problem): Auto upload to FTP on multiple projects
  • WI-23584 (Bug): Fail with "Invalid descendent file name "/"" if FTP server supports MLSD and returns cdir
  • WI-24670 (Bug): Too large files are always unequal in diff when compared by content
  • Plugin: GAE support:
  • WI-24694 (Feature): Provide option to use OAuth2 authentication
  • No subsystem:
  • IDEA-129013 (Bug): Middle click linux clipboard are clear after swith to another file
  • CSS:
  • WEB-9871 (Bug): broken css after autorefotmat
  • Code Analysis. Inspection:
  • IDEA-128150 (Usability Problem): When inspections are disabled for a file, the 'eye' is not updated - without any indication why (looks like a broken)
  • IDEA-129215 (Cosmetics): Looks like Hector is ignoring me
  • Code Formatting and Code Style:
  • IDEA-95395 (Exception): TraceableDisposable$DisposalException at TraceableDisposable.throwDisposalError() on project closing
  • Debugger:
  • IDEA-129239 (Bug): Evaluate window does not update context on steps
  • Diff_Merge:
  • IDEA-37313 (Usability Problem): Diff from changes view scrolls to last line for added files
  • IDEA-89858 (Bug): Diff tool doesn't apply proper language's code style
  • IDEA-126302 (Bug): 'Go to next difference' doesn't scroll editor in diff
  • IDEA-128312 (Bug): Diff SynchronizeScrolling works incorrectly, if one of editors have search popup opened
  • Find, Replace, Find Usages:
  • IDEA-127886 (Bug): Unwanted escaping in background tasks dialog
  • IDE:
  • RUBY-15651 (Usability Problem): console: "Scroll to the end" should be disabled when there is nothing to scroll
  • Project Configuration:
  • IDEA-129033 (Performance Problem): Loading project with thousands of orderEntry records get exponentially slower
  • User Interface:
  • IDEA-128731 (Bug): X-Selection gets lost in "Find in Path" Dialog
  • IDEA-129296 (Bug): Settings in Code Style are not saved on changing
  • IDEA-129246 (Bug): search in new settings doesn't find inspections
  • Version Control:
  • IDEA-127139 (Feature): Git Log: Possibility to filter log by regular expression
  • IDEA-128955 (Usability Problem): Push dialog: focus should be in the main area by default
  • IDEA-113222 (Usability Problem): Shelve changes to project dir
  • IDEA-117337 (Bug): Git Log: can't filter by commit ID
  • IDEA-129253 (Bug): IDEA hangs up on opening the checked out project
  • Version Control. Git:
  • IDEA-120604 (Usability Problem): Github create pull request: two modal progresses instead of one
  • IDEA-120605 (Usability Problem): Github Create Pull Request: get rid of initial modal fetching
  • IDEA-120608 (Usability Problem): Select base fork dialog should not appear before create pull request dialog
  • IDEA-129048 (Bug): Github: Create Pull Request: Diff window is not available until dialog closing
  • Version Control. Perforce:
  • IDEA-113807 (Bug): Improve diagnostics when p4 executable cannot be found
  • IDEA-127026 (Bug): Perforce connection doesn't recognize config file starting with .
  • Version Control. Subversion:
  • IDEA-128840 (Bug): While browsing svn repository "Loading..." node is always shown in case of error (during children load)

New in PhpStorm 8.0 Build 138.1901 EAP (Sep 1, 2014)

  • PHP Completion:
  • WI-16026 (Bug): Trait: Autocompletion doesn't recognize protected methods
  • PHP Composer:
  • WI-24438 (Bug): Default project interpreter is not propogated to Add dependency dialog
  • PHP Formatter:
  • WI-21913 (Feature): Colon is not inserted on complete statement for "case"
  • WI-21914 (Feature): Colon is not inserted on complete statement for "default"
  • WI-24317 (Usability Problem): Complete statement: autoindent completed statement
  • PHP Inspections:
  • WI-2542 (Bug): Undefined variable: Variables in MySQLi_STMT::bind_result Undefined
  • WI-22831 (Bug): Parameter type: new static is not resolved as correct parameter type
  • WI-23577 (Bug): 'static' and '$this' are not correctly resolved
  • PHP debug:
  • WI-24304 (Feature): Support Zend Server Z-ray
  • PHP frameworks:
  • WI-20691 (Bug): Page http://www.jetbrains.com/phpstorm/webhelp?reference.settings.zf1tool is missing
  • PHP lang:
  • WI-24566 (Feature): referenceContributor for DOC_IDENTIFIER
  • PHP templates:
  • WI-24487 (Bug): Blade: Ignore CSS rules (ex. warning error with @import)
  • PHP test:
  • WI-24497 (Exception): Exception is thrown on attempt to create/edit local PHPUnit configuration
  • Plugin: Command line:
  • WI-24575 (Bug): Focus is not on the text input when opening the Command Line Tools Console
  • Plugin: Deployment _ FTP..:
  • WI-21262 (Bug): Can't go further on Project Creation process.
  • Plugin: ini4idea:
  • WI-22438 (Usability Problem): INI file syntax highlight inheritance - property key
  • No subsystem:
  • IDEA-115387 (Bug): Documentation popup: psi_element:// - links don't work across languages
  • WEB-12471 (Bug): WebStorm becomes unresponsive
  • IDEA-129004 (Bug): Detached sheet dialogs
  • Build tools:
  • WEB-13114 (Feature): Gulp: make valid path links in console clickable
  • WEB-13118 (Usability Problem): Gulp: improve Add gulpfile action inside Run Gulp Task popup
  • WEB-13119 (Usability Problem): Gulp: define RC name for the same named tasks from different gulpfiles
  • WEB-13116 (Bug): Gulp: preserve expand/collapse tasks state on Reload tasks action
  • WEB-13102 (Bug): Gulp: reload tasks on gulp package update without project reopening
  • CSS:
  • IDEA-128953 (Bug): Broken highlighting sometimes in CSS Live Template settings
  • Code Insight:
  • PY-13778 (Bug): SIOOBE: Show parameter info
  • PY-13556 (Bug): Parameter info doesn't work properly
  • CoffeeScript:
  • WEB-5714 (Bug): Incorrect parsing
  • Console:
  • IDEA-129066 (Bug): Console auto scroll does not work properly with foldings
  • Debugger:
  • IDEA-129080 (Bug): Do not show debug window on breakpoint
  • WEB-10145 (Bug): Polymer: cannot debug imported script
  • Diff_Merge:
  • IDEA-86151 (Bug): External Merge Tool: files are not marked as resolved when resolving conflicts with external merge tool
  • Find, Replace, Find Usages:
  • IDEA-127785 (Feature): Add "Replace in Path" searches to "Recent Find Usages"
  • IDEA-119760 (Bug): Replace in Path missing "Open in new tab" checkbox
  • IDEA-128733 (Bug): FindInPath: "Recursively" option with Directory Scope selected doesn't work
  • IDEA-128184 (Bug): file search on a custom scope searches folders outside the project (gems)
  • IDEA-127886 (Bug): Unwanted escaping in background tasks dialog
  • HAML:
  • RUBY-14877 (Bug): haml: error shown with trailing space inside block parameters definitions
  • JavaScript:
  • WEB-13121 (Bug): "Locate duplicates" for Javascript are missing
  • WEB-12119 (Bug): JSX (and E4X) support in ECMAScript6 mode
  • WEB-13082 (Exception): java.lang.IllegalStateException: Attempt to modify PSI for non-committed Document!
  • JavaScript. Formatter:
  • WEB-13043 (Bug): JavaScript styling - do not add space inside empty array/object literal
  • Node.js:
  • WEB-12707 (Bug): Mocha - console output mangles ANSI escape codes
  • Password Safe:
  • IDEA-128922 (Exception): Dialog must be init in EDT only: Throwable at com.intellij.ide.passwordSafe.impl.providers.masterKey.MasterPasswordDialog.
  • Plugin Support. Architecture:
  • IDEA-128617 (Bug): When plugin's actions crash at initialisation, the failure is reported but the plugin is not disabled
  • Project Configuration:
  • IDEA-23537 (Performance Problem): Semi-exclude folders: not excluded to read and for source control (subversion, git, ...), but excluded for refactors and search
  • SASS:
  • WEB-13075 (Feature): Sass 3.4 support
  • WEB-13109 (Bug): SCSS "Misplaced CSS @import"
  • Task Management:
  • IDEA-128553 (Bug): Create branch from new task dialogue not working
  • Unit Tests:
  • WEB-13127 (Bug): Environment variables in mocha run configuration change order creating file churn
  • User Interface:
  • IDEA-126228 (Feature): Show TODO comments in all open files
  • IDEA-129105 (Cosmetics): Path is not visible when moving library that already exists
  • CPP-560 (Task): New Welcome Screen for CLion
  • IDEA-128012 (Bug): New Project Wizard Groovy Facet - all items not properly dithered out
  • IDEA-128269 (Bug): Encodings list opens out of monitor's edge
  • IDEA-115396 (Bug): Ubuntu : IntelliJ launch causes a crash
  • IDEA-100941 (Bug): Triple Ctrl+Q doesn't work
  • IDEA-128828 (Bug): Reload project dialog is about twice longer than my screen width
  • IDEA-30564 (Bug): No HTTP proxy host name validation
  • Version Control:
  • IDEA-101657 (Usability Problem): Commit changes window doesn't save Comment on Edit Source
  • Version Control. Perforce:
  • IDEA-128463 (Bug): Perforce sometimes asks for password when using .p4config with P4PASSWD set

New in PhpStorm 8.0 Build 138.1505 EAP (Aug 7, 2014)

  • HIGHLIGHTS:
  • Blade template complete support. Highlighting, completion, navigation, find usages, inspections, folding, custom directives and more
  • Generated PHPDoc class name style option: Settings | Code Style | PHP | PHPDoc | Generated Doc Blocks | Use fully-qualified class names
  • ANSI sequences support in the output of run/debugged PHP Script
  • Drupal comments completion (template is available for editing in Settings | File Templates | Includes | Drupal Hook Implementation Doc Comment)
  • ClassName::class completion
  • BUG FIXES:
  • PHP Completion:
  • WI-24233 (Feature): Add stubs for inotify extension constants and functions
  • WI-9282 (Feature): PHPDoc generation - namespace style
  • WI-19037 (Feature): Completion for class name resolution via "class" keyword doesn't work
  • PHP Composer:
  • WI-18369 (Feature): Composer - add dependencies only supports 'require' section
  • WI-20483 (Usability Problem): Allow to select PHP executable during creation of new project
  • PHP Formatter:
  • WI-24051 (Feature): Preserve comment at the end of block
  • PHP Inspections:
  • WI-24057 (Feature): Provide quick fix "Undefined const" and "Undefined function"
  • WI-23512 (Bug): Method __toString is not implemente: False Positive: doesn't find declaration of __toString in interface
  • WI-24234 (Bug): use of date_add function leads to void result use warning
  • WI-20197 (Bug): "Method __toString return type" inspection doesn't work for static and $this type
  • WI-23867 (Bug): "Unused local variable" when it is used in the `finally` block
  • WI-22735 (Bug): False-positive "Unused private method" notice for private method in trait that is used by another trait
  • PHP Refactoring:
  • WI-24056 (Feature): Provide "Simplify FQN" and "Import" intentions for constants/functions
  • WI-22275 (Feature): Replace If/ternary: change Support short ternary operator
  • WI-23104 (Usability Problem): Convert NOWDOC/HEREDOC: allow to apply intention on any string
  • WI-24302 (Bug): Move namespace refactoring creates invalid use’s for core types
  • WI-22283 (Bug): Simplify if: may remove not php code from if/else statement
  • WI-23963 (Bug): Change signature: doesn't support variadics
  • WI-23585 (Exception): Move a class to its own file in the same namespace
  • PHP debug:
  • WI-23924 (Feature): Validate remote environment: add debugger protocol validation
  • WI-24183 (Feature): Validation option for PHPUnit path
  • WI-22656 (Usability Problem): Make error notification about not-installed debug extension more clear
  • PHP lang:
  • WI-15958 (Feature): Type inference: extend type inference of already inferred variables
  • WI-18250 (Bug): Navigate to implementation does not work with namespaces
  • PHP lib stubs:
  • WI-23595 (Feature): php-redis stub needs to be updated
  • WI-24308 (Bug): Missing exception documentation for Phar constructor.
  • WI-10748 (Bug): Memcache Stubs missing all PHPDOC metadata...
  • WI-24239 (Bug): Wrong date function params description
  • PHP templates:
  • WI-24096 (Usability Problem): Blade: Allow to configure custom directive such that there will be no parenthesis after completion
  • WI-24082 (Usability Problem): Blade: place closing quoute inside directives
  • WI-24089 (Exception): Blade: attempt to comment code leads to exception
  • PHP test:
  • WI-18388 (Usability Problem): PHPUnit Settings: consider renaming "Use custom loader" option to "Use custom autoloader"
  • WI-24281 (Bug): PHPStorm does not load phpunit.phar from remote interpreter
  • WI-20787 (Bug): Behat step navigation does not always match regular expressions of available steps correctly
  • Plugin: Deployment _ FTP..:
  • WI-20127 (Feature): Performing "Upload" action on the fragment editor should trigger on the parent document
  • WI-24244 (Usability Problem): Settings / Deployment: Add Server dialog: Up/Down keys in Name could change value in Kind
  • WI-22720 (Usability Problem): Suppress SSH Banner
  • WI-24330 (Bug): Icons lost in Settings | Deployment | Servers | Excluded paths
  • Plugin: Drupal support:
  • WI-19183 (Feature): Auto complete comments
  • Plugin: Phing:
  • WI-21477 (Bug): Relax constrains on tags that accept references
  • Plugin: WordPress:
  • WI-23815 (Feature): Change "Search on WordPress.org" context menu action to a new search engine
  • No subsystem:
  • IDEA-73722 (Feature): List of plugins is not loaded on slow internet connection
  • WEB-12221 (Feature): Enable Yandex browser support out of box
  • IDEA-127205 (Feature): Specify Editor Tab Width
  • IDEA-127557 (Usability Problem): Maybe it makes sense to use same edit icon (pen), as in the other pages?
  • IDEA-127010 (Usability Problem): Source roots detected in zip file are not sorted alphabetically
  • IDEA-128236 (Usability Problem): codeStyleSettings.xml is always modified (after 22.07)
  • WEB-11128 (Usability Problem): "Open in browser" command is disabled for XML files
  • WI-24285 (Bug): Some junk is shown in method signature popup return type
  • IDEA-102151 (Bug): Major: The restarter doesn't work with the Windows 8 permission system.
  • IDEA-84858 (Bug): Edit breakpoints popup: inspection tooltip for the condition is shown under the popup
  • IDEA-127645 (Bug): Open in browser not working
  • IDEA-127636 (Bug): Show History command missing in "Enter Action or option name:" action
  • IDEA-127731 (Bug): Cannot create a class in a package that has another package as it's only content
  • IDEA-127942 (Bug): 50 sec hang during find usages
  • IDEA-127723 (Bug): Intelligent backspace before continuation indent erases all white space
  • IDEA-127778 (Bug): IDEA + Python plugin doesn't start - NCDFE: JSLanguageDialect; Python plugin has cyclic dependencies
  • IDEA-123206 (Bug): Module source sub folder not being included as source
  • IDEA-122811 (Bug): Add caret below, add caret above creates duplicates when carets are at different positions.
  • IDEA-128041 (Bug): Error applying patch and subsequent error opening Intellij
  • WEB-12810 (Bug): Inline comments in Javascript break indentation
  • CSS:
  • WEB-262 (Feature): CSS Code Formatting: Keep blank lines option
  • WEB-12761 (Bug): False positive: CSS properties marked as invalid in jQuery selector
  • WEB-12693 (Bug): Incremental reparse failing
  • Code Formatting and Code Style:
  • IDEA-126481 (Bug): Code Style | Arrangement: if there is only 'section start' rule, extra section text is inserted on rearrangement
  • Database:
  • IDEA-69159 (Bug): Map help button of the Find Usages dialog in the Data sources tool window
  • Debugger:
  • IDEA-97772 (Feature): Make Watch Window visible when adding an expression to watches
  • WEB-9761 (Usability Problem): When debugging JS/Html and using PushStates, do not open new tabs
  • WEB-11049 (Task): Chrome insists to download javascript source map files, despite disabled setting, when started from IntelliJ IDEA
  • WEB-11172 (Bug): Page is not loaded when running in debugger (Chrome)
  • IDEA-110535 (Bug): Breakpoints dialog: Weird bold and small 'breakpoint xxx enabled' labels in the dialog
  • IDEA-97289 (Bug): Breakpoints dialog: when "depends on" property is defined for a breakpoint, the checkbox for this breakpoint in the breakpoint tree must not be cleared
  • WEB-12371 (Bug): Node-webkit: Debug doesn't work
  • IDEA-88643 (Bug): delete item from list of breakpoints by pressing delete key: selection should not return to position 1.
  • IDEA-127872 (Bug): Condition checkbox doesn't remember its state (breakpoint config)
  • IDEA-128212 (Bug): Alt+Click shows two popups
  • Diff_Merge:
  • IDEA-54491 (Usability Problem): Apply button in merge silently discards non-conflicted changes
  • IDEA-127730 (Bug): Stripe marker from long insertion/modification is not repainted correctly after change revert
  • IDEA-71036 (Bug): In Diff/Merge dialogs Copy and Find buttons are always disabled
  • IDEA-107292 (Bug): "Compare with Clipboard" in run output lets you modify output in diff window
  • IDEA-125372 (Exception): Diff: Show source from command line: NPE at com.intellij.openapi.diff.ex.DiffPanelOptions$ShowSourcePolicy$2.showSource
  • Distribution packages:
  • WI-17783 (Bug): PhpStorm.bat uses unexistent file PhpStorm64.vmoptions if JVM has lib\amd64 directory
  • Editor. Code Completion:
  • IDEA-127406 (Feature): charset name completion: provide completion for a few more APIs
  • IDEA-127958 (Bug): Deadlock in completion
  • Editor. Editing Text:
  • IDEA-123396 (Feature): Multiple carets: offer completion from last caret w/ completion available
  • IDEA-127902 (Usability Problem): Alt-J selects wrong word if quick find is showing
  • IDEA-62908 (Usability Problem): Cursor up/down movement jumpy for non-monospaced fonts
  • IDEA-127695 (Bug): Formatting is breaking on typing
  • IDEA-127198 (Bug): New smart backspace feature is not good for deletion of blank line before
  • IDEA-125021 (Bug): Multi-cursor paste doesn't work
  • Find, Replace, Find Usages:
  • IDEA-127419 (Usability Problem): Exclude .idea/workspace.xml from search results for 'Find in Path'
  • IDEA-119761 (Bug): Replace in Path has nonsensical "Skip results tab with one usage" checkbox
  • IDEA-123559 (Bug): "Find in path" searches in .idea, the folder is not added to the project
  • IDEA-128195 (Bug): Find In Path: 'except comments' context is not remembered on dialog re-invocation
  • HTML:
  • WEB-6584 (Feature): Files opened by URL should also be able to open scripts used in the file
  • WEB-12873 (Exception): Emmet Preview: Throwable when "Trim line markers" filter is on
  • IDE Configuration:
  • IDEA-122229 (Bug): Unable to change path to browser
  • Java. Error Highlighting:
  • IDEA-127317 (Bug): Files with errors, excluded from compilation, are not marked in project tree.
  • LESS:
  • WEB-12763 (Cosmetics): LESS: wrong coloring on nested CSS attribute selectors
  • Node.js:
  • WEB-12794 (Bug): "Evaluate Expression" doesn't show array content
  • Packaging and Installation:
  • IDEA-125984 (Bug): restarter process changes its name each time it runs
  • IDEA-120854 (Bug): Intellij patch update from 13.01 to 13.02 does not work
  • Project Configuration:
  • IDEA-127740 (Bug): Grails global library is not created when added via new module wizard
  • Run | Debug configuration:
  • IDEA-127248 (Usability Problem): Before launch > Run another configuration - allow selecting with double click
  • SASS:
  • WEB-12909 (Usability Problem): Add color preview box in the left gutter for variable resolved only by name
  • WEB-12845 (Bug): SASS: text nested beneath block comment not treated as comment if it's separated by empty line
  • WEB-12881 (Bug): s syntax highlighting error when using @keyframes
  • Structural Search and Replace:
  • IDEA-128110 (Bug): Structural Search: NPE at com.intellij.structuralsearch.impl.matcher.CompiledPattern.isRealTypedVar
  • Stylus:
  • WEB-9166 (Bug): Stylus: Red code: support charset at-rule
  • Terminal:
  • IDEA-117488 (Feature): Add the ability to clear terminal output
  • IDEA-127442 (Performance Problem): Significant CPU load due to IDEA's Terminal
  • IDEA-125398 (Exception): Terminal: CME at com.jediterm.terminal.model.TerminalLine.toBuf
  • User Interface:
  • IDEA-127880 (Feature): Inspections UI: filter to show "cleanup inspections"
  • IDEA-128178 (Usability Problem): Tab title limit: truncation could be improved
  • IDEA-128179 (Usability Problem): Tab title limit: truncation in case of "directory name\file name" tile could be improved
  • IDEA-127808 (Usability Problem): 'Rename File' isn't shown in 'Find Action' popup
  • IDEA-127882 (Usability Problem): Inspections UI: selected inspection is not visible
  • IDEA-127877 (Usability Problem): Inspections UI: add description on multiple inspections selection
  • IDEA-127883 (Cosmetics): Inspections UI: "Nothing to show" message -> No enabled inspections available
  • IDEA-127672 (Task): Settings: add "Current Project" icon to panel header
  • IDEA-127985 (Bug): Inspections UI: when inspections group is checked/unchecked, checkboxes of inspections under that group don't change their state until pressing Apply or hovering
  • IDEA-127876 (Bug): Remove "Non-Project Files" scope from inspections configuration settings
  • IDEA-124630 (Bug): Breakpoint indicators not visible
  • IDEA-127001 (Bug): Empty IDE window (awesome WM)
  • IDEA-127930 (Bug): IDE doesn't repaint if close last editor
  • IDEA-127954 (Bug): Inspections UI: can edit a disabled inspection after reopening Settings dialog
  • IDEA-127951 (Bug): Inspections UI: space key to check an inspection doesn't work
  • IDEA-87163 (Bug): Unsplit wont close the 'splitted' windows
  • IDEA-127806 (Exception): External class reference answer as NullPointerException
  • Vagrant:
  • PY-12123 (Performance Problem): Vagrant: UI is locked for a noticable amout of time when running Vagrant Init
  • Version Control. Git:
  • IDEA-80300 (Feature): Add git reset to log View
  • IDEA-127343 (Bug): Git Checkout - Test repository "hangs" when master password is required
  • Version Control. Subversion:
  • IDEA-118403 (Bug): Subversion: new unversioned file inside unversioned folder gets correct status after explicit refresh only
  • IDEA-127736 (Exception): IOOBE at org.jetbrains.idea.svn.config.SvnConfigureProxiesDialog.onError
  • XML:
  • IDEA-126930 (Bug): Schemas & DTDs - External & Ignored Changes Not Saved

New in PhpStorm 8.0 Build 138.1289 EAP (Jul 24, 2014)

  • Improved relative include resolution (path ‘..’ not found)
  • Improved various action invocation on injections
  • Surround With intention can be now invoked on the field
  • Debugging support for Behat and various Behat-related enhancements
  • Force Braces now correctly adds braces on alternative syntax
  • Stubs updated for various extensions and upcoming PHP 5.6
  • Many bug fixes and improvements.

New in PhpStorm 8.0 Build 138.1161 EAP (Jul 16, 2014)

  • PHP Formatter:
  • WI-374 (Feature) PHP: add wrapping for comments on code reformatting
  • WI-23895 (Performance Problem) Force braces in If statement is extremely slow
  • WI-23894 (Bug) Force short declaration style destroys code if there is array inside array
  • WI-21255 (Bug) "Convert true/false constants to lowercase" and "Convert null constant to lowercase" does not work for style statements when nested inside tags or indented
  • WI-5739 (Bug) PHP formatter: "Brace placement at the end of line" option doesn't affect case blocks in switch statements
  • PHP Inspections:
  • WI-24018 (Bug) Casting array to object should satisfy \stdClass type
  • PHP lang:
  • WI-23734 (Feature) "Add PHPDoc comment" intention should allow to use @type, not @var
  • WI-22263 (Feature) Support for PHP 5.6 language features
  • WI-23958 (Bug) Multiple import of constants and functions are not supported
  • WI-23896 (Bug) Only variables can be passed by reference: false positive: when there is variadic and array
  • WI-23951 (Bug) Variadic parameter cannot have a default value
  • WI-23954 (Bug) Imported functions and constants are not recognized
  • WI-23900 (Bug) Expression is not allowed as constant value: false positive: parenthesis cause error although they are valid
  • WI-23903 (Bug) Cannot use positional argument after argument unpacking is not detected
  • WI-23905 (Bug) False positive: Expressions are not allowed in static variable declaration
  • WI-23952 (Bug) Only last parameter can be variadic
  • WI-17801 (Bug) Fluent-style chaining type loss with return this/static
  • WI-23961 (Bug) Disable intention "Replace ?: with if" for default values in function parameter, fields, static variables and constants declaration
  • WI-17666 (Bug) PHPStorm does not recognize 'new static' and loses type
  • PHP lib stubs:
  • WI-23939 (Bug) Documentation Missing: DateTimeImmutable::createFromMutable
  • WI-10748 (Bug) Memcache Stubs missing all PHPDOC metadata...
  • PHP test:
  • WI-23315 (Feature) Behat: Search for all classes in project that extends BehatContext (for 2.) or implements Context (for 3.) to find step definitions
  • WI-23475 (Bug) Behat: more then one pattern is not recognized
  • No subsystem:
  • IDEA-126167 (Feature) External Project System: test framework
  • IDEA-81781 (Usability Problem) Unintuitive 'Project Files Changed' message box
  • IDEA-87408 (Bug) Hold button and select multiple lines vertically does not work as desired
  • IDEA-127062 (Bug) Bug when closing splitted editors
  • IDEA-126889 (Bug) Can't jarjar cglib as part of idea.jar
  • IDEA-126788 (Bug) conflicting foldings
  • IDEA-126406 (Bug) Switcher is missing files after reopening project
  • CSS:
  • WEB-4713 (Feature) CSS: provide completion for media features in media queries
  • Code Formatting and Code Style:
  • IDEA-93948 (Usability Problem) Code Style->XML->Other: no preview text for CDATA
  • IDEA-126830 (Bug) Reformat Code: Scope and File Mask filters are ignored if "Rearrange Entries" option is enabled
  • Code Navigation:
  • IDEA-108057 (Bug) Caret position is messed up on navigation if editor tabs are off
  • IDEA-119877 (Bug) New File search popup does not give priority to names containing the exact term
  • CoffeeScript:
  • WEB-11861 (Bug) Wrong "expected end of line" inspection for CoffeeScript
  • Dart:
  • WEB-12582 (Bug) [Dart] Serve .dart file with the right MIME type
  • Debugger:
  • WEB-12641 (Bug) Typo in IDEA internal Web Server 404 page
  • IDEA-126829 (Bug) Debbuger - quick evaluate expression is always collapsed
  • IDEA-88643 (Bug) delete item from list of breakpoints by pressing delete key: selection should not return to position 1.
  • Documentation:
  • IDEA-127042 (Bug) Create tip of the day for quick evaluate
  • Editor. Code Completion:
  • IDEA-127127 (Feature) charset name completion: provide completion for more APIs
  • IDEA-126726 (Bug) "Complete current statement" always adds a newline
  • IDEA-120465 (Bug) Code completion: no Autopopup code completion and inserting pair brackets if Column selection mode is on
  • Editor. Editing Text:
  • IDEA-125021 (Bug) Multi-cursor paste doesn't work
  • IDEA-127189 (Bug) Select next/all ocurrence fails with braces
  • IDEA-124928 (Bug) If two cursors are on the same line, Cmd+Y will delete extra line
  • IDEA-123704 (Bug) Multiple carets fail through injections in some scenarios
  • IDEA-122513 (Bug) Can't expand single character property in Spring config
  • IDEA-126869 (Bug) Code pasted from IDEA into Mac Mail plain-text message is corrupted
  • HTML:
  • WEB-12614 (Feature) Emmet Filters
  • WEB-12677 (Task) Emmet: do not expand too long abbreviations
  • WEB-12223 (Bug) Emmet Preview cannot be invoked before closing tag
  • Indices:
  • IDEA-74104 (Performance Problem) PlainTextTodoIndexer.map() can be very slow
  • IDEA-125200 (Bug) IDE freezes at startup for large project (focus loss save waiting on indexing?)
  • JavaScript:
  • WEB-12618 (Feature) No file extension in autocompletion when require file
  • WEB-12538 (Bug) jsDoc - @returns
  • JavaScript. Debugger:
  • IDEA-125913 (Bug) IDE erroneously propose to create JavaScript Debug Configuration from context menu of database function editor
  • JavaScript. Formatter:
  • WEB-9528 (Feature) Feature : JavaScript styling - can not add space after "[" in arrays or after "{" in objects.
  • JavaScript. Frameworks:
  • WEB-12635 (Bug) IllegalArgumentException on indexing coffeescript with interpolation
  • JavaScript. Inspections:
  • WEB-12585 (Bug) curly brace insertion for if statements
  • JavaScript. Refactoring:
  • WEB-12601 (Feature) Configurable default for declare functional expression
  • LESS:
  • WEB-12647 (Bug) LESS: good code is red: simple mixin with braces
  • WEB-12251 (Bug) Less: highlighting property names inside detached rulesets
  • WEB-12689 (Bug) Failure to find LESS mixin
  • Live Edit:
  • WEB-12711 (Feature) livedit: support JSX (at least "reload in browser")
  • WEB-9954 (Usability Problem) move and rename confusing "Live Edit menu item
  • User Interface:
  • IDEA-60285 (Usability Problem) Editor->Auto Import: duplicated keyboard shortcut for "Show Import Popup"
  • IDEA-103935 (Usability Problem) Preferences search field should be in focus
  • IDEA-122894 (Usability Problem) License dialog: License key: provide precise diagnostic for rejected key
  • IDEA-127144 (Usability Problem) No word wrap or horizontal scrolling for ignore list in Proxy dialog
  • IDEA-126733 (Usability Problem) Search Everywhere: element is found, but not focused
  • IDEA-112613 (Usability Problem) "GoTo Action" usability
  • IDEA-107376 (Usability Problem) Goto next / previous splitter not working when show tabs are set to none
  • IDEA-126947 (Cosmetics) Generalize "Goto Related File" to "Goto Related Symbol"
  • IDEA-126843 (Bug) Background task window gets smaller
  • IDEA-79083 (Bug) Popup lists are sometimes not clickable
  • IDEA-75885 (Bug) Fast invoking shortcut with Alt brings focus to main menu [Windows]
  • Version Control:
  • IDEA-124545 (Usability Problem) Tab doesn't work in Vcs Log
  • IDEA-125257 (Usability Problem) Do not jump to the end of log by pressing 'Up' at the first line
  • IDEA-103025 (Bug) Commit dialog - commit window without proper word wrap
  • Version Control. Git:
  • IDEA-124336 (Feature) Show 'Common Local Branches' even if current ones is not common
  • IDEA-119824 (Usability Problem) Git: show descriptive error message if 'author' field is incorrect
  • IDEA-91620 (Usability Problem) Git commit author's abbreviated email stays abbreviated after selection.
  • IDEA-55256 (Usability Problem) Git: More user-friendly author field in "Commit Dialog"
  • IDEA-114493 (Cosmetics) Git: Branches popup has unnecessary hotkeys indicators
  • IDEA-91640 (Bug) You can't type valid '/' symbol as a filter when navigate between Git branches (Ctr+Shift+A, Branches)
  • IDEA-75228 (Bug) Git: specifying author sometimes fails
  • IDEA-121825 (Bug) Git: author name selected from drop-down is applied incorrectly in some cases
  • IDEA-119088 (Bug) 'Compare branches' dialog is always on top
  • Version Control. Mercurial:
  • IDEA-127069 (Bug) Add help button to the Update Project dialog (Mercurial)

New in PhpStorm 8.0 Build 138.940 EAP (Jul 3, 2014)

  • Injections in PHP:
  • WI-23782 (Bug) - Copy code from fragment editor gets EXTERNAL_FRAGMENT instead of visible code when there is string concatenation
  • PHP Formatter:
  • WI-12831 (Feature) - Convert long to short array stax
  • PHP Refactoring:
  • WI-21550 (Bug) - Move Namespace: does allow to enter different destination folders for one file but doesn't divide file to two
  • WI-20934 (Bug) - Change signature refactoring handles @inheritdoc incorrectly
  • WI-19449 (Bug) - Renaming class member does not update docblock
  • PHP lang:
  • WI-22261 (Feature) - Support variadic function arguments and argument unpacking from PHP 5.6
  • PHP lib stubs:
  • WI-23872 (Bug) - SplDoublyLinkedList::add() is not defined
  • No subsystem:
  • IDEA-126721 (Performance Problem) - PhpStorm frozen on typing
  • IDEA-126564 (Cosmetics) - "No SDK Specified" message box text fixes
  • AspectJ:
  • IDEA-126717 (Bug) - Aspect-J compilation broken in 13.1.4 EAP and 14 EAP
  • CSS:
  • WEB-12605 (Usability Problem) - CSS/SASS: don't invoke auto-completion on Enter
  • Clouds.Heroku:
  • IDEA-126517 (Bug) - Heroku: confusing behavior on attempt to deploy when there are no changes in the active changelist
  • CoffeeScript:
  • WEB-12518 (Exception) - CoffeeScript: SIOOBE on Extract Method
  • Debugger:
  • IDEA-73140 (Usability Problem) - XDebugger: Debugger always switches you to "Debugger" tab when first breakpoint is hit
  • IDEA-126585 (Bug) - "Evaluate Code Fragment" dialog uses some strange proportional font in editor
  • IDEA-93683 (Bug) - XDebugger: Focus on startup doesn't work for Console tab
  • Editor. Editing Text:
  • IDEA-126273 (Performance Problem) - Selection of text using keyboard in column mode is slow
  • IDEA-126800 (Bug) - Select all ocurrences failing
  • IDEA-121056 (Exception) - Throwable at com.intellij.openapi.editor.impl.CaretImpl.moveToLogicalPosition
  • File Watchers:
  • WEB-12598 (Bug) - File Watchers: Immediate synchronization doesn't work in case of syntax errors even if 'trigger watcher regardless of syntax errors' is enabled
  • HTML:
  • WEB-12578 (Cosmetics) - Template is showing html5, but new file creation says Html
  • IDE Configuration:
  • IDEA-126131 (Usability Problem) - Duplicate entries in "Find Action" popup (Ctrl+Shift+A)
  • IDEA-126797 (Bug) - Plugin manager: no tooltip for "red" plugins
  • JSP:
  • IDEA-126465 (Bug) - Jsp TLD 'tag' 'variable' children 'name-give' | 'name-from-attribute'
  • JavaScript:
  • WEB-12491 (Bug) - OOM on indexing of project
  • WEB-12119 (Bug) - JSX (and E4X) support in ECMAScript6 mode
  • SQL:
  • IDEA-119108 (Bug) - MySQL: ambiguous column inside group by clause
  • TypeScript:
  • WEB-12426 (Bug) - Typescript formatter doesn't respect disabled "Line comment at first comment"
  • User Interface:
  • IDEA-126503 (Usability Problem) - Copy reference not working on multiple files
  • IDEA-124630 (Bug) - Breakpoint indicators not visible
  • IDEA-126752 (Bug) - Editor tooltips hide each other
  • IDEA-126534 (Bug) - PyCharm shows wrong icon (community edition instead of pro version)
  • Vagrant:
  • PY-13403 (Exception) - Remote Interpreters: Unable to add it to phpUnit
  • Version Control. Git:
  • IDEA-87092 (Bug) - Git unstash don't show files that are going to be overwrtten.
  • IDEA-81935 (Bug) - IDEA warns about changes in files that would be overwritten by merge, but the list is empty
  • IDEA-90058 (Bug) - Untracked files would be overwritten by merge shows no files
  • IDEA-87853 (Bug) - Error when merging or pulling and hidden files would be overwritten
  • IDEA-90059 (Exception) - Exception when trying to open shelved changes from 'Local changes were not restored' the notification
  • Version Control. Perforce:
  • IDEA-47500 (Bug) - Perforce: Jobs processing: cannot add multiple jobs found by search
  • IDEA-122107 (Bug) - Perforce +w (always writeable on client) files are flagged as "Modified without checkout"
  • IDEA-126771 (Bug) - Perforce: work with allwrite workspaces

New in PhpStorm 8.0 Build 138.826 EAP (Jun 30, 2014)

  • Injections in PHP:
  • WI-23724 (Feature) - Run query in console: detect any external fragment in multihost injection as query parameter
  • WI-23782 (Bug) - Copy code from fragment editor gets EXTERNAL_FRAGMENT instead of visible code when there is string concatenation
  • WI-23723 (Bug) - Copy code from fragment editor gets EXTERNAL_FRAGMENT instead of visible code with multihost injections
  • WI-23722 (Bug) - "Run Query in console" sends EXTERNAL_FRAGMENT to console in multiihost injections
  • WI-23707 (Exception) - New multihost injections break and throw exceptions on literal fragment of 1 quote char
  • PHP Formatter:
  • WI-23752 (Usability Problem) - Useless wrapping of use statement
  • WI-23688 (Usability Problem) - space around pre increment/decrement operators
  • WI-17096 (Bug) -
  • WI-23714 (Bug) - Reformat breaks heredocs
  • PHP debug:
  • WI-23702 (Bug) - Freeze on startup when remote interpreter is not available
  • PHP lang:
  • WI-23643 (Bug) - PHPDoc: respect imported namespace for properties
  • WI-17077 (Bug) - Folding: There is no ability to fold whole class
  • No subsystem:
  • WEB-11542 (Feature) - File/Open URL: provide a way to post 'User-Agent' header
  • WEB-12438 (Feature) - The documentation popup should show types as hyperlinks if possible
  • IDEA-96277 (Usability Problem) - Indexing large directories after making them excluded
  • WEB-12498 (Usability Problem) - Inspect in WebStorm missing from Chromium context menu
  • IDEA-126211 (Bug) - The Power Save mode action should explain what it does
  • WEB-12437 (Bug) - Unexpected code completion in comment blocks w/ Node.js plugin
  • DBE-232 (Bug) - Reformat of 'identity' is incosistent with 'default'
  • IDEA-126185 (Bug) - Cannot register multiple reference providers for one name (case insensitive)
  • IDEA-126353 (Bug) - IntelliJ IDEA won't open - missing libgif.so.6
  • DBE-50 (Bug) - Error in "Data Sources and Drivers"
  • DBE-171 (Bug) - Autocompletion creates invalid SQL
  • IDEA-126494 (Bug) - BaseAnaysisAction doesn't respect excluded directories during traversal
  • IDEA-125863 (Bug) - Folding: inline parameter names for literal call arguments
  • IDEA-126559 (Bug) - Symbol search in search everywhere
  • IDEA-116527 (Bug) - Problems under Linux with the menus (awesome wm 3.5)
  • DBE-243 (Bug) - Weird indenting while typing query
  • DBE-67 (Bug) - IllegalArgumentException when selecting GTK+ as UI theme
  • DBE-141 (Bug) - Code completion: no 'LIKE' option appears
  • DBE-225 (Bug) - Autocomplete should show suggestions without typing the first letter
  • CSS:
  • WEB-12416 (Feature) - autopopup completion for property value
  • WEB-12542 (Bug) - CSS code completion inside @media
  • Clouds.Git:
  • IDEA-126161 (Usability Problem) - Git Clouds: Customize git commit dialog for deployment use case
  • Code Analysis. Inspection:
  • IDEA-120098 (Feature) - Provide a possibility to suppress inspection from the injection host
  • CoffeeScript:
  • WEB-6497 (Bug) - Extract method results in bad JS code
  • WEB-12387 (Bug) - CoffeeScript: formatting breaks object declaration
  • WEB-12375 (Bug) - CoffeeScript preview fails if file contains '//' (v3.4)
  • WEB-12517 (Bug) - CoffeeScript: Refactor: Extract method: invalid result for expression with if
  • DB.Introspection:
  • DBE-362 (Bug) - Procedure Editor - Nothing to DROP. DROP IF EXISTS.
  • Database:
  • IDEA-123235 (Bug) - XML-type gives NPE in Database-view
  • IDEA-126139 (Bug) - Database Tool Window: add foreign key to column via context menu works incorrectly
  • IDEA-126245 (Bug) - Master Password: IllegalState exception while creating a new data source if master password was not set
  • Debugger:
  • WEB-12482 (Bug) - Debugger: sourcemaps don't work when debugging concatenated files
  • IDEA-126521 (Bug) - Debugger: "Add To Watches" action is always disabled in the Variables view
  • IDEA-126132 (Bug) - Detail window in debugger/watches has backgound color that obscures displayed text. Cannot be changed in preferences??
  • Diff_Merge:
  • IDEA-95430 (Bug) - Colored bar for changes in the editor is sometimes wrong
  • IDEA-118700 (Bug) - Selecting text in Commit Changes window does not highlight the text properly
  • IDEA-103824 (Bug) - Gutter change markers behave strangely in certain conditions
  • IDEA-113317 (Bug) - Text editor in compare view is inconsistent with the main editor
  • IDEA-97563 (Bug) - Diff for Range missing last character in "Current" panel
  • IDEA-89365 (Bug) - The color disappears from the changes in the Details view of the commit dialog
  • File System:
  • IDEA-126213 (Bug) - Idea build 135.909: file refresh using hot key does not close notification ribbon
  • File Watchers:
  • WEB-12541 (Bug) - File watchers, SASS: main file not compiled when editing indirectly imported partials
  • Find, Replace, Find Usages:
  • IDEA-126598 (Bug) - Find in open files does not find occurences in files outside of project
  • IDE:
  • PY-13286 (Usability Problem) - Create New Project: missing arrow button in more settings
  • IDE Configuration:
  • IDEA-126131 (Usability Problem) - Duplicate entries in "Find Action" popup (Ctrl+Shift+A)
  • Indices:
  • IDEA-115651 (Usability Problem) - Unable to stop accidental indexing files
  • JavaScript:
  • WEB-12279 (Feature) - JSDoc: support for type aliases
  • WEB-12274 (Usability Problem) - "Quick-Documentation" Action should include type information
  • Live Edit:
  • WEB-12312 (Bug) - "Live Edit" JavaScript doesn't works
  • Packaging and Installation:
  • IDEA-126514 (Bug) - AppCode restart fails: bundle not found
  • Project Configuration:
  • IDEA-100632 (Bug) - Project Structure: when a library is moved from Project Libraries to Global Libraries or vice versa, dependencies on that library get default Scope and Exported values
  • SASS:
  • WEB-11929 (Bug) - SCSS: ''(' expected' error reported for interpolation in @media query
  • SQL:
  • IDEA-126191 (Feature) - SQL formatter: allow keeping SELECT and single field in single line
  • IDEA-126017 (Feature) - SQL: completion for varchar2
  • IDEA-126335 (Task) - Oracle: Join support for xmltable
  • IDEA-126072 (Bug) - SQL: Oracle: user defined types are not resolved
  • IDEA-126280 (Bug) - SQL: Oracle: xmltable should be supported
  • IDEA-126071 (Bug) - SQL: Oracle: member of should support expressions
  • IDEA-126533 (Bug) - SQL: Code Style: "Word Case / Keyword = Do not change" is ignored by completion
  • IDEA-120308 (Bug) - SQL code style: wrapping for definitions inside create table statement
  • IDEA-114092 (Bug) - Good PL/SQL code marked red
  • IDEA-120537 (Bug) - SQL Auto-Indent (Part II)
  • IDEA-126445 (Exception) - SQL code style: new format of "New line before / Select items" cause losing of user formatting settings
  • SQL.Highlighting:
  • DBE-379 (Bug) - postgres cursor syntax error checker
  • DBE-369 (Bug) - SQL: keyword completion inconsistency
  • DBE-244 (Bug) - Different Mistakes in code analysis for Transact SQL (SQL Server)
  • User Interface:
  • IDEA-114769 (Feature) - Open/Save dialog - add quick button for selecting the desktop
  • IDEA-126355 (Cosmetics) - IntelliJ LaF: different sizes of browse buttons
  • IDEA-126614 (Bug) - Command+Shift+Up/Down changes size of Goto Class/File/Symbol popups
  • Vagrant:
  • PY-13283 (Bug) - PyCharm vagrant up exception
  • PY-13172 (Exception) - Vagrant: ISE at com.jetbrains.python.remote.PyRemoteSdkAdditionalData.getRemoteSdkCredentials: on cancel run instance dialog
  • Version Control:
  • IDEA-126172 (Bug) - Browse changes takes into account "after date" even with deselected checkbox
  • IDEA-122530 (Bug) - Deadlock in com.intellij.openapi.vcs.impl.projectlevelman.AllVcses.getByName()
  • Version Control. CVS:
  • IDEA-19006 (Usability Problem) - CVS: Browse Changes doesn't remember prior settings
  • Version Control. Git:
  • IDEA-123859 (Bug) - Checkout confirmation dialog issues
  • IDEA-126332 (Exception) - Git: IAE at sun.reflect.NativeMethodAccessorImpl.invoke0
  • Version Control. Mercurial:
  • IDEA-126346 (Bug) - Mercurial: after attempt to perform partial merge commit Changes view is not updated properly

New in PhpStorm 8.0 Build 138.567 EAP (Jun 12, 2014)

  • HIGHLIGHTS:
  • Language injection in PHP literal was completely rewritten and now supports complex expressions, including possibility to substitute dynamic parts with sensible values. Please do try again “Edit … Fragment” functionality.
  • Language injection support for Smarty literals
  • PHP formatter improvements
  • PHPDoc inspection will look into empty PHPDocs and offer update
  • Code Style | Spaces option for new empty ternary function ($var ?: false)
  • Ctrl+click resolves callable method names when using Class_Name::class
  • BUG FIXES AND IMPROVEMENTS:
  • Injections in PHP:
  • WI-534 (Feature) - Add support for Language Injection into PHP concatenated strings ('injected_language'.foo().'injected_language')
  • WI-15837 (Bug) - Choose Color dialog replaces heredoc with embedded array variable key
  • WI-7967 (Bug) - Language injection for concatenated strings with functions
  • WI-13319 (Bug) - Edit corrupts PHP variables
  • WI-23628 (Bug) - NPE is thrown on typing concatenation operator after injected string
  • WI-14299 (Bug) - "Run Query in console" transforms special characters with underscores
  • WI-2450 (Bug) - Language injection into PHP literals: variables escaping vs target language
  • WI-23634 (Exception) - NPE is thrown on insertion of one pattern matched injected language into concatenated string with another injection language
  • PHP Formatter:
  • WI-22136 (Bug) - Indentation in declare ticks block
  • WI-12562 (Bug) - Indentation inside isset()
  • WI-20319 (Bug) - No indent for array initialization and binary expression
  • WI-23086 (Bug) - unset() doesn't follow rules for functions
  • WI-22432 (Bug) - Reformat Code corrupts text in string literals when Function call arguments->New line after '(' ' is enabled
  • WI-22383 (Bug) - Incorrect positioning of the cursor on new line
  • PHP Inspections:
  • WI-23561 (Bug) - "Update PHPDoc comment" inspection for empty PHPDoc
  • PHP debug:
  • WI-23626 (Bug) - Breakpoint muting does not disable after run. Regression from 7.1.3 to EAP 8.
  • PHP lang:
  • WI-22072 (Feature) - Ctrl+click does resolve callable method names when using Class_Name::class
  • WI-6439 (Usability Problem) - Code Style -> Spaces, needs special option for new empty ternary function ($var ?: false) - PHP 5.3
  • WI-18556 (Cosmetics) - Find usage should classify usage in use statement
  • WI-7505 (Bug) - Update of phpdoc comment doesn't use existing imports
  • PHP lib stubs:
  • WI-23553 (Bug) - Update openssl headers
  • PHP test:
  • WI-17559 (Usability Problem) - The IDE_PHPUnit_Framework_TestListener does not print "previous" exception stack trace
  • WI-19876 (Cosmetics) - PHPUnit On Server: special characters are not transformed
  • PS specific:
  • WI-10554 (Bug) - Ctrl+/ works incorrect for javascript code
  • No subsystem:
  • IDEA-68916 (Feature) - "Zoom" for Mac OS
  • IDEA-125862 (Feature) - Provide an ability for running tests from the recent files
  • IDEA-125899 (Usability Problem) - Required column type constraints are not obvious in table creation wizard
  • DBE-26 (Usability Problem) - 'Tab' press should make the next field editable in database editor
  • IDEA-125749 (Usability Problem) - Create New Class Dialog - Pressing 'e' in Kind selects 'Interface' instead of 'Enum'
  • IDEA-124913 (Cosmetics) - Remove 'support' from compass support configurable
  • IDEA-125565 (Cosmetics) - Start from Scratch: Customize IDEA dialog: UI Themes page looks bad on Linux
  • IDEA-125551 (Bug) - Start From Scratch: Customize IDEA dialog: JBoss plugin should not appear in JavaFrameworks group
  • WI-10478 (Bug) - Feature request: Language injection in Smarty templates
  • IDEA-125693 (Bug) - Creating a project in dir '~/Desktop/test' creates the project in the dir '/Applications/IntelliJ IDEA 13 CE.app/bin/test'
  • DBE-30 (Bug) - HSQLDB: database console is not opened if first executed statement does not retrieve data
  • IDEA-124023 (Bug) - Update dialog does not link to web page
  • IDEA-125992 (Bug) - "Rerun failed tests" should not rerun skipped tests
  • IDEA-125649 (Bug) - Pycharm 3.1.3 freezes periodically
  • IDEA-114252 (Bug) - WebStorm clipboard history conflicts with external clipboard manager (ClipMenu)
  • IDEA-123031 (Bug) - Import sources and docs for module level libraries
  • IDEA-125566 (Bug) - Start From Scratch: can't close Customize IDEA dialog
  • Build tools:
  • WEB-12330 (Bug) - Grunt tool window fails to load Gruntfile tasks, when an " " is in the path
  • Code Formatting and Code Style:
  • IDEA-59850 (Usability Problem) - Improved scopes for "Reformat Code"
  • Code Navigation:
  • IDEA-125498 (Bug) - Search Everywhere: sometimes after navigation the list of search results reappears in the left corner of the screen
  • Console:
  • IDEA-104484 (Bug) - Console ExceptionFilters are added twice for debugging java app
  • Database:
  • IDEA-125414 (Feature) - database structure: provide navigation from foreign keys
  • IDEA-126055 (Bug) - Change of column type from database tool does not set the correct sql
  • IDEA-106745 (Bug) - HTML double escape
  • IDEA-116671 (Bug) - Database Table Editor: pressing Tab while filling with values inserted row leaves editing mode
  • IDEA-125716 (Bug) - Database view: index coloring missing on a column
  • IDEA-126015 (Bug) - PostgreSQL: Functions with 10 args or more generate invalid SQL
  • Debugger:
  • IDEA-125745 (Cosmetics) - Controls on breakpoints dialog resize differently
  • IDEA-125558 (Bug) - new debugger: double result in evaluate expression
  • WEB-11678 (Bug) - JavaScript debug: step into and step over do not change the line
  • IDEA-125645 (Bug) - On breakpoint hit, opens file in new tab in "active" split – even if file is already open in tab in "inactive" split
  • IDEA-125823 (Bug) - Watches pane: Adding/removing variable not possible when dragged out
  • Editor. Editing Text:
  • IDEA-39879 (Feature) - Background color and gutter stripe color for bookmarks should be configurable
  • IDEA-125470 (Bug) - While in editor, wild re-displaying occurs when soft wraps are enabled
  • File System:
  • IDEA-90008 (Exception) - LocalFileSystem.addRootToWatch does not check whether file is local
  • File Watchers:
  • WEB-9846 (Bug) - File Watchers: dismissing the watcher doesn't work from the first attempt
  • HTML:
  • WEB-12316 (Performance Problem) - PhpStorm performing awful when typing in HTML zones in PHP files
  • IDE Configuration:
  • IDEA-123767 (Feature) - re-download already downloaded the plugin
  • IDEA-123787 (Cosmetics) - "No live templates selected" label in multiple selection
  • IDEA-121369 (Bug) - "Required plugin not enabled" notification, enable plugins -> no restart hint
  • IDEA-124362 (Bug) - No scrollbar in Settings | Code Style | General
  • JavaScript:
  • WEB-12274 (Usability Problem) - "Quick-Documentation" Action should include type information
  • WEB-12273 (Bug) - 'Evaluate Expression Type' action does not show type parameters
  • WEB-12276 (Bug) - Order of generic type parameters is not honored
  • JavaScript. Inspections:
  • WEB-12307 (Usability Problem) - JSHint: Settings: provide warning for invalid path defined for config file
  • WEB-12412 (Bug) - Inspections: Code quality tools quick fix opens Settings dialog for each item
  • WEB-12306 (Bug) - JSHint: update config path if file was moved/deleted
  • WEB-12296 (Bug) - jshintignore: wrong exclusion for "test/*/.defs.js" pattern
  • WEB-12348 (Bug) - Quick fixes not always working in Inspection window
  • Packaging and Installation:
  • IDEA-95949 (Security Problem) - OS X: code signature doesn't include jar files, leading to potential malicious code distribution with JetBrains signature
  • Project View:
  • IDEA-125442 (Usability Problem) - Strip .java from classname when creating new class
  • IDEA-125292 (Bug) - Copy Reference: inconsistent behavior
  • Remote Interpreters:
  • RUBY-15391 (Bug) - IDE freezes when opening a Rails project with remote interpreter
  • SASS:
  • WEB-12382 (Bug) - Sass/Refactor: cannot rename identifiers including back-slash.
  • SQL:
  • IDEA-94887 (Usability Problem) - SQL: Oracle: code completion suggests nothing for (NOT) MEMBER and (NOT) SUBMULTISET conditions
  • IDEA-80262 (Usability Problem) - SQL: code completion : show often (or recently) used items at the completion list top, as in Java
  • IDEA-126066 (Bug) - H2: rename table not parsed correctly
  • IDEA-125848 (Bug) - SQL: Inspections: DB2: no inspection when adding not null column to table filled with values
  • IDEA-120314 (Bug) - Mysql modify column does not auto-complete column name
  • IDEA-126089 (Bug) - PostgreSQL: code completion: types are not suggested for the first entry in file
  • IDEA-109883 (Bug) - SQL: wrong suggestion in boolean expressions
  • Task Management:
  • IDEA-85274 (Bug) - Tasks: the detached editors are not affected by context change
  • Unit Testing. JUnit:
  • IDEA-126045 (Bug) - Run several selected methods doesn't work anymore
  • IDEA-125857 (Bug) - Goto Test -> "Run Selected test" not working
  • Version Control:
  • IDEA-124082 (Bug) - Commit dialog does not default to correct Changelist
  • IDEA-125710 (Bug) - Wrong selection behavior in file history window
  • Version Control. Git:
  • IDEA-125609 (Bug) - Built-in Git SSH executable ignores IDEA http proxy settings
  • IDEA-114011 (Bug) - Github plugin doesn't work over http
  • Version Control. Mercurial:
  • IDEA-124347 (Bug) - Master Password prompt still appears even though Do not remember passwords is selected
  • IDEA-75768 (Bug) - Mercurial not saved checks in Update dialog
  • IDEA-106435 (Bug) - It's impossible update without merging

New in PhpStorm 8.0 Build 138.379 EAP (May 30, 2014)

  • Injections in PHP:
  • WI-20249 (Bug) - Editing of the injected HTML fragment causes replacing double quotes with single quotes
  • PHP Inspections:
  • WI-23403 (Cosmetics) - PHPDoc naming is inconsistent for "Argument PHPDOC missing" and " PHPDOC non-existing argument" messages
  • WI-23215 (Bug) - Add method stubs place interface PHPDoc instead of method stubs if @method in interface is used
  • WI-15104 (Bug) - multiple return types result with "__toString method implementation was not found" inspection warning
  • WI-23404 (Exception) - NPE is thrown on Update PHPDoc quick fix for file with multiple PHPDoc mismatches
  • PHP Refactoring:
  • WI-23468 (Bug) - Implement method: doesn't import classes from PHPDoc of interface
  • WI-23467 (Bug) - Add method stubs: creates redundant use statements (or use redundant FQN)
  • PHP lang:
  • WI-20707 (Feature) - Intention to create a Docblock
  • WI-23521 (Usability Problem) - Generate PHPDoc for function: disable intention if there is a PHPDoc already
  • WI-23518 (Bug) - Generate PHPDoc for function: adds PHPDoc for closure after = and not before statement
  • WI-23519 (Bug) - Generate PHPDoc for function: disable for function declaration in PHPDoc
  • WI-23421 (Bug) - Description is not separated correctly for @see and @uses tags for elements without parenthesis ()
  • PHP lib stubs:
  • WI-23332 (Bug) - Wrong documentation link for "SplFileObject::fputcsv"
  • PHP templates:
  • WI-8114 (Bug) - Javascript in Smarty Template isn't syntax highlighted and am unable to 'inject' any language
  • PHP test:
  • WI-23271 (Bug) - Can't see difference when asserting failed in PHPUnit 4.1
  • No subsystem:
  • IDEA-24014 (Feature) - check plugin compatibility before upgrade
  • IDEA-125357 (Bug) - Throwable at com.intellij.openapi.wm.impl.WindowManagerImpl.isAlphaModeEnabled(WindowManagerImpl.java:359)
  • IDEA-125484 (Bug) - Repeated menu entries
  • IDEA-125557 (Bug) - Start From Scratch: on Darcula selecting as UI Theme in the Customize IDEA wisard it is applied incorrectly
  • IDEA-125581 (Bug) - Unable to define scope
  • IDEA-124891 (Bug) - Implementation icon in gutter overlaps preview for Icon class
  • Database:
  • IDEA-125590 (Bug) - Database: error while saving first IDE data source if application config is empty
  • Editor. Code Completion:
  • IDEA-125397 (Bug) - Cyclic Expand Word no longer completes numbers
  • File Watchers:
  • WEB-12180 (Usability Problem) - Improve usability of 'File watcher available' inspection
  • WEB-11486 (Bug) - When 2 projects are open (in separate windows), FileWatcher executes in both projects when a file changes in one, but only when watcher is configured with custom Scopes
  • JavaScript. Formatter:
  • WEB-9815 (Feature) - JS/JSON code style: spacing within object literal braces
  • WEB-820 (Bug) - JS formatting problem after return statement
  • WEB-12242 (Bug) - incorrect JS formatting of function arguments when each is in the new line
  • JavaScript. Inspections:
  • WEB-12267 (Bug) - jshintrc location configuration vanished in 8.0.3
  • SQL:
  • IDEA-125007 (Bug) - auto quotation of PHP variables in SQL QueryStrings
  • IDEA-125612 (Bug) - SQL: Sybase dialect incorrect error on datediff function
  • IDEA-125630 (Bug) - MySQL: frac_second was removed since MySQL 5.5.3 but is green at IDEA
  • IDEA-125628 (Bug) - MySQL: some valid values of first parameter of functions TIMESTAMPADD() and TIMESTAMPDIFF() are red
  • IDEA-125336 (Bug) - Database plugin fails to parse ::type casts in PostgresSQL
  • IDEA-125378 (Bug) - SQL: Implement keyword-based operators completion
  • Task Management:
  • IDEA-125390 (Exception) - Time Tracking: Throwable at com.intellij.util.Alarm.checkDisposed
  • Terminal:
  • IDEA-125385 (Performance Problem) - Terminal consumes a lot of my cpu cycles
  • IDEA-125223 (Bug) - Terminal invisible content and copy issue
  • IDEA-125317 (Bug) - Terminal window content is drawn on the status bar
  • User Interface:
  • IDEA-121475 (Bug) - Row height in "Environment Variables" too low
  • IDEA-123466 (Bug) - Sheet dialogs doesn't transfer focus back then closed
  • IDEA-125464 (Bug) - Non-pinned and non-docked tool windows do not hide anymore
  • Version Control:
  • IDEA-125421 (Bug) - diff tool opens wrong file if VCS file deleted via file system
  • IDEA-125578 (Exception) - Vcs-Log: on trying to view empty git log: IAE at com.intellij.vcs.log.graph.utils.impl.IntTimestampGetter.newInstance
  • Version Control. Git:
  • IDEA-125309 (Bug) - Git: IDEA becomes unresponsive on trying to view logs for long git history
  • IDEA-125328 (Bug) - Changes log is not shown
  • Version Control. Mercurial:
  • IDEA-122929 (Usability Problem) - Hg: remove unrelated urls paths from pull/push dialog.
  • IDEA-97915 (Bug) - Mercurial incoming changes icon visible even if there are no incoming changes (and outgoing always grayed out)
  • IDEA-89870 (Bug) - hg4idea: java.lang.AssertionError: Invalid command:
  • IDEA-114058 (Exception) - Exception on checkout from protected repository on Ubuntu 13
  • XML:
  • IDEA-117949 (Bug) - Xml editor doesn't treat xml namespace correctly
  • IDEA-119640 (Bug) - Problem with goto declaration of XML attribute defined in XSD
  • IDEA-61480 (Bug) - DocBook5: complains about xlink:href in
  • IDEA-104441 (Bug) - Wrong auto-completion of closed XML tags

New in PhpStorm 8.0 Build 138.256 EAP (May 22, 2014)

  • PHP Completion:
  • WI-19362 (Bug) - Auto-import: Class name completion fails when there is a use namespace matching a substring of the namespace
  • PHP Inspections:
  • WI-22402 (Bug) - Unused trait imports are not recognised
  • WI-22948 (Bug) - Package prefix behavior depends on kind of slash
  • WI-12501 (Bug) - error indicating "Expected: heredoc end" when using PHP's alternative syntax
  • WI-21902 (Bug) - Unused variable: is not detected for last element in the list inside foreach
  • WI-17257 (Bug) - False positive "Unused local variable", variable is used as parameter for eval()
  • PHP Refactoring:
  • WI-11890 (Bug) - Introduce variable: extra semicolon making "extract variable" refactoring fail
  • PHP lang:
  • WI-12303 (Feature) - Understanding uniform multi-level arrays such as Object[][]
  • WI-17605 (Usability Problem) - Quickfix Add PHPDoc comment has wrong argument order
  • WI-23033 (Bug) - Heredoc/Nowdoc isn't parsed correctly as default value for parameter
  • WI-3925 (Bug) - PHP: good code is red: static variable initialized using the Heredoc syntax
  • WI-22295 (Bug) - static factory method autocomplete doesn't work with keys which contains dots
  • WI-23362 (Bug) - Empty PHPDOC/NOWDOC isn't parsed correctly as default values for parameter
  • WI-13383 (Bug) - Array expanding/collapsing broken after 5+ levels deep.
  • PHP lib stubs:
  • WI-23341 (Bug) - Wrong stub for gmp_div()
  • No subsystem:
  • WEB-11422 (Bug) - No highlighting in Debug files of external JavaScript Library.
  • WEB-12179 (Bug) - Freezing when switch windows
  • IDEA-124891 (Bug) - Implementation icon in gutter overlaps preview for Icon class
  • Build tools:
  • WEB-12199 (Bug) - Grunt tool window fails to load Gruntfile tasks, when an "&" is in the path
  • Code Analysis. Inspection:
  • IDEA-125178 (Bug) - Inspect selection not working
  • Database:
  • IDEA-125074 (Bug) - Database table edit doesn't keep the result page
  • IDEA-125172 (Bug) - Cannot execute statement 'EXPLAIN PLAN FOR '
  • IDEA-124835 (Bug) - PostgreSQL: exception instead of data at columns of type 'box[]'
  • IDEA-125295 (Bug) - SQLServer/jTDS shows same schemas for each catalog
  • IDEA-125000 (Bug) - Database write via viewer pane
  • IDEA-110463 (Bug) - INSERT exporter does not honour MySQL backslash escapes
  • IDEA-125072 (Exception) - Database: AE at com.intellij.persistence.database.psi.DbElementImpl.getDataSource
  • Debugger:
  • IDEA-125227 (Usability Problem) - New debugger: please disable switch from expression mode to code fragment mode when evaluating multiline expressions
  • IDEA-125088 (Bug) - Debugger: Evaluate Code Fragment works like Evaluate Expression
  • IDEA-125035 (Bug) - Debugger: breakpoints: unmute on finish: inconsistencies between behavior and appearance
  • IDEA-125038 (Exception) - Debugger: setting field breakpoint causes IAE at SimpleColoredComponent.append()
  • Editor. Editing Text:
  • IDEA-124793 (Bug) - Editor gutter background not painted, gutter icons displaced
  • IDE Configuration:
  • IDEA-124828 (Bug) - "Check for Updates" downloads plugin update again and again
  • JSP:
  • IDEA-117698 (Bug) - Auto closing of tags in jsp seems to incorrectly prioritize html tags
  • IDEA-125129 (Bug) - I would like to reopen IDEA-117698
  • JavaScript. Inspections:
  • WEB-8471 (Feature) - Support .jshintignore with newer jsHint versions
  • WEB-7597 (Usability Problem) - JSHINT: expose warning numbers
  • SQL:
  • IDEA-125363 (Bug) - Getting exception from "SQL support" plugin when using "Go to symbol"
  • User Interface:
  • IDEA-121475 (Bug) - Row height in "Environment Variables" too low
  • IDEA-125269 (Bug) - List: bad selection BG/FG color
  • IDEA-125289 (Bug) - Unexpected navigation after folding
  • Version Control:
  • IDEA-119055 (Performance Problem) - Smart-queue refreshing tasks
  • IDEA-116867 (Cosmetics) - Git Log: author/date columns slightly vertically lower than message
  • IDEA-116386 (Bug) - VCS log doesn't refresh and throws IllegalStateException if it wasn't updated for a long time
  • Version Control. CVS:
  • IDEA-60345 (Usability Problem) - CVS Compare with... should show versions in descending order
  • XSLT:
  • IDEA-124402 (Bug) - Exception during choosing input XML file
  • IDEA-125047 (Bug) - Wrong error in XSLT injection

New in PhpStorm 8.0 Build 138.184 EAP (May 16, 2014)

  • PHP Completion:
  • WI-8039 (Feature) - Type inference: Support for "foreach" of classes that implements ArrayAccess interface.
  • PHP Formatter:
  • WI-2856 (Feature) - control space before / after unary not (exclamation)
  • WI-23196 (Usability Problem) - Reformat code stopped adding "minimum blank lines" between constants in a class
  • WI-23285 (Bug) - Arranger: sections is keep added (already existed section is not found)
  • WI-23126 (Exception) - Surround with for case in switch throws exception
  • PHP Refactoring:
  • WI-22407 (Bug) - Optimize import constantly rearrange use statements
  • PHP debug:
  • WI-4722 (Feature) - Debugger: Ability to skip certain functions with step into.
  • PHP frameworks:
  • WI-13054 (Feature) - Provide run configuration for Behat
  • PHP lang:
  • WI-23177 (Feature) - Allow @uses and @used-by tags to indicate usage
  • WI-23140 (Usability Problem) - PHPDoc for foreach with multiple declaration doesn't place new line after /**
  • WI-18439 (Bug) - Invalid syntax warning, Only simple expresssions are allowed.
  • PHP lib stubs:
  • WI-23148 (Bug) - Function stub for is_a() incorrectly limits first parameter to an object.
  • WI-23098 (Bug) - SQLSRV_SQLTYPE_VARCHAR in not recognized
  • PHP templates:
  • WI-21327 (Bug) - Smarty: tags and attributes are missing in completion list
  • PHP test:
  • WI-23224 (Usability Problem) - Behat: No warning is shown if directory/file/scenario/config file are empty in Run configuration
  • WI-23231 (Usability Problem) - Behat: If scenario doesn't has name Choose Scenario dialog is confusing
  • WI-23236 (Bug) - Behat: Time elapsed may have only 2 values 0s and UNKNOWN
  • WI-23235 (Exception) - Behat: Attempt to add a remote interpreter leads to exception due Behat plugin
  • WI-23232 (Exception) - Behat: if scenario is missing exception will be thrown
  • No subsystem:
  • IDEA-85517 (Feature) - Option to collapse by-default manual defined (editor-fold) regions
  • IDEA-124308 (Feature) - Is it possible to update all plugins, which incompatible (and can be updated) while IDE updating, but not after that?
  • IDEA-124199 (Usability Problem) - Browse call hierarchy button blinks on toolbar if Toolbar is disabled
  • IDEA-124543 (Usability Problem) - sout template formatting
  • WEB-11971 (Bug) - htaccess rules are cached permanently by local server
  • IDEA-125121 (Bug) - MacMessages: NPE when parent is null
  • IDEA-125119 (Bug) - NPE if message for MacMessage is null
  • IDEA-123379 (Bug) - Unable to generate toString() with template "+ super.toString()" if sub class doesn't have any variables
  • IDEA-124097 (Bug) - Structure tool window steals a focus
  • IDEA-116057 (Exception) - second-keystroke popup
  • Build tools:
  • WEB-11713 (Feature) - Grunt feedback
  • CSS:
  • WEB-12159 (Bug) - "Missing semicolon" warning in CSS media queries
  • Code Formatting and Code Style:
  • IDEA-121171 (Bug) - Reformat only VCS changed text - does not work when editor is not opened
  • IDEA-124647 (Bug) - Quick switch scheme > switch code style scheme does not work
  • CoffeeScript:
  • WEB-11819 (Bug) - Coffeescript escaped character showing as "unexpected element"
  • WEB-12126 (Bug) - auto-quotes broken in coffeescript
  • Console:
  • IDEA-124688 (Bug) - Console scroll to the end - jumps on the end of the line sometimes
  • Database:
  • IDEA-125008 (Bug) - Database Explorer Bug when delete a foreign key
  • IDEA-124770 (Bug) - Table editor does not work with tables starting with a digit
  • Debugger:
  • WEB-11775 (Feature) - 'Do Not Step Into' groupings
  • WEB-6779 (Feature) - JS Debugger / Variables: Automatically show used variables
  • WEB-11680 (Bug) - chrome debugger doesn't start due to internal exceptions
  • WEB-10560 (Bug) - Debugger: second Mute Breakpoints invocation doesn't work
  • WEB-12106 (Bug) - node-webkit crashes when opening developer tools
  • Editor. Code Completion:
  • IDEA-124379 (Feature) - Avoid completion lookup glitching
  • Editor. Editing Text:
  • IDEA-124403 (Bug) - Freeze when using "Comment with line comment" action
  • IDEA-124727 (Bug) - "Select word at caret" is wrong name for the function
  • File Watchers:
  • WEB-11689 (Bug) - SASS/SCSS partials ignored by file watcher
  • IDE Configuration:
  • IDEA-78385 (Feature) - Pick up plugins on migrating to the next major version
  • IDEA-123898 (Bug) - IntelliJ Configuration server : create/manage JetBrains account error
  • IDE Preferences:
  • OC-9826 (Bug) - Copy Xcode Keymap Breaks Delete Key
  • JavaScript:
  • WEB-12044 (Performance Problem) - Frequent Memory Leak in current EAP
  • WEB-10432 (Bug) - jsHint: support extends
  • JavaScript. Formatter:
  • WEB-6375 (Bug) - Reformat JSON/JavaScript: Line breaks for properties in an object literal
  • WEB-3830 (Bug) - Incorrect JSON formatting
  • WEB-7208 (Bug) - Keep line breaks option doesn't work properly for function parameters
  • Plugin Support. Architecture:
  • IDEA-124796 (Bug) - List of plugins was not loaded
  • Project View:
  • IDEA-92885 (Feature) - In Project view add "Copy Reference" to context menu for directories too
  • Run | Debug configuration:
  • IDEA-124877 (Feature) - Run Configurations: Allow sort configurations under type or folder node
  • SASS:
  • WEB-12079 (Bug) - Compass: allow choosing config.rb from additional content roots in config path chooser
  • SQL:
  • IDEA-124743 (Bug) - SQL syntax check fails on multiple rule actions syntax (may be postgres specific)
  • IDEA-124465 (Bug) - SQL: Inspections: DB2: false positive 'Adding not null column' inspection
  • User Interface:
  • IDEA-122488 (Bug) - IDEA 13.1 not using default font
  • IDEA-124974 (Exception) - NPE from Switcher if 2 tool windows have the same first-strike char
  • Version Control:
  • IDEA-124546 (Feature) - "Edit Source" from VcsLog
  • IDEA-106517 (Exception) - Checkout from Version control: without open project speed search in repository chooser causes NPE at SpeedSearchBase.processKeyEvent()
  • Version Control. Git:
  • IDEA-120737 (Usability Problem) - Change „Merge“ button caption to „Merge…“ in the Git conflict dialog
  • IDEA-124052 (Bug) - Git Log crashes if there are remote branches without correspondent remotes
  • IDEA-118125 (Bug) - Git: change url for Detached Head information
  • Version Control. Mercurial:
  • IDEA-56033 (Feature) - Mercurial: add support for reverting an uncommitted merge
  • IDEA-124393 (Bug) - Mercurial: Log: user filter applying causes empty log
  • IDEA-122909 (Bug) - Mercurial update: clean option
  • IDEA-124250 (Bug) - Mercurial branch dropdown in push dialog not sorted

New in PhpStorm 8.0 Build 138.84 EAP (May 5, 2014)

  • PHP Formatter:
  • WI-23125 (Exception): Exception is thrown on attempt to surround alternative syntax with { }
  • PHP Refactoring:
  • WI-23141 (Bug): Convert NOWDOC/HEREDOC: doesn't escape "\" properly
  • WI-23143 (Bug): Convert to HEREDOC/NOWDOC: remove code if there is a complex variable access inside
  • PHP lib stubs:
  • WI-12733 (Cosmetics): Imagick method names are not camelcased
  • No subsystem:
  • IDEA-124556 (Performance Problem): MessageBus event processing should be faster with many child buses and (almost) no listeners
  • IDEA-124580 (Bug): Links in mac sheets dialogs do not work
  • Debugger:
  • WEB-9834 (Performance Problem): Node.js debugging: variable value calculation takes a while
  • WEB-7945 (Task): clustered view of Buffer class
  • WEB-9842 (Bug): Node debugging: Hitting a breakpoint with a local variable in scope that is a large buffer will cause the debugger to hang for a long time
  • WEB-1892 (Bug): NodeJS, Debugger: deadlock after stack frames has emptied
  • HTML:
  • WEB-6584 (Feature): Files opened by URL should also be able to open scripts used in the file
  • JavaScript:
  • WEB-12054 (Bug): Good code red - es6 Multiline String Templates
  • User Interface:
  • IDEA-124653 (Bug): Keyboard shortcut for New does not work

New in PhpStorm 8.0 Build 138.38 EAP (Apr 30, 2014)

  • *Update* Due to critical issues in PhpStorm 8 EAP build 138.38 such as broken Generate action and incorrect Vagrant plugin we’ve reverted the EAP to the previous version with 136.1768 build.
  • PHP Formatter:
  • WI-22207 (Bug) - Disable "Spaces around variable/expression in brackets" for all Predefined schemes (except WordPress)
  • PHP Refactoring:
  • WI-23103 (Bug) - Convert HEREDOC/NOWDOC: truncates code with quotes
  • WI-23105 (Bug) - Convert HEREDOC/NOWDOC: applies additional unnecessary escaping
  • PHP lang:
  • WI-2819 (Feature) - New intention: replace quotes with NOWDOC/HEREDOC
  • WI-9535 (Feature) - Offer to create @var declaration for unknown variable in foreach statement
  • WI-22295 (Bug) - static factory method autocomplete doesn't work with keys which contains dots
  • PHP lib stubs:
  • WI-12733 (Cosmetics) - Imagick method names are not camelcased
  • WI-23097 (Bug) - Incorrect documentation for iterator_to_array
  • No subsystem:
  • IDEA-98912 (Usability Problem) - An Enter license button should be added to the welcome screen
  • IDEA-124155 (Performance Problem) - Performance problem on live search in long lines
  • IDEA-51883 (Bug) - IDEA prints out huge number of pages
  • IDEA-115374 (Bug) - "Print file" truncates the code on Mac
  • IDEA-124454 (Bug) - Code inspection reports no errors
  • IDEA-124394 (Bug) - Exception while creating New File w/o extension
  • IDEA-123943 (Exception) - INRE at com.intellij.util.indexing.FileBasedIndexImpl.a
  • WEB-12013 (Exception) - IAE at com.intellij.lang.javascript.dialects.JSLanguageLevel.ofId
  • WEB-12014 (Exception) - IAE at com.intellij.lang.javascript.dialects.JSLanguageLevel.ofId
  • Build tools:
  • WEB-11713 (Feature) - Grunt feedback
  • WEB-11956 (Bug) - The grunt plugin is not using the NODE_PATH environment variable
  • Database:
  • IDEA-66622 (Usability Problem) - Schema Import dialog: a data source created in the dialog is not selected automatically
  • IDEA-43873 (Usability Problem) - Database tool window: save the data sources expanded tree state on reopening project
  • IDEA-124598 (Bug) - Database table editor: keyboard shortcut for Add New Row is not applied
  • IDEA-123904 (Bug) - No Query Found
  • IDEA-124479 (Bug) - MS SQL. SQL Insert Statements data extractor does not wrap text values with quotes.
  • IDEA-117205 (Bug) - Database Connections and Drivers: provide driver files for Sybase / Native and ODBC drivers
  • Debugger:
  • WEB-9103 (Bug) - nodejs: Debugger not showing value of getter
  • Editor. Code Completion:
  • IDEA-124503 (Bug) - Filter out IntellijIdeaRulezzz completion items
  • Editor. Editing Text:
  • IDEA-124527 (Bug) - Shift-drag after Shift-click starts new selection in editor
  • Injections in PHP:
  • WI-22725 (Exception) - surround heredoc block with try catch causes parse error
  • JavaScript:
  • WEB-11957 (Bug) - Valid JavaScript regular expression (RegExp) marked as red
  • WEB-12007 (Bug) - Spread support
  • WEB-12056 (Bug) - Find usages for global symbols in files with AMD modules
  • WEB-11863 (Bug) - More than one @augments breaks code completion for generic types
  • WEB-12033 (Bug) - 'Update JSDoc Comment' intention adds JSDoc parameter ignoring order
  • JavaScript. Frameworks:
  • WEB-12063 (Bug) - Angular directive attribute value tokens are broken in Haml
  • Live Edit:
  • WEB-11393 (Bug) - Live edit doesn't work for linked css
  • Remote Interpreters:
  • PY-12700 (Bug) - Invalid path mapping to /vagrant regardless of Vagrantfile setting
  • SQL:
  • IDEA-124360 (Bug) - HSQLDB dialect problems
  • Task Management:
  • IDEA-112189 (Bug) - Change YouTrack integration default query
  • TypeScript:
  • WEB-12022 (Bug) - IntellijIdeaRulezzz in typescript
  • WEB-11817 (Bug) - Typescript: declaration merging with var statement doesn't work for ambient external module declarations
  • WEB-12009 (Bug) - Typescript refactoring issues
  • WEB-11690 (Bug) - TypeScript breakpoint is not hit
  • WEB-11720 (Bug) - TypeScript: export = classes are not recognised when imported

New in PhpStorm 8.0 Build 136.1768 EAP (Apr 24, 2014)

  • PHAR:
  • WI-22953 (Exception) - Please change caller according to com.intellij.openapi.project.IndexNotReadyException documentation
  • PHP Formatter:
  • WI-22971 (Exception) - The specified node is not within PhpDoc
  • PHP lang:
  • WI-2176 (Usability Problem) - Folding: There is no way to fold only if or only else
  • PHP lib stubs:
  • WI-22503 (Bug) - dns_check_record has wrong docblock
  • WI-22171 (Bug) - Included phpdoc for array_filter out of date/incomplete
  • PHP project configuration:
  • WI-22890 (Bug) - I can not create an empty PHP-project
  • Plugin: Deployment _ FTP..:
  • WI-1220 (Cosmetics) - Review mnemonics on new project wizard server config page
  • Plugin: WordPress:
  • WI-22837 (Bug) - Wordpress Plugin: Maybe cross-project completion
  • WI-22995 (Bug) - Completion list may contain the next line if string is not closed
  • No subsystem:
  • RUBY-14437 (Feature) - Add quickfix for unresolved compass import
  • WEB-11973 (Bug) - Good code red - es6 generator syntax
  • RUBY-15160 (Bug) - Add possibility to specify compass config.rb
  • IDEA-122250 (Bug) - New Package: qualified name is checked against ignored directories as a whole
  • IDEA-123714 (Bug) - almost 1 minute hang
  • WEB-10931 (Bug) - Bower: synchronize changes on package Update
  • WEB-11938 (Bug) - Incorrect error message on regex range: "illegal character range (to < from)"
  • IDEA-124096 (Bug) - Commit dialog: Ctrl+Alt+P doesn't invoke the Commit action popup on Java 7 & 8
  • IDEA-123959 (Exception) - cannot create a new file
  • Build tools:
  • WEB-11936 (Feature) - Grunt: add Restart button to Grunt console
  • WEB-11955 (Bug) - Grunt task grunt-contrib-clean does not show sub-tasks
  • Database:
  • IDEA-123963 (Bug) - No nice way to see DDL in database view
  • IDEA-124260 (Bug) - Data Sources and Drivers: can't apply changes to schemas that are shown and used to resolve
  • Debugger:
  • WEB-11485 (Bug) - Debug Console missing horizontal scrollbar
  • WEB-11784 (Bug) - slow nodejs debug: huge array cause 100 cpu debug
  • IDEA-123931 (Bug) - Nashorn debugger doesn't stop on breakpoints in some js files
  • IDEA-123930 (Exception) - AIOOBE at com.intellij.javascript.debugger.nashorn.NashornObject.createValue
  • Editor. Code Completion:
  • IDEA-120139 (Bug) - Autopopup doesn't popup sometimes after completion
  • Editor. Editing Text:
  • IDEA-100906 (Bug) - Ruby-Editor: CTRL+BACKSPACE Could Not Delete A String
  • File Watchers:
  • WEB-10884 (Exception) - PhpStorm crashes on copying folder in project tree
  • Find, Replace, Find Usages:
  • IDEA-122383 (Bug) - PageUp/PageDown don't work in ShowUsages popup (Ctrl-Alt-F7)
  • Indices:
  • IDEA-123876 (Bug) - Throwable at com.intellij.util.indexing.FileBasedIndexImpl.a(FileBasedIndexImpl.java:817)
  • IDEA-123886 (Bug) - Root index creation loops endlessly
  • IntelliJ Platform:
  • WI-22627 (Usability Problem) - Project setup wizard doesn't accept PHP interpreter path
  • WI-17474 (Bug) - Custom Folding: defaultstate="collapsed" does not seem to have any effect
  • JSP:
  • IDEA-124021 (Bug) - Cannot resolve method 'print(int)' with JSP custom tags
  • JavaScript:
  • WEB-11892 (Bug) - es6 Array comprehensions - Good code red
  • WEB-11941 (Bug) - WebStorm 8 locks the JS file if it see ES6 Types
  • WEB-11813 (Bug) - Add editor support for Nashorn -scripting
  • WEB-11980 (Bug) - Good code red - es6 double for
  • WEB-11979 (Bug) - Predefined members missed in JS completion when mixed TS class exists
  • WEB-11906 (Exception) - Nashorn: avoid CCE for the valid ES6 code
  • JavaScript. Formatter:
  • WEB-11899 (Bug) - JS: Wrong indentation for last line in an expression
  • JavaScript. Frameworks:
  • WEB-11834 (Bug) - IIS ACL Permissions when creating foundation/bootstrap projects from templates
  • JavaScript. Predefs:
  • WEB-3371 (Feature) - Fully implement the Console API
  • JavaScript. Refactoring:
  • WEB-11085 (Bug) - refactor/rename dialog does not remember check box settings from one invocation to the other
  • WEB-11984 (Exception) - Exception after supressing inspection for statement
  • REST Client:
  • WEB-11945 (Bug) - REST Client: Response highlighting is broken
  • WEB-10807 (Exception) - REST Client: Cookies: should be filled in after getting response
  • Remote Interpreters:
  • PY-12695 (Usability Problem) - Remote Interpreters: previously autodetected mappings from web deployment or vagrant are lost when updating
  • PY-12674 (Cosmetics) - Remote Interpreter: default combo-box for deployment configuration is too narrow
  • PY-12776 (Bug) - Vagrant instead of plain ssh remote interpreter is added
  • PY-12675 (Bug) - Remote Interpreters: connection radio button state is not saved when trying to edit remote interpreter
  • SQL:
  • IDEA-112392 (Feature) - SQL Code Completion: no "smart" completion when comma is used as join
  • IDEA-113296 (Bug) - MySQL function completion doesn't work in injected PHP
  • IDEA-113295 (Bug) - MySQL completion works inconsistently
  • IDEA-124266 (Bug) - [database db2 dialect] good code marked as red
  • IDEA-124143 (Bug) - Sybase: some datatypes are incorrectly marked red
  • IDEA-124142 (Bug) - Sybase: some datatypes marked unresolved
  • TypeScript:
  • WEB-11977 (Bug) - good code red: unresolved variable "prototype.setter"
  • WEB-11978 (Bug) - bad code green: typescript enums —"," must be used instead of ";"
  • WEB-11935 (Bug) - Referenced files on top of typescript files are not resolved
  • WEB-11931 (Bug) - Typescript. Bad code green.
  • WEB-11965 (Exception) - TypeScript: NPE on resolve
  • User Interface:
  • IDEA-90194 (Feature) - Ability to disable drag & drop in Project View
  • IDEA-79312 (Usability Problem) - text cursor gets lost
  • Vagrant:
  • PY-12672 (Usability Problem) - Vagrant: allow to add not currently running vagrant instance as remote interpreter
  • PY-12667 (Bug) - Vagrant: show proper error when configuring remote interpreter without proper vagrant executable specified
  • PY-12759 (Bug) - Vagrant: path to vagrant executable is not saved on pycharm update
  • PY-12758 (Bug) - Vagrant: Replace default executable on windows to vagrant without extension
  • PY-12680 (Bug) - Vagrant executable setting should be per application
  • PY-12768 (Exception) - Vagrant: IAE at com.intellij.openapi.ui.ValidationInfo.
  • Version Control:
  • IDEA-67409 (Usability Problem) - Home/End keys are not working in Git log (Changes view)
  • IDEA-119996 (Performance Problem) - IDEA 13.0.2 slow performance
  • IDEA-112050 (Bug) - Open Repository Version action shows file with "[][][][][][][][][][]" at the end of file
  • Version Control. Git:
  • IDEA-98189 (Bug) - If the password to an HTTP server has changed, authentication fails, and there is no way to change or at least reset the password from the IDE
  • IDEA-122305 (Bug) - Git: Log: Structure filter shows all available commits regardless provided paths
  • IDEA-124081 (Exception) - Git: IAE at git4idea.commands.GitHandler.checkNotStarted
  • Version Control. Mercurial:
  • IDEA-86665 (Feature) - hg annotate: ignore whitespace change
  • IDEA-109187 (Usability Problem) - Hg | Branches | Create New Branch dialog should validate input

New in PhpStorm 8.0 Build 136.1672 EAP (Apr 17, 2014)

  • Navigating to failed unit test method goes to phpunit class instead
  • Make Intention "Add field" available for field assignments in constructor
  • PHPUnit shows weird output when there are skipped or incomplete tests
  • New inspection: PSR-0: class path does not match namespace/name
  • PhpStorm does not remember having no text/scope configuration with find usages
  • Do not report missing @throws annotations for unchecked exceptions
  • Start failure on start due to the problem with indexes
  • "self" reference broken when moving class into namespace, and more than one class in file
  • File separators changed during restart of PhpStorm
  • Disable ability to change Deployment Servers or make the change synchronizable
  • Doesn't select server instead of missing one
  • Duplicated Alt+ shortcut in Extract Function dialog
  • PHPUnit Runner: does not respect the PHPUnit_Framework_ComparisonFailure interface

New in PhpStorm 8.0 Build 136.1575 EAP (Apr 10, 2014)

  • PHP lang:
  • WI-16330 (Bug) - Autocompletion on object created using "static" keyword is broken within class
  • PHP test:
  • WI-22680 (Feature) - Remote Interpreters: Add support of PHPUnit Coverage
  • WI-10556 (Usability Problem) - Coverage: PHP: Coverage tool window shows .idea directory
  • WI-22315 (Performance Problem) - Performance problem in PhpUnitFilter with lots of logging with filename:line pattern match
  • WI-10557 (Bug) - Coverage: PHP: Coverage tool window shows "Coverage Summary: null" for empty coverage
  • No subsystem:
  • WEB-11701 (Bug) - JSLint Assignment Option Showing as Error
  • WEB-11739 (Bug) - JSON highlighting fails to account for RFC 7159
  • WEB-11268 (Bug) - Live Templates in auto-completion interfere with Emmet/Zen expand
  • IDEA-123529 (Bug) - No Retina Icon for Changed File
  • IDEA-123549 (Bug) - Settings/Scopes can show the folders hierarchy instead of flattening packages
  • IDEA-123377 (Bug) - Quick definition action on interface opens implementations at first
  • WEB-11736 (Bug) - Bad definition of HTMLDocument.querySelector
  • IDEA-123444 (Bug) - Item “more…” on Search Everywhere does not work
  • Build tools:
  • WEB-11707 (Bug) - Grunt: tasks targets should be shown in Search Everywhere
  • WEB-11795 (Bug) - Grunt: verbose and force options are disabled while indexing
  • Debugger:
  • IDEA-12514 (Feature) - Can't generate EOF input in Console panel - ^D doesn't work
  • WEB-7303 (Feature) - Add support for debugging with node-webkit
  • WEB-2100 (Bug) - Node.js debug: value is truncated, but IDE does not suggest to see full value
  • WEB-11392 (Bug) - Node.js debugging: Copy Value doesn't copy the entire string
  • IDEA-123641 (Bug) - Breakpoints groups: for the java/javascriptExceptions nodes the MoveToGroup action is enabled but doesn't move AnyException subnodes
  • WEB-6069 (Bug) - CoffeeScript Debugger doesn't show value of the variables
  • WEB-11399 (Bug) - Live Console: variables defined in the console are not autocompleted (global context)
  • WEB-11133 (Bug) - JS Debugger: Variables view is not properly updated after setting value
  • Editor. Editing Text:
  • IDEA-102469 (Feature) - Support command + backspace to 'delete to line start/end'
  • IDE Configuration:
  • IDEA-103016 (Bug) - Tooltip/label for Toggle Fullscreen Button in Main Toolbar is inverted compared to 'real' status
  • JavaScript:
  • IDEA-123467 (Performance Problem) - 100% CPU when working with PHP and/or Node.js dependencies
  • WEB-11727 (Bug) - JSDoc: generic types are incorrectly reported as not assignable
  • WEB-11695 (Bug) - Insert handler doesn't work for function with multiple definition
  • WEB-11683 (Bug) - JSDoc: Generic type attributes are not correctly propagated to base classes
  • WEB-11755 (Bug) - properties of the object returned by imported module not resolved
  • WEB-11691 (Bug) - Regex highlighting bug
  • JavaScript. Formatter:
  • WEB-11600 (Bug) - Indention in JSON broken
  • JavaScript. Inspections:
  • WEB-1484 (Bug) - Local variable is redundant - false positive if variable is used in the same var statement
  • JavaScript. Predefs:
  • WEB-11764 (Bug) - JSDoc: Array template type vs push()
  • SASS:
  • WEB-11783 (Bug) - Compass' image-url helper highlighted by inspector
  • WEB-11632 (Bug) - Incorrect SCSS syntax highlighting for placeholder selector with pseudo-class
  • SQL:
  • IDEA-123058 (Bug) - Amazon Redshift (Postgres) "ignore nulls" highlighted incorrectly
  • IDEA-123044 (Bug) - MSSQL: good code with xml is red
  • IDEA-123172 (Bug) - Bad SQL indent
  • IDEA-114251 (Bug) - DB2 call syntax error
  • IDEA-108136 (Bug) - SQL Server .value() function marked as error
  • IDEA-120509 (Bug) - Unrecognized SQL expression (pgTAP test)
  • Terminal:
  • IDEA-119544 (Bug) - Terminal title font doesn't revert to usual size after presentation mode
  • User Interface:
  • IDEA-123360 (Usability Problem) - Sheet dialogs should have minimum size
  • IDEA-120989 (Cosmetics) - Shared scope icon is confusing
  • IDEA-123230 (Cosmetics) - html code visible in updated plugin disabled warning
  • IDEA-122892 (Bug) - Presentation mode: fix TW tree row height
  • IDEA-56288 (Bug) - New scrollbars on Mac OS X do not respect the system option defining where to jump on click
  • IDEA-123519 (Bug) - Sheet dialog: default button and focused buttons are incorrectly set
  • IDEA-101642 (Bug) - Floating windows disappear/change positions on dual monitor
  • IDEA-123409 (Bug) - Sheet dialogs: Order of buttons and their sizes are incorrect
  • IDEA-123017 (Bug) - Mac sheet-dialogs do not correctly handle line breaks
  • IDEA-123402 (Bug) - Sheet dialogs are too transparent, making it hard to read the content
  • IDEA-123466 (Bug) - Sheet dialogs doesn't transfer focus back then closed

New in PhpStorm 8.0 Build 136.1476 EAP (Apr 4, 2014)

  • PHP Composer:
  • WI-22708 (Bug) - Forbid use of remote interpreter
  • PHP Formatter:
  • WI-22026 (Bug) - PHP autoindent/parser breaks when JSP plug-in is off
  • PHP Inspections:
  • WI-17561 (Bug) - False-positive "Unused private method" notice for private method in trait
  • WI-11805 (Bug) - Code inspection fails to report missing @throws annotations when nesting method calls
  • PHP lang:
  • WI-17282 (Feature) - Recursive exception scan when autogenerating docblock
  • WI-15431 (Feature) - Support Markdown in PHPDoc blocks
  • PHP test:
  • WI-22703 (Usability Problem) - Filter non-remote interpreters in selection of Interpreter in PHPUnit configuration
  • WI-22456 (Bug) - Add support of PHPUnit 4.0 on server
  • Plugin: Deployment _ FTP..:
  • WI-1106 (Feature) - SFTP plugin should accept private keys generated by Putty (Windows)
  • WI-22731 (Exception) - Exception is thrown on attempt to view all deployment servers while new one is not applied
  • Plugin: GAE support:
  • WI-22745 (Bug) - Unexpected use of comma in port parameter
  • No subsystem:
  • IDEA-85296 (Bug) - Runtime error closing one of multiple open projects
  • WEB-11346 (Bug) - Bower version detection always fails
  • Code Formatting and Code Style:
  • IDEA-120802 (Bug) - Optimize imports preparation freezes UI & throws Exception & crashes with OOM when called on a large project
  • Debugger:
  • IDEA-88850 (Cosmetics) - Inconsistent checkbox capitalization in breakpoints dialog
  • WEB-11133 (Bug) - JS Debugger: Variables view is not properly updated after setting value
  • Editor. Editing Text:
  • IDEA-123157 (Bug) - Unnecessary scrolling in Editor Color Dialog
  • IDEA-120785 (Bug) - Multiline select issue
  • File System:
  • IDEA-122931 (Bug) - maven-toolchain-1.0.jar from maven central doesn't get parsed
  • HAML:
  • RUBY-15068 (Bug) - Wrong indentation is not highlighted in the Editor
  • HTML:
  • WEB-5058 (Bug) - "Form input without an associated label" inspection fix messes with indentation in template languages.
  • IDE Configuration:
  • IDEA-71048 (Bug) - Version Control History: Wrong DateTime Format
  • JSP:
  • IDEA-122428 (Bug) - Change make a new line in a jsp file
  • Java. Intention Actions:
  • IDEA-123034 (Usability Problem) - Unused assigment inspection - Remove quick fix
  • JavaScript:
  • WEB-11576 (Bug) - html tag not highlighted in string
  • WEB-11656 (Bug) - Check type of object literal property
  • WEB-11634 (Bug) - Color highlighting bug of multi-var statement with yield
  • WEB-11272 (Bug) - "Unresolved function or method" inspection false positive when multiple left-hand assignment is used to assign module.exports
  • JavaScript. Predefs:
  • WEB-6449 (Bug) - Invalid Inspection - Binary Conversion Error - Incorrect Stub - String.search()
  • Run | Debug configuration:
  • IDEA-102508 (Bug) - error status of run configuration is not updated after fix
  • SASS:
  • WEB-11630 (Bug) - File Structure (Ctrl+F12) & Sass at-root: no title
  • SQL:
  • IDEA-123190 (Bug) - auto quotation of named parameters in SQL QueryStrings
  • TypeScript:
  • WEB-11595 (Bug) - Typescript: "method expression is not of Function type" on any type
  • WEB-11628 (Bug) - Typescript: wrong syntax parsing
  • WEB-11642 (Bug) - Typescript bogus error
  • User Interface:
  • IDEA-123236 (Bug) - Can't click through
  • IDEA-120011 (Bug) - quick documentation looses styling
  • IDEA-123113 (Bug) - Tool window: stripe button text differs from View|Tool Windows
  • IDEA-123156 (Bug) - EAP PS-136.1382 broken (MacOsX 10.6.8) ('NSInvalidArgumentException', reason: '+[NSScroller preferredScrollerStyle])

New in PhpStorm 8.0 Build 136.1382 EAP (Mar 28, 2014)

  • From the PHP side, this build brings:
  • PHP remote interpreters support – use PHP interpreter over SSH installed on any remote environment to run/debug application and run testing tools remotely
  • PHPUnit can be run via SSH
  • Multiple PHPUnit configuration are now supported for remote interpreters
  • WordPress support: list of functions that supports action/filter as parameter is extended
  • WP-CLI and Composer command-line tool is able work with pure executable now
  • Fixed issues:
  • PHPUnit on Server: Allow to run via SSH instead of via web server
  • Run configuration for "PHP Script on Server" to execute php script on a remote server
  • Support global factory functions (similar to static factory methods)
  • Nested indentation is broken for PHP (hash value)
  • Deployment configuration "Opperations logging: detail" is being lost
  • If parameter is anonymous function enter key will not preserve indent
  • Consider non-php script for Symfony based tools ( ex. Command line tool support: problems with Composer vendor binaries on Windows)
  • Exception is thrown on attempt to add PHPUnit by Remote Interpreter
  • Exception is thrown on closing project while CLT is opened
  • Exception is thrown on closing project while CLT is opened
  • Remote Interpreters: Copy PHP interpreter creates clone but not a copy
  • Remote Interpreter: doesn't use the right path separators
  • CLT shouldn't use Remote Interpreter
  • Composer CLT: allow to work with pure executable
  • Remote Interpreter: deadlock on startup a project with remote interpreter and PHPUnit
  • Remote Interpreters: Validate installation throws exception
  • Remote Interpreters: doesn't detect existence of PHP on linux from windows
  • Extend list of functions that supports action/filter as parameter
  • WP-CLI: Exception is thrown on invocation of CLT after removing tool
  • Allow to choose interpreter from project interpreters list
  • preg_match function third argument should not have type restriction (array)

New in PhpStorm 8.0 Build 136.1255 EAP (Mar 20, 2014)

  • PHP Formatter:
  • WI-12364 (Feature): Code Formatting - alignment consecutive class constants
  • WI-20850 (Bug): A mismatch with PHPCS PEAR coding style validation: extra indent of a multiline function used as value in key=>value combination
  • WI-20881 (Bug): Wrong indentation level in associative array when value is closure definition
  • WI-22441 (Bug): Line comment at first column option is not preserved upon restart of PhpStorm
  • PHP lang:
  • WI-22445 (Bug): @todo is not highlighted in PHPDoc
  • PHP lib stubs:
  • WI-22421 (Bug): php: wrong signature for gzgets
  • WI-21717 (Bug): Memcache:: getAllKeys() stub is incorrect
  • PHP project configuration:
  • WI-22450 (Bug): Can't create project from existing files
  • PHP test:
  • WI-22448 (Feature): Add annotation from PHPUnit 4
  • Plugin: Command line:
  • WI-22550 (Exception): Command line tools autocomplete suggestions fail when *.txt not assigned as "Text file"
  • Plugin: Deployment _ FTP..:
  • WI-22388 (Usability Problem): All remote hosts have a "web path on server", so they are all in the "upload files to" list
  • WI-22362 (Bug): Sorted deployment excluded paths list. Alt+V deleted item that is not selected.
  • Plugin: WordPress:
  • WI-22541 (Usability Problem): WordPress: Notification in Event Log "WordPress installation is not added to PHP | Include paths" has usability issues
  • WI-22301 (Usability Problem): Don't add wordpress directory to include path if it's a child directory of opened directory
  • WI-22205 (Bug): In balloon "WordPress containing plugins inside it's better to add whole WordPress to project" ignore button is not clickable
  • No subsystem:
  • WEB-11303 (Feature): Grunt: support force and verbose options
  • WEB-11343 (Feature): Grunt: run all tasks selected in the tree together
  • WEB-11342 (Usability Problem): Grunt: notify when no tasks found for valid file
  • IDEA-122091 (Usability Problem): Scratch editor > Save as: provide default directory
  • WEB-10928 (Usability Problem): Bower: update bower.json on package installation
  • WEB-11260 (Usability Problem): Grunt: inform user about selected invalid/inappropriate file
  • WEB-11322 (Usability Problem): Grunt: provide Help button
  • WEB-11321 (Usability Problem): Grunt: provide Close button on toolbar
  • IDEA-122255 (Bug): [regression] mouse middle button on a line breakpoint should work as enable/disable
  • IDEA-122331 (Bug): Cannot set breakpoints on multiple selections
  • IDEA-122467 (Bug): Exception in creating syntax highlighter shouldn't prevent opening a file
  • IDEA-109467 (Bug): Too big tooltip for Close Icon (Debug Window)
  • IDEA-88443 (Bug): Run Inspection by Name: Inspections with same name are only shown once
  • IDEA-122283 (Bug): Notification.expire() doesn't work if Event Log toolwindow hasn't been activated yet
  • WEB-11416 (Exception): Grunt: Search Everywhere works incorrectly for "grunt" word
  • Clouds.Git:
  • IDEA-120027 (Feature): Import Git-cloud apps from sources
  • Code Formatting and Code Style:
  • IDEA-116058 (Bug): reformat code over selected text forces optimizes imports option
  • CoffeeScript:
  • WEB-11365 (Bug): Litcoffee: incorrect parsing with text between statements
  • WEB-11378 (Bug): Litcoffee: text without indent should be shown as comment by default
  • Debugger:
  • WEB-7303 (Feature): Add support for debugging with node-webkit
  • WEB-11240 (Feature): Live Console: implement multiple line input
  • IDEA-121301 (Usability Problem): Setting a breakpoint after navigation to a folded method
  • WEB-11362 (Bug): Live Console: can't evaluate variables in scope
  • IDEA-121738 (Bug): Shift-click in gutter doesn't create 'no suspend' breakpoint anymore
  • WEB-11379 (Bug): Console attached to the right text intent
  • IDEA-121964 (Exception): IAE at com.intellij.javascript.debugger.nashorn.NashornObject.loadVariables
  • Diff_Merge:
  • IDEA-99129 (Bug): External merge tool settings are lost after IDE restart
  • Editor. Editing Text:
  • IDEA-80056 (Feature): Column selection mode improvement
  • IDEA-122192 (Usability Problem): highlight usages should have highest priority
  • IDEA-121995 (Usability Problem): Code selection is reseted on last line with space if Allow placement of caret inside tabs is enabled
  • IDEA-121067 (Bug): Uncertain editor bug
  • IDEA-121896 (Bug): Delete key doesn't delete CRLF while using multiple carets
  • IDEA-121966 (Bug): Multiple-Cursor Jumpy
  • IDEA-122505 (Bug): Incorrect cursor position in "Expression Evaluation" window
  • IDEA-122068 (Bug): Unknown plugin error
  • IDEA-121042 (Bug): Disable certain types of documentation dialogs (Documentation for proguard.txt)
  • Find, Replace, Find Usages:
  • IDEA-121444 (Performance Problem): Find in path is slow
  • HTML:
  • WEB-6710 (Feature): Autocomplete accept attribute for input type=file
  • WEB-8194 (Usability Problem): HTML injection is too sensitive
  • WEB-11280 (Bug): Extra tag is highlighted in the Tag tree
  • WEB-8630 (Bug): Autocomplete of link rel should include 'import'
  • Indices:
  • IDEA-118211 (Performance Problem): Performance problem when closing project
  • JSP:
  • IDEA-122428 (Bug): Change make a new line in a jsp file
  • Java. Intention Actions:
  • IDEA-120869 (Usability Problem): Unwrap allows to select multiple items but applies just one
  • JavaScript:
  • WEB-7714 (Feature): Support Harmony Modules
  • WEB-9055 (Bug): Invalid inline suggestion.
  • WEB-11359 (Bug): Relative paths in define() not correctly resolved
  • WEB-11257 (Bug): Partial string of JavaScript injection raises false warning
  • JavaScript. Formatter:
  • WEB-11339 (Bug): javascript : inconsistent array items indentation when item is an expression
  • JavaScript. Frameworks:
  • WEB-11407 (Bug): Cucumber-js: provide possibility to define executable via UI
  • JavaScript. Inspections:
  • WEB-11297 (Bug): add support for jshint noyield
  • Language Injection:
  • IDEA-119475 (Bug): Can't remove file reference
  • Project Configuration:
  • IDEA-121272 (Bug): Adding library sources fires no events
  • Refactoring:
  • IDEA-120945 (Bug): Safe delete finds occurrences in files that are going to be deleted
  • SASS:
  • WEB-11360 (Bug): IDEA Sass parser won't allow to use parens after a pseudoclass if pseudoclass name is interpolated: `.foo:#{$bar}(1)` produces "End of line expected"
  • WEB-11364 (Bug): Double-clicking a filename in the @import statement selects text weirdly
  • SQL:
  • IDEA-121965 (Bug): [MySQL] REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'ABC'@'DEF'; is marked invalid
  • IDEA-122350 (Bug): PostgreSQL False Positives Using "FOR...IN DELETE/UPDATE...RETURNING" Statements
  • Task Management:
  • IDEA-120595 (Bug): Restore compatibility with JIRA < 4.2
  • IDEA-122125 (Bug): "Close Active Task" fail on commit
  • TypeScript:
  • WEB-11180 (Bug): Typescript file watcher existence disables syntax highlighting
  • WEB-11385 (Bug): TypeScript: methods of required module type not resolved
  • WEB-10856 (Bug): TypeScript: module alias definitions not supported (declare module "aliasModuleName" {...}
  • WEB-11316 (Bug): Typescript: Incorrect "Initializer type X is not assignable to to variable type number" error
  • WEB-11327 (Bug): #TypeScript exception thrown in resolving + bad code shown good
  • User Interface:
  • IDEA-94140 (Cosmetics): Run Configurations: first configurations of every type is shown below Defaults on creation
  • IDEA-122049 (Bug): Mac messages: in some cases parent window is incorrectly detected
  • IDEA-122377 (Bug): Don't show 'Plugin xxx failed to initialize and will be disabled' dialog in test mode
  • Version Control:
  • IDEA-117753 (Usability Problem): Git Log: filter should trim leading spaces
  • IDEA-117920 (Usability Problem): New VCS Log should remember long edges settings
  • IDEA-115902 (Cosmetics): VCS-log: visual artifact on multi-repo root indicator
  • IDEA-121969 (Task): Don't load changes details on start
  • IDEA-121990 (Bug): Filter by old branch fails with exception if full graph is not loaded
  • Version Control. Git:
  • IDEA-121875 (Task): Git log: Manually sort loaded commits by date
  • IDEA-122086 (Bug): The log is not refreshed after cherry-pick with auto-commit
  • IDEA-119453 (Bug): After conflicting merge 'git commit' should be called without "--only"
  • IDEA-120142 (Bug): Git commit hook error messages no longer display
  • IDEA-121992 (Bug): Git Log: after amend commit filtered log is not updated
  • IDEA-118328 (Exception): Git Log: AE: Already disposed at com.intellij.openapi.components.impl.ComponentManagerImpl.getPicoContainer
  • IDEA-122051 (Exception): NPE at com.intellij.vcs.log.ui.filter.UserFilterPopupComponent$VcsLogUserFilterImpl$1.fun
  • Version Control. Mercurial:
  • IDEA-122310 (Usability Problem): Hg: "push as new remote branch" should not require me to check "Branch"
  • IDEA-122035 (Bug): Hg Log: on selecting branch filter == tip the empty log is shown
  • IDEA-122148 (Bug): Mercurial: Log: Highlight Not-Picked Commits button is useless
  • IDEA-122358 (Bug): Push should use 'default' path by default
  • IDEA-122032 (Exception): Throwable at com.intellij.vcs.log.graph.GraphColorManagerImpl.a
  • IDEA-122034 (Exception): Throwable at org.zmlx.hg4idea.command.HgStatusCommand.parseChangesFromResult

New in PhpStorm 8.0 Build 134.1456 EAP (Mar 7, 2014)

  • Source & Test directories for PHP: Matching for project structure and namespaces (as in PSR-0), Detecting PSR-0 structure on new project, Maintaining structure on new class creation and refactorings
  • Line comments now can keep indentation (see WI-14262 for more information)
  • Drupal 8 support
  • Improved formatting of chained calls
  • Quick Documentation for live templates
  • Local History for selected function, class or method
  • New PHP formatting options: Class fields alignment
  • Unwrap/remove action for control structures
  • New PHP debug feature: Copy array/object value path (in variable context menu)
  • Allow to generate multiple getters/setters for a field
  • Type inference: instanceof with OR, support for array access via constant
  • New intentions: Replace ternary expression with if, Simplify if, Fix function signature intention for unused function parameter
  • Notable bug fix: type inference doesn’t override @var property hints any more

New in PhpStorm 7.1.3 Build 133.982 (Feb 25, 2014)

  • PHP lib stubs:
  • WI-21748 (Bug) - PDO::prepare() arguments
  • No subsystem:
  • IDEA-117734 (Bug) - Clipboard history no longer works by num hotkeys
  • IDEA-118412 (Bug) - 'Update copyright' on CSS file always adds
  • IDEA-120665 (Bug) - Custom file type identifiers should include underscores
  • HTML:
  • WEB-10916 (Performance Problem) - Heavy memory usage to the point of crashing
  • Language Injection:
  • IDEA-114386 (Bug) - Width of Inject Language options
  • Plugin: Deployment _ FTP..:
  • WI-22010 (Bug) - Sharing password states between server and its copy
  • SQL:
  • IDEA-120529 (Bug) - Duplicated 'in' in sql console
  • Terminal:
  • IDEA-118846 (Usability Problem) - Editors content not auto synced on terminal activation
  • Version Control:
  • IDEA-119753 (Usability Problem) - Commit to several repositories => proposed commit message is joined from latest two messages from previous commits to these repositories
  • IDEA-117248 (Bug) - Commit preview has unformatted commit-message
  • IDEA-120178 (Exception) - RuntimeException if a branch selected in the branch filter doesn't exist in one of repositories in a multi-repo project
  • Version Control. Mercurial:
  • IDEA-120663 (Usability Problem) - Log and History broken for mercurial 2.9

New in PhpStorm 7.1.3 Build 133.925 EAP (Feb 19, 2014)

  • PHP lib stubs:
  • WI-21748 (Bug): PDO::prepare() arguments
  • Plugin: Deployment _ FTP..:
  • WI-22010 (Bug): Sharing password states between server and its copy
  • No subsystem:
  • IDEA-117734 (Bug): Clipboard history no longer works by num hotkeys
  • IDEA-118412 (Bug): 'Update copyright' on CSS file always adds
  • HTML:
  • WEB-10916 (Performance Problem): Heavy memory usage to the point of crashing
  • Language Injection:
  • IDEA-114386 (Bug): Width of Inject Language options
  • SQL:
  • IDEA-120529 (Bug): Duplicated 'in' in sql console
  • Terminal:
  • IDEA-118846 (Usability Problem): Editors content not auto synced on terminal activation
  • Version Control:
  • IDEA-119753 (Usability Problem): Commit to several repositories => proposed commit message is joined from latest two messages from previous commits to these repositories
  • IDEA-117248 (Bug): Commit preview has unformatted commit-message
  • IDEA-120178 (Exception): RuntimeException if a branch selected in the branch filter doesn't exist in one of repositories in a multi-repo project
  • Version Control. Mercurial:
  • IDEA-120663 (Usability Problem): Log and History broken for mercurial 2.9

New in PhpStorm 7.1.2 Build 133.803 (Feb 4, 2014)

  • PHP Completion:
  • WI-18235 (Exception) - @method Exception is thrown during completion base methods in PHPDoc
  • PHP Inspections:
  • WI-17304 (Bug) - Incorrect 'field not found' inspection warning for an interface with __get method
  • WI-13654 (Bug) - Inconsistent handling of type hints in @method phpdoc for namespaced classes
  • PHP lang:
  • WI-21828 (Bug) - Auto-complete failure on "double value" blocks
  • WI-21860 (Bug) - @method with array return type break up code completion
  • WI-8403 (Bug) - UML: Provide separate category for class constants on the PHP UML diagrams.
  • WI-21520 (Bug) - PhpIndex inconsistent api on interface
  • WI-21877 (Bug) - "Import class" intention stopped working on Classname[]
  • WI-21740 (Exception) - Exception is thrown during Find Usages: Read access is allowed from event dispatch thread or inside read-action only
  • WI-21903 (Exception) - Exception is thrown on indexing invalid constant name
  • PHP lib stubs:
  • WI-21988 (Bug) - Function mb_ereg_replace_callback is not recognized
  • WI-21928 (Bug) - Stubs missing T_YIELD constant
  • WI-21843 (Bug) - Incorrect openssl_get_publickey signature in openssl.php
  • WI-18395 (Bug) - Incomplete IDE information for is_a() function
  • No subsystem:
  • IDEA-111684 (Usability Problem) - Quick Documentation should resolve values for aggregated / indirect constants
  • WEB-10470 (Bug) - CoffeeScript: Incorrect unexpected token error when have newlines in arrays with splats
  • IDEA-115351 (Bug) - Idea UI hangs after performing Move Module to group
  • CoffeeScript:
  • WEB-10680 (Bug) - WebStorm 7.0.3 marks valid CoffeeScript code as invalid
  • WEB-10438 (Bug) - CoffeeScript: "Expected end of line" but it should not
  • WEB-10690 (Bug) - "new" keyword in coffescript is mark as unexpected token
  • Database:
  • IDEA-119845 (Bug) - Rename MySQL field wrong syntax
  • IDEA-120141 (Bug) - DELETE statement should not be limited with "result set page size"
  • IDEA-120179 (Bug) - Executing plsql procedure calls with named parameters incorrectly asks for user input
  • IDEA-119708 (Bug) - Cannot create package
  • File System:
  • IDEA-55171 (Bug) - under some conditions a one-thread self-deadlock appears
  • IDE Configuration:
  • IDEA-56096 (Usability Problem) - Allow to create file templates with extension contains dot
  • IDEA-103743 (Cosmetics) - Settings > Code Style > Arrangement UI glitch
  • Plugin Support. Architecture:
  • IDEA-119498 (Bug) - Cannot install/uninstall any plugin if run IDE with project as parameter from console
  • SQL:
  • IDEA-119790 (Performance Problem) - SQL files are reindexed on every IDE start
  • Task Management:
  • IDEA-119510 (Bug) - PivotalTracker: Cannot resolve issue
  • Version Control:
  • IDEA-119738 (Bug) - Problem with Android Studio connecting to wrong VCS (Git vs. Mercurial)
  • IDEA-116322 (Bug) - Structure filter works incorrectly when there are several repos
  • IDEA-119316 (Bug) - Vcs Log: Go To Hash/Commit/Ref doesn't work in case of active filters
  • Version Control. Git:
  • IDEA-119887 (Bug) - Incompatible with Git from Debian repository
  • IDEA-120042 (Bug) - [git] Log tool window is "Loading..." indefinitely
  • IDEA-119693 (Bug) - Share project on Github shouldn't add worspace.xml to Git
  • WI specific:
  • WI-21838 (Bug) - About window has 2013 year

New in PhpStorm 7.1.2 Build 133.768 EAP (Feb 1, 2014)

  • PHP Inspections:
  • WI-17304 (Bug) - Incorrect 'field not found' inspection warning for an interface with __get method
  • WI-13654 (Bug) - Inconsistent handling of type hints in @method phpdoc for namespaced classes
  • PHP lang:
  • WI-21828 (Bug) - Auto-complete failure on "double value" blocks
  • WI-21860 (Bug) - @method with array return type break up code completion
  • WI-8403 (Bug) - UML: Provide separate category for class constants on the PHP UML diagrams.
  • WI-21877 (Bug) - "Import class" intention stopped working on Classname[]
  • WI-21903 (Exception) - Exception is thrown on indexing invalid constant name
  • PHP lib stubs:
  • WI-21928 (Bug) - Stubs missing T_YIELD constant
  • WI-21843 (Bug) - Incorrect openssl_get_publickey signature in openssl.php
  • WI-18395 (Bug) - Incomplete IDE information for is_a() function
  • WI specific:
  • WI-21838 (Bug) - About window has 2013 year
  • No subsystem:
  • IDEA-111684 (Usability Problem) - Quick Documentation should resolve values for aggregated / indirect constants
  • WEB-10470 (Bug) - CoffeeScript: Incorrect unexpected token error when have newlines in arrays with splats
  • IDEA-115351 (Bug) - Idea UI hangs after performing Move Module to group
  • CoffeeScript:
  • WEB-10680 (Bug) - WebStorm 7.0.3 marks valid CoffeeScript code as invalid
  • WEB-10438 (Bug) - CoffeeScript: "Expected end of line" but it should not
  • WEB-10690 (Bug) - "new" keyword in coffescript is mark as unexpected token
  • Database:
  • IDEA-119708 (Bug) - Cannot create package
  • IDEA-119845 (Bug) - Rename MySQL field wrong syntax
  • File System:
  • IDEA-55171 (Bug) - under some conditions a one-thread self-deadlock appears
  • IDE Configuration:
  • IDEA-56096 (Usability Problem) - Allow to create file templates with extension contains dot
  • IDEA-103743 (Cosmetics) - Settings > Code Style > Arrangement UI glitch
  • Plugin Support. Architecture:
  • IDEA-119498 (Bug) - Cannot install/uninstall any plugin if run IDE with project as parameter from console
  • SQL:
  • IDEA-119790 (Performance Problem) - SQL files are reindexed on every IDE start
  • Version Control:
  • IDEA-116322 (Bug) - Structure filter works incorrectly when there are several repos
  • IDEA-119316 (Bug) - Vcs Log: Go To Hash/Commit/Ref doesn't work in case of active filters
  • Version Control. Git:
  • IDEA-119887 (Bug) - Incompatible with Git from Debian repository
  • IDEA-120042 (Bug) - [git] Log tool window is "Loading..." indefinitely
  • IDEA-119693 (Bug) - Share project on Github shouldn't add worspace.xml to Git

New in PhpStorm 7.1.1 Build 133.679 (Jan 23, 2014)

  • PHP Completion:
  • WI-21563 (Feature) - Possibility to extend Array Index completion
  • WI-4025 (Usability Problem) - PHP: code completion does not suggest namespace identifier in expressions other than 'new'
  • WI-19515 (Usability Problem) - Exclude current key on array key autocompletion
  • WI-12473 (Bug) - PHP: completion doesn't auto-complete params/variables names in use statement of the closure
  • WI-10924 (Bug) - The IDE does not suggest the class with the same name but from the different namespace
  • WI-21739 (Bug) - Namespaces are shown in completion list for goto labels
  • WI-21806 (Bug) - Namespaces are shown in completion inside string literal
  • WI-21569 (Bug) - Don't complete keywords after namespace reference
  • WI-16317 (Bug) - Empty class is shown in completion if invalid class name exists
  • WI-21705 (Bug) - Backslash prepended to standard functions inside namespace.
  • WI-4591 (Bug) - 'final' keyword completion inside interface
  • WI-18202 (Bug) - use keyword isn't in the list of completion items inside class and trait
  • PHP Formatter:
  • WI-21328 (Usability Problem) - Missing indent for method call after variable name
  • WI-20318 (Bug) - For extends/implements usual indent is using instead of continuation indent
  • PHP Inspections:
  • WI-21533 (Cosmetics) - Annotator bug: several "No content allowed before namespace declaration" warnings on one line
  • WI-21133 (Bug) - throw Exception::factory() will confuse parser and cause validation errors.
  • WI-11472 (Bug) - Missing break statement: Cannot suppress PhpMissingBreakStatementInspection with stacked case statements.
  • WI-17631 (Bug) - Unused private method: incorrect warning if such private method is used directly inside double-quoted string
  • PHP Refactoring:
  • WI-6140 (Usability Problem) - Rename: User friendly class rename refactoring: Renaming namespace "Namespace" to "OtherNamespace\Sub" renames it to "Sub" only.
  • WI-21548 (Usability Problem) - Move Namespace: Cancelling Moved Related Namespaces dialog doesn't cancel movement of namespace in the initial file
  • WI-21585 (Usability Problem) - Move class: trigger error about already existing class although refactoring doesn't change anything
  • WI-21594 (Usability Problem) - Cancel constructor inserting inserts code anyway
  • WI-19241 (Usability Problem) - Extract Interface: undo need to be performed twice if interface in another namespace
  • WI-21555 (Bug) - Extract Interface: creates inconsistent PHPDoc for @property
  • WI-21557 (Bug) - Move Class: Doesn't change occurrences of class when moving from global namespace
  • WI-21558 (Bug) - Move class: change appearance of class name during move from global namespace to global namespace
  • WI-20908 (Bug) - Rename inheritors doesn't take into account namespace
  • WI-21547 (Bug) - Move Namespace: default directory is invalid for Related Namespace if the file is located in the root of the project
  • WI-17319 (Bug) - Class move: Shoud search for noncode usages
  • PHP frameworks:
  • WI-21334 (Exception) - Framework Integration setting does not work
  • PHP lang:
  • WI-8653 (Feature) - Links in PhpDoc not clickable in editor (@link)
  • WI-20512 (Feature) - ENT_HTML401 constant is shown as known even with PHP5.3 language level
  • WI-19110 (Usability Problem) - Complete Statement badly influenced by syntax error
  • WI-20781 (Usability Problem) - Find PHP Method usages Panel presentation need improvements
  • WI-21632 (Cosmetics) - Wrong constructor parameter auto-complete hint
  • WI-17558 (Bug) - "Mix braced namespace declarations with braceless namespace declarations" is not highlighted
  • WI-13866 (Bug) - Find for implemented/overrided methods is not supported
  • WI-17404 (Bug) - @method doesn't use namespace
  • WI-21521 (Bug) - File and Code Templates: Wrong field PhpDoc autocompletion for one line template
  • WI-21490 (Bug) - Unused private method: warning if such private method is used only as a callable parameter
  • WI-16094 (Bug) - Copy Reference: inserts invalid $ sign to constant
  • WI-20690 (Bug) - Find usages of base class works differently for abstract and usual class
  • WI-21487 (Bug) - PHP inspections stuck due to @mixin loop
  • WI-21512 (Bug) - Convert namespace to braced insert additional "{" for mixed namespaces
  • WI-21516 (Bug) - Function declaration current parameter highlight is wrong
  • WI-21475 (Bug) - Convert to short syntax array literal breaks the code
  • PHP lib stubs:
  • WI-21198 (Bug) - Wrong signature for alias function mysql_numrows
  • WI-20201 (Bug) - Incomplete docs for settype()
  • WI-21610 (Bug) - Missing parameter in json_encode() stub
  • WI-18346 (Bug) - date_diff() invalid return value in PHPDoc
  • WI-10522 (Bug) - "pg_fetch_result" with two parameters is reported as incorrect
  • WI-21675 (Bug) - Missing return definition for MongoCollection::distinct()
  • PHP templates:
  • WI-21603 (Bug) - Smarty parser stucks
  • WI-21690 (Bug) - Smarty: ldelim & rdelim not recognized by inspection
  • WI-21478 (Bug) - Smarty editor broken
  • No subsystem:
  • IDEA-81277 (Feature) - Show Constraints for Data Sources
  • IDEA-118159 (Feature) - "Search Everywhere" inconsistent api on ItemPresentation
  • IDEA-74428 (Feature) - Provide UI for changing log settings
  • IDEA-113344 (Usability Problem) - An easy way to exit from full screen mode using mouse
  • IDEA-78206 (Bug) - Constructing 'mailto' link -> cannot resolve file 'mailto'
  • IDEA-118691 (Bug) - Quick Documentation (Ctrl+Q) often does not display correct javadoc after checking parameters with CTRL+P
  • IDEA-118696 (Bug) - Replace with regex: IOOBE at SegmentArray.findSegmentIndex()
  • IDEA-118745 (Bug) - Show directory in editor tabs for non-unique filenames doesn't work for non-project files
  • IDEA-117835 (Bug) - Some IntelliJ IDEA icons are fuzzy on MacBook Pro with Retina
  • IDEA-117555 (Bug) - Search everywhere dialog is being closed immediately
  • IDEA-117831 (Bug) - After deleting last live template in a group, I can't click OK.
  • IDEA-118718 (Bug) - Occasionally seeing "Low disk space on a IntelliJ IDEA system directory partition"
  • IDEA-116071 (Bug) - Field can be final inspection change
  • IDEA-118587 (Bug) - IDEA may not exit with black window
  • CSS:
  • WEB-10225 (Bug) - Injected HTML: goto CSS declaration does not see the other fragments.
  • Code Analysis. Duplicates:
  • IDEA-117649 (Bug) - "Locate Duplicates" action seems to not work with "Class Hierarchy" custom scope.
  • Code Formatting and Code Style:
  • IDEA-116006 (Usability Problem) - Eclipse code style import: import the same xml does not pick up changes until manual synchronization
  • IDEA-114952 (Usability Problem) - Eclipse code style import: would be nice to remember imported file location
  • IDEA-96723 (Bug) - Java Rearranger deletes blank lines in field declarations
  • IDEA-116940 (Bug) - @formatter:off still generating braces
  • IDEA-118264 (Bug) - Rearrange Entries stopped working in Intellij 13
  • IDEA-94950 (Exception) - Code Style | Arrangement: AIOOBE at ArrangementMatchingRulesModel.removeRow() on removing the last rule that is in edit mode
  • Code Navigation:
  • IDEA-104706 (Usability Problem) - Remove currently active file from "Recent Files" popup
  • CoffeeScript:
  • WEB-7251 (Bug) - renaming a variable with @ in coffeescript is not allowed
  • WEB-9497 (Bug) - CoffeeScript: Incorrect end of line expected in extends clause
  • WEB-10065 (Bug) - Good code is red
  • WEB-9888 (Bug) - Good coffeescript marked red
  • WEB-8867 (Bug) - CoffeeScript: Unused warnings
  • WEB-9899 (Bug) - CoffeeScript parser incorrectly determines function parameter count
  • WEB-9964 (Exception) - CoffeeScript: AssertionError on editing expression with injected RegExp
  • Compiling Project:
  • IDEA-100672 (Bug) - Artifact not updated on build
  • Cucumber:
  • RUBY-14423 (Bug) - "Find Usages" in a cucumber step definition no longer shows the cucumber step as matching
  • Database:
  • IDEA-96081 (Feature) - Navigation bar could work for database objects, table editor, database console
  • IDEA-117701 (Feature) - Database: Ability to interactively change the password after login
  • IDEA-116280 (Feature) - Set cursor at postgresql error position
  • IDEA-117925 (Usability Problem) - Unsaved data sources changes are not considered for some actions
  • IDEA-118326 (Usability Problem) - Assign Data Sources | Data Source row should indicate user can change it
  • IDEA-117199 (Bug) - Database console: incorrect icons for consoles when trying to run a .sql file
  • IDEA-118705 (Bug) - Database: navigation to 'Referencing Rows Only' doesn't show the filter criteria that was used
  • IDEA-117976 (Bug) - Database table editor: Enter should start editing of value in selected cell
  • IDEA-117991 (Bug) - When refreshing datasources tree show databases before refreshing all the items
  • IDEA-110464 (Bug) - IDEA SQL plugin cannot connect to remote database over VPN
  • IDEA-119501 (Bug) - View editor operation fails for DB2 tables
  • IDEA-119313 (Bug) - Copy path problem
  • IDEA-108516 (Bug) - Unable to rename schema of DDL Data Source in Database panel
  • IDEA-119129 (Bug) - Use alternative table scanning method when user has no read access to all databases
  • IDEA-118283 (Bug) - Database: "Rename table" for MySQL tables causes exception
  • IDEA-119119 (Bug) - MySQL views with subquery in definition fail to open
  • IDEA-117802 (Bug) - DDL data source in Database tab doesn't support multiple schemas
  • IDEA-117670 (Bug) - Database: TableEditor invalid navigate via foreign key
  • IDEA-119245 (Exception) - Database console: IOOBE at SegmentArray.findSegmentIndex()
  • Debugger:
  • WEB-9566 (Feature) - Debugger: optionally ignore certificate errors
  • IDEA-105253 (Cosmetics) - Missing icon for Thread dumps view
  • WEB-10283 (Bug) - JS chrome Debug: fails with Nesting problem when changing value in debugger
  • WEB-10360 (Bug) - Javascript debugger with non unique file names
  • Editing:
  • PY-6095 (Bug) - Accepting a completion with TAB results in a syntax error
  • RUBY-14617 (Bug) - do[enter] inserts DocumentError instead of a new line
  • Editor. Code Completion:
  • IDEA-117327 (Task) - Add a setting to switch off autopopup completion item selection by Enter
  • IDEA-115727 (Bug) - Cyclic Expand Word leaves word highlighted
  • IDEA-117511 (Bug) - Hippie completion not working as expected in Intellij 13
  • Editor. Editing Text:
  • IDEA-57940 (Bug) - Cyclic expand word should take into account all open files
  • IDEA-113684 (Bug) - Soft wraps insert additional spaces
  • IDEA-117127 (Exception) - Editor: Throwable on Select word at caret inside plain text
  • Editor. Error Highlighting:
  • IDEA-23831 (Bug) - highlight usages: problems with split files
  • Find, Replace, Find Usages:
  • IDEA-118742 (Performance Problem) - UI Hang during search
  • IDEA-104735 (Cosmetics) - Dracula: INVALID string have not dracula style red color in Find Occurance tool window.
  • IDEA-119153 (Bug) - file search too wide for users folder
  • IDEA-97930 (Bug) - Idea 12: Find Usages (Alt-F7) always searches in libraries by default, disregards the Scope setting
  • HTML:
  • WEB-8262 (Bug) - Comment with line/block comment STILL doesn't work on HTML in ASP file
  • WEB-2229 (Bug) - Html with strict DTD doesn't end the img tag properly
  • IDE Configuration:
  • IDEA-118292 (Usability Problem) - Confusing custom config/system path configuration in idea.properties (${idea.config.path} is not expanded)
  • IDEA-118111 (Bug) - Can't close IDEA 13 (Ubuntu linux)
  • IDEA-118330 (Bug) - IDE hangs
  • IDEA-118763 (Bug) - Can't start IDEA after deinstalling a plugin
  • IDEA-119470 (Bug) - File and code templates: changes gone when switching tabs
  • Indices:
  • IDEA-118211 (Performance Problem) - Performance problem when closing project
  • Injections in PHP:
  • WI-21150 (Usability Problem) - CREATE UNIQUE INDEX should be detected as SQL injected language
  • IntelliJ Platform:
  • WI-13685 (Bug) - PhpStorm doesn't save project name
  • Java. Code Completion:
  • IDEA-94683 (Bug) - Completion popup loses focus when viewing documentation (sometimes, almost always)
  • Java.Inspections:
  • IDEA-117883 (Cosmetics) - Inspection descriptions talk about "the list/checkbox below"
  • JavaScript:
  • WEB-7157 (Bug) - Variable to which the result of 'require' call is assigned is not highlighted as unused
  • WEB-10171 (Bug) - Usage of unintialized variable not reported
  • WEB-6700 (Bug) - TODOs not recognized on multiple level language template
  • WEB-6911 (Bug) - Mysteriously missed Debug file in JavaScript Library
  • WEB-8170 (Bug) - Code completion issue with NodeJS and module.exports
  • WEB-6168 (Bug) - ExtJS: external documentation for ExtJS 4.1 doesn't work
  • WEB-849 (Bug) - "Comment with line comment" on empty line in block generates HTML instead of JS comment
  • WEB-10532 (Bug) - IntelliJ IDEA 13 Freezes editing JavaScript
  • WEB-9817 (Bug) - Node.js: global functions defined as 'global['name']' not resolved
  • JavaScript. Formatter:
  • WEB-7553 (Bug) - Incorrect indentation with chained calls
  • Language Injection:
  • IDEA-79522 (Bug) - need ability to set display names for xml attribute and xml tag language injections
  • IDEA-111535 (Bug) - Edit Language Fragment: Synchronization is broken after tab drag
  • IDEA-119619 (Bug) - Settings / Language Injections: project level XML tag injection loses Sub-Tags value on IDE restart
  • Node.js:
  • WEB-10309 (Bug) - Stepping through node debugging session fails with sourcemapped files if built files are excluded from workspace (repo steps and example project)
  • WEB-9517 (Bug) - Npm: Error loading package list
  • Packaging and Installation:
  • IDEA-118446 (Bug) - Installation and plugin update (patch) download ignores Settings / HTTP Proxy
  • Plugin: Deployment _ FTP..:
  • WI-21673 (Cosmetics) - Typo in the FTP warning message
  • WI-21460 (Bug) - Any In place server mapping with '/' in Web Path is replaced with mapping with project root in local path
  • Plugin: Drupal support:
  • WI-21662 (Bug) - Drush output parsing broken on null options description
  • Project View:
  • IDEA-118250 (Usability Problem) - IntelliJ thinks intentional new directory names are filenames and tries to default them to files
  • REST Client:
  • WEB-9845 (Bug) - REST-Tool: Save Request to .xml
  • SQL:
  • IDEA-93034 (Usability Problem) - SQL: MySQL: erasing the first backtick could erase the pair
  • IDEA-50739 (Usability Problem) - SQL: Insert Values Inspection: do not warn (optionally?) if absent arguments can be inserted due to DEFAULT clauses
  • IDEA-119260 (Usability Problem) - PostgreSQL: ALTER ROLE/DATABASE SET search_path not parsed correctly
  • IDEA-116149 (Usability Problem) - PostgreSQL: Missing column alias when subquery uses CAST or ::
  • IDEA-119255 (Usability Problem) - PostgreSQL: ORDER BY in aggregate only allows two sort columns
  • IDEA-118945 (Bug) - HSQLDB dialect does not recognize DB2/MSS/PGS syntaxes
  • IDEA-119287 (Bug) - MySQL "set names " treated as error in database console
  • IDEA-46068 (Bug) - SQLite: REINDEX with collation name is yellow
  • IDEA-118076 (Bug) - rename alias in SQL console surrounds alias with quotes
  • IDEA-116905 (Bug) - PostgreSQL: window function "min" has errors
  • IDEA-117208 (Bug) - MySQL reformat fails to convert null literal to upercase
  • IDEA-117850 (Bug) - Code Style > SQL > New Line before - Join Condition does not work when unchecked
  • IDEA-117092 (Bug) - Submit MySQL query stucks with special comment
  • IDEA-117606 (Bug) - PostgreSQL: references to user are not resolved
  • IDEA-116407 (Bug) - Oracle callable expected false positive
  • IDEA-118573 (Bug) - Oracle "DROP INDEX" marked as syntax error
  • IDEA-113174 (Bug) - Oracle SQL: support INSERT INTO in prepared statements
  • IDEA-119582 (Bug) - Oracle database "create type body" is parsed incorrectly under "Oracle SQL*Plus" dialect
  • IDEA-119258 (Bug) - PostgreSQL: HEADER keyword in COPY highlighted as error
  • IDEA-119653 (Bug) - Database plugin marks blob column definition as error on hsqldb
  • IDEA-117431 (Bug) - Identifier quotation will incorrectly quote MySQL variables
  • IDEA-104127 (Bug) - Good code is red: using parameters to a stored procedure as values on a limit clause
  • IDEA-119321 (Bug) - PostgreSQL: OFFSET is allowed before LIMIT
  • IDEA-117899 (Bug) - SQL: column scope is not determined correctly
  • IDEA-57415 (Bug) - SQL: HSQLDB: quoted names are resolved ignoring case
  • IDEA-117313 (Bug) - Oracle syntax problem
  • IDEA-119105 (Bug) - MySQL lowercase functions are not resolved
  • IDEA-119193 (Bug) - DB2 validator does not understand the "DEFINITION ONLY" clause
  • IDEA-119290 (Bug) - PostgreSQL 9.3: DROP/ALTER MATERIALIZED VIEW not supported
  • IDEA-117129 (Bug) - Bad indent of brace in MySQL JOIN
  • TypeScript:
  • WEB-10058 (Bug) - Typescript reference
  • WEB-10082 (Bug) - TypeScript: Type problems with namespaces
  • Unit Tests:
  • WEB-10387 (Bug) - Mocha console log statements are not correctly aligned to their encasing tests
  • User Interface:
  • IDEA-119445 (Usability Problem) - Remove first slash in "copy reference"
  • IDEA-118616 (Bug) - Lens mode with tool windows on the right side
  • IDEA-117772 (Bug) - Deadlock IDEA 13
  • User Interface.Darcula:
  • IDEA-118004 (Cosmetics) - Find's Regex Help Popup table header bad color with darcula
  • Vagrant:
  • PY-11687 (Feature) - RFE: Pass Shell Variables to Vagrant
  • PY-9994 (Feature) - Multiple Vagrant configurations in Vagrantfile
  • PY-9869 (Feature) - Cannot execute "vagrant provision" from PyCharm
  • PY-9854 (Feature) - Cannot start Vagrant with --provider=vmware_fusion
  • PY-10756 (Usability Problem) - Vagrant icons don't show when actions are added to the toolbar
  • PY-11755 (Usability Problem) - Vagrant: loading settings takes significant amout of time if there are some plugins installed
  • PY-8995 (Usability Problem) - Vagrant: propose to add vagrant box when there is no one yet configured
  • PY-11493 (Cosmetics) - Vagrant: up icon is too small compared to the rest of the icons
  • PY-11699 (Bug) - no vagrant box in settings
  • PY-11750 (Bug) - Vagrant: Init: project selection popup is not closed after selection
  • PY-11691 (Exception) - Exception on every Vagrant settings open
  • PY-11751 (Exception) - Vagrant: Init: Access is allowed from event dispatch thread only. Throwable at com.intellij.openapi.application.impl.ApplicationImpl.a
  • Version Control:
  • IDEA-115594 (Usability Problem) - 'Commit Changes' dialog joins two (or more) previous commit messages
  • IDEA-115901 (Usability Problem) - VCS-Log: Save view selection on refresh
  • IDEA-116242 (Usability Problem) - Allow multiple user selection in the user filter of new VCS Log
  • IDEA-116834 (Performance Problem) - Moving through the list of filtered commits is slow
  • IDEA-117680 (Bug) - Changes from 2 selected commits aren't merged, 2 files with the same name are shown in the right part of panel
  • IDEA-119247 (Bug) - Git log filtered results should be requested from Git pre-sorted by --date-order
  • IDEA-116718 (Bug) - Git Log: Moving selection skips some commits
  • IDEA-118644 (Bug) - Apply patch places new file in new package into incorrect source root
  • Version Control. Git:
  • IDEA-116738 (Bug) - git amend: does not process line endings correctly
  • IDEA-114111 (Bug) - Cherry pick doesn't commit renamed files
  • IDEA-116207 (Bug) - When selecting several commits in git log, and invoking "Show Diff", diff is empty
  • Version Control. Perforce:
  • IDEA-119183 (Bug) - Perforce: when 'use login authentication' option is off, it is impossible to go online from offline mode
  • IDEA-119189 (Bug) - Perforce: when 'use login authentication' is off, it is impossible to work with the integration
  • XML:
  • IDEA-115702 (Exception) - DomAnchorImpl exception

New in PhpStorm 7.1.1 Build 133.626 EAP (Jan 17, 2014)

  • Bug fixes and improvements:
  • Backslash prepended to standard functions inside namespace.
  • Find PHP Method usages Panel presentation need improvements
  • Find usages of base class works differently for abstract and usual class
  • For extends/implements usual indent is using instead of continuation indent
  • Smarty: ldelim & rdelim not recognized by inspection
  • Typo in the FTP warning message
  • Annotator bug: several "No content allowed before namespace declaration" warnings on one line
  • throw Exception::factory() will confuse parser and cause validation errors.
  • "Mix braced namespace declarations with braceless namespace declarations" is not highlighted
  • To be documented: Find for implemented/overrided methods is not supported

New in PhpStorm 7.1.1 Build 133.564 EAP (Jan 10, 2014)

  • Bug fixes and improvements:
  • PHP: completion doesn't auto-complete params/variables names in use statement of the closure
  • PHP: code completion does not suggest namespace identifier in expressions other than 'new'
  • Code completion with namespaces doesn't show all possibilities in static call
  • Auto-import: Doesn't work for function
  • The IDE does not suggest the class with the same name but from the different namespace
  • 'final' keyword completion inside interface
  • Class completion throws an exception
  • Autocompletion of namespace in @var
  • Incorrect handling of direct sub-namespaces
  • use keyword isn't in the list of completion items inside class and trait
  • autocomplete for static method shows only full namespace
  • Smarty parser stucks
  • Exclude current key on array key autocompletion
  • No hint if same class names(diff namespaces)
  • Completion for functions and variables doesn't take into account namespaces
  • Drush output parsing broken on null options description
  • Cancel constructor inserting inserts code anyway
  • Move class: trigger error about already existing class although refactoring doesn't change anything
  • Don't complete keywords after namespace reference
  • Possibility to extend Array Index completion
  • Move class: change appearance of class name during move from global namespace to global namespace
  • Move Class: Doesn't change occurrences of class when moving from global namespace
  • Extract Interface: creates inconsistent PHPDoc for @property
  • Completion append "\" for the namespaced class in the same namespace
  • Wrong signature for alias function mysql_numrows
  • Rename inheritors doesn't take into account namespace
  • Complete Statement badly influenced by syntax error
  • Auto-completion:

New in PhpStorm 7.1.1 Build 133.437 EAP (Dec 27, 2013)

  • Fixes and improvements:
  • Rename: User friendly class rename refactoring: Renaming namespace "Namespace" to "OtherNamespace\Sub" renames it to "Sub" only.
  • date_diff() invalid return value in PHPDoc
  • Unused private method: incorrect warning if such private method is used directly inside double-quoted string
  • Smarty editor broken
  • Move class: undo have to be performed twice after refactoring
  • Extract Interface: undo need to be performed twice if interface in another namespace
  • Class move: Shoud search for noncode usages
  • Rename namespace: Doesn't allow to change namespace to global namespace
  • Move Namespace: Cancelling Moved Related Namespaces dialog doesn't cancel movement of namespace in the initial file
  • Move Namespace: default directory is invalid for Related Namespace if the file is located in the root of the project
  • Convert namespace to braced insert additional "{" for mixed namespaces
  • Unused private method: warning if such private method is used only as a callable parameter
  • PHP inspections stuck due to @mixin loop
  • Convert to short syntax array literal breaks the code
  • Any In place server mapping with '/' in Web Path is replaced with mapping with project root in local path
  • Missing indent for method call after variable name
  • ENT_HTML401 constant is shown as known even with PHP5.3 language level
  • Incomplete docs for settype()

New in PhpStorm 7.1 Build 133.326 (Dec 17, 2013)

  • On the PHP side:
  • Exception breakpoints and Xdebug jit option support
  • Full Doctrine-style PHP Annotations support via updated Open API
  • A way to document mixins regardless of PHP version: PhpStorm will interpret @mixin annotation the same way as actual "use trait"
  • VCS-friendly Deployment configs: deployment mappings and excluded paths are now saved in .idea/deployment.xml. They are mapped to servers by names
  • Clickable @link URLs in editor
  • Special treatment for protected member access on @var-declared $this in Views
  • Parameter name suggestion based on its type name
  • and many other bug fixes and improvements.
  • On the web side:
  • Mocha framework integration
  • Improved support for Dart language
  • LESS 1.5.0 is supported.
  • Fixes, improvements and features, such as:
  • Search everywhere
  • Lens mode
  • New minimalistic and functional interface
  • Speed search
  • Navigate to folder
  • Improved Find in Path
  • New fast and powerful log viewer for Git and Mercurial
  • Support for Subversion 1.8 (via the native client)
  • Retina support in JDK 7
  • Better performance with faster Find Usages and Navigate to Actions, and more responsive editor during indexing

New in PhpStorm 7.1 Build 133.214 EAP (Dec 5, 2013)

  • Bug fixes, improvements, and small features:
  • Add Symfony framework support
  • Add support for Doctrine and Symfony annotations (and similar)
  • Symfony2, SC, recognize available services to provide autocompletion
  • Unused import: "Unused statement use" reported when using Doctrine annotations
  • Autocomplete for static calls shows only one class if multiple classes with same name exist in different namespaces
  • When using annotations, imports are not added automatically.
  • Suggest parameter name based on type-hint
  • Framework Views: Autocomplete via variable name
  • Put imported class at top position within completion context
  • The 'Reformat Code' feature is changing the case of placeholder in Doctrine createQuery strings.
  • minimum blank lines - around class
  • Exception is thrown on copy/paste of unfinished code
  • Interface method implementations should be hinted, not only marked as error.
  • bad phpdoc for openssl_get_privatekey
  • when using autoformat this breaks annotations

New in PhpStorm 7.1 Build 133.168 EAP (Dec 2, 2013)

  • Bug fixes and improvements:
  • WI-8653 Links in PhpDoc not clickable in editor (@link)
  • WI-5076 Allow protected member access on @var $this (i.e. in views)
  • WI-7026 PHP: access to protected member of the same parent class descendant is red
  • WI-19440 New PHP 5.5 functions are missing
  • WI-14174 wrong comment using CTRL+/
  • WI-20923 each SFTP sync/upload request confrim and show popup
  • WI-19441 New classes and interfaces from PHP 5.5 are missing
  • WI-15741 incorrect behavior on block-commenting PHP if-else
  • WI-21081 PHP 5.5 Functions Missing - OPcache
  • WI-21058 Reformat code freezes IDE
  • SFTP server not support ChannelSftp.setFilenameEncoding
  • WI-21258 Patch size lies on update info window
  • WI-21256 Multi-line commenting with strange results
  • WI-21234 Exception is thrown on goto declaration
  • WI-21193 Empty plugin list after suggestion pops up
  • WI-21095 Drug-n-Drop inside RemoteHost broken
  • WI-21044 php function assert() has second parameter as of php 5.4.8
  • WI-20967 Smarty comments are deindented
  • WI-20930 MongoDb, need update class definition
  • WI-20792 Cut in deployment, paste in local, copies instead

New in PhpStorm 7.1 Build 133.51 EAP (Nov 19, 2013)

  • Highlights:
  • A way to document mixins: now PhpStorm interprets @mixin regardless of PHP version just the same way it interprets “use trait” (see WI-1730 for details)
  • ‘Exception breakpoints’ are supported (see WI-7966 for details)
  • PHP 5.5 standard libs updated, all the PHP 5.5 new classes/interfaces/functions added
  • Deployment changes: deployment mappings and excluded paths are saved in .idea/deployment.xml. They are mapped to servers by names, so that config is suitable to put under VCS (see WI-715 for more information)
  • Bug fixes and improvements:
  • WI-1730: A way to document mixins (method and property delegation)
  • WI-7966: Support of 'Exception breakpoint'
  • WI-14476: When hovering over variable, Expression Evaluation tooltip disappears before I can click the + icon
  • WI-14205: Problem in syncronization with remote server
  • WI-19440: New PHP 5.5 functions are missing
  • WI-11014: WebDeployment: Download of up-to-date files doesn't create a revision
  • WI-19441: New classes and interfaces from PHP 5.5 are missing
  • WI-19315: Exiting presentation mode doesn't shrink "remote host" page
  • WI-20932: $GLOBALS > Watches cannot evaluate expression
  • WI-20689: Remote Host tool window: ISE at ToolWindowManagerImpl.checkId() on closing
  • WI-20492: Mappings and excluded folders are missed during import settings from previous version
  • WI-20460: Command Line tools Console does not support color (on Windows)
  • WI-20420: If there is no php.ini for a selected configuration there will be no notifications about this fact
  • WI-20317: Don't make silently other server default after deleting default one
  • WI-20177: Core Tasks should be updated
  • WI-20148: Watch not working for $_SESSION vars in EAP 7
  • WI-17167: Failed to determine namespace on new -> class action
  • WI-14827: Why created Deployment server has invalid configuration after creation — Web path is not specified
  • WI-20547: Composer init should ask for the license
  • WI-20515: Default server for the project is not ported
  • WI-20292: Attempt to delete a default server leads to exception
  • WI-20184: Optional tasks should be updated
  • WI-20160: Incorrect 'sequential' tag handling
  • WI-17334: Namespaces added by folder
  • WI-13871: Phar: refactor/rename for phar archive should update include directives

New in PhpStorm 7.0.1 Build 131.487 EAP (Nov 8, 2013)

  • Xdebug: Support 'xdebug.remote_mode = jit' option
  • Command Line Tool: Append standard extensions to command/file name when provided file name does not have exact match on Windows OS (e.g. phpunit -> phpunit.bat)
  • debuging variables with umlauts -> can not get property
  • Show output when creating composer project
  • Command Line Tool: IDE does not search for command/file name in current/project folder
  • Append standard extensions to command/file name when provided file name has more than one dot in file name
  • Memcached increment/decrement documentation bug
  • Sort in Excluded Paths doesn't merge empty local and deployment path to their groups

New in PhpStorm 7.0.1 Build 131.441 EAP (Oct 31, 2013)

  • Reformat breaks code with keywords in condition and if line is too long
  • Save project files before executing a command
  • Goto Declaration and Find Usages for call_user_func()
  • The class name in not highlighted within instanceof statement
  • Validate Remote Environment: provide better error logging
  • Rename refactoring produces unexpected results damaging code
  • Settings -> Editor -> Change font size (Zoom) with Ctrl + NumpadAdd / NumpadSub
  • File deployment: drag and drop of java class item is disabled
  • Formatting for chained methods with concatenation is wrong
  • Indentation for function with 2+ and 1 parameter are different
  • Place caret after parameter list on hook completion
  • Rename with non latin letter: exception is thrown and not all places are updated
  • Update phpdoc command deletes first argument
  • Smarty 3: step keyword isn't recognized as a part of for loop
  • SFTP: Ask if host should be added to known_hosts
  • autoadd semicolon to end of new code line
  • Validate Remote Environment: Don't modify permission of server deployment
  • Composer XML output parsing cannot handle outdated composer.phar warning
  • Map help ids for 'select path' dialogs
  • Error in ReflectionParameter::getDeclaringFunction() stub
  • Import FQN with creation of alias in @return does not maintain array
  • Move Static Method: "class keyword" are not handled if used as class names in function argument
  • Drush > error > Failed to parse command output
  • Include path is ignored when the project root is part of the include path
  • File-level annotations interpreted as closure-level
  • Rearranger: exception during reformatting of large file
  • Composer file chooser dialog behaves inconsistent with description and user expectations

New in PhpStorm 7.0 Build 131.374 (Oct 22, 2013)

  • PHP LANGUAGE SUPPORT:
  • Be on trend with the latest PHP changes:
  • PHP 5.5 is now fully supported, including generators, coroutines, the finally keyword, list in foreach, using empty() on the result of function calls and other expressions, class name resolution as scalar via the class keyword, and constant array/string dereferencing.
  • Efficient code reading:
  • PhpStorm 7 features brand-new readability experience with improved PHP syntax coloring for various constructs. There are separate colors for: Function and method declarations; Function calls, static and instance method calls; Classes and interfaces, static and instance class fields. Improved coloring — looks most impressive in Darcula, a dark UI which we’ve also enhanced.
  • Keep your code neat:
  • There are also new refactorings to keep your code as neat as possible: Move Static Member and Extract Interface. New php-related inspections and quick-fixes are also introduced, as well as a lot of type inference and PHPDoc improvements.
  • BUILT-IN TOOLS:
  • Get an environment running in no time and share it with your team:
  • Vagrant is a handy tool natively integrated in PhpStorm designed to help you create reproducible development environments. It allows you to share a development virtual machine by sharing a simple script. Other developers can then launch an identical machine by running the vagrant up command.
  • Smart & easy remote configuration:
  • The Built-in SSH Console let you connect to a remote machine and perform any actions via SSH. Also, SSH Remote Tools can be configured to run any remote tool right from the IDE in a single keystroke.
  • To streamline your command-line experience, PhpStorm also integrates full local terminal emulation environment — run any local application or script in the IDE terminal window.
  • Framework-specific command-line tools at your fingertips:
  • Native support with command completion for command-line tools is enhanced even more: this version includes support for Zend Framework 2 Tool (ZFTool), Tools based on Symfony Console (such as Laravel and Doctrine), and Drush (Drupal Tool).
  • Google App Engine for PHP Support:
  • Develop applications for Google App Engine for PHP and delegate routine deployment tasks to the IDE. Create your app, run it and deploy it to the GAE server without leaving PhpStorm.
  • Other built-in tools included in PhpStorm have also been updated: Built-in REST Client is now improved with added support for request history, import/export of XML files with REST Client Requests, and compressed responses; Composer Add Dependency dialog now shows what packages are already installed; and more.
  • DEBUGGING AND TESTING:
  • Debugger configuration validation:
  • There is nothing more frustrating than not getting PHP Debugging in PhpStorm to work because of some tiny configuration error in php.ini. Now, starting with version 7, the IDE can help you quickly find the reason and save time.
  • When configuring the PHP interpreter for project, PhpStorm will inform you if a debugger is installed and will yield Xdebug or Zend Debugger version. From PHP Servers Settings window, we can validate our debugger setup: we can test the remote deployment environment on which we want to use the debugger and validate the debugger configuration. PhpStorm will tell us if anything is missing, and how to fix that.
  • Debugging with Smart Step Into:
  • This debugging feature allows you to choose the function to step into while debugging. This functionality also works with dynamic function calls.
  • PHPUnit on Server Improvements:
  • In PhpStorm 7, PHPUnit on server has been significantly reworked: now it can be configured using an XML configuration file. PHPUnit 3.7 is now also supported.
  • FRAMEWORKS AND PLUGINS:
  • Drupal Development with PhpStorm:
  • PhpStorm now bundles Drupal Plugin providing many Drupal-specific features for Drupal 7 and 6, some of which work for Drupal 8 as well:
  • Enabling Drupal integration in an existing PhpStorm project, or creating a new Drupal module
  • Development environment auto-configuration (coding standard, file associations, etc.)
  • Drupal hooks support (Completion for hook declaration, Navigation to hook invocations, Navigation to documentation from hook implementation and backwards, Quick docs for hook declaration)
  • Drupal command line tool Drush integration
  • Search in Drupal API right from the editor
  • Framework-specific plugins:
  • Since version 6, PHP Open API has been extended to bring powerful Extension Point which allows third-party plugin creators to provide type inference, code completion, navigation and other IDE best-practices for various PHP frameworks.
  • Symfony2 Plugin:
  • Symfony2 3rd party plugin provides various Symfony Framework related features (such as type inference, code completion, navigation, action) for Symfony Core, Symfony Components, Twig templates, Doctrine, and more.
  • There are also plugins for:
  • Magento
  • CakePHP
  • Yii
  • and other PHP frameworks
  • BRAND NEW WEB TOOLKIT:
  • JavaScript Templates Support:
  • PhpStorm supports EJS template engine (syntax highlighting, typing assistance, formatting, etc), and provides formatting and syntax highlighting for Handlebars and Mustache templates, as well as automatic tag closing.
  • Web Components:
  • Initial support for the cutting-edge technology Web Components is introduced. Custom DOM elements can be created, and PhpStorm will provide completion and CSS support for them.
  • Modern Stylesheets, JavaScript & npm:
  • PhpStorm 7 comes with initial support for Stylus stylesheet language. Code completion, formatting, syntax highlighting, automatic compilation to CSS with file watchers are already available.
  • To enhance your experience with Sass, there is now support for Compass with code completion, functions resolution and finding usages, mixins and variables from imported Compass files.
  • For simple and efficient testing of your JavaScript code, PhpStorm 7 includes integration with the Karma test runner and the istanbul code coverage engine. Now you can run, debug, and view your tests right in the IDE.
  • If you are doing Node.js, PhpStorm features an integrated node package manager npm to quick search for and install node programs.
  • Live Edit and JavaScript Debugging:
  • Live Edit has been completely redesigned to make it more coherent and predictable. Now it is available in JavaScript debug session only: page content will be automatically updated with your changes.
  • Improved JavaScript debugger now has a Variables view (only for Google Chrome and Node.js) and an Elements tab for inspecting elements of the current web-page and showing its contents live.
  • PhpStorm 7 provides support for latest TypeScript 0.9, support for other languages, such as CoffeeScript and Dart has been improved, and there is a new structure view for LESS and Sass.
  • IDE Improvements:
  • PhpStorm 7 strengthens its integration with GitHub by allowing GitHub users to make pull requests right from the IDE.
  • Database tools and SQL editor have been significantly improved to provide you with a unique experience. Changes include new smart code completion for join conditions in SQL statements & more.
  • With the new Presentation mode, the IDE gives you an opportunity to start a demonstration of your code and coding process with just one click, which is very useful for conferences, trainings and classroom use.

New in PhpStorm 7.0 Build 131.332 EAP (Oct 16, 2013)

  • Fixed issues:
  • PHP include_path (set in Preferences) was ignored
  • Undefined method: Do not show Method 'methodName' not found inside if with method_exists($object, 'methodName') check
  • Generating PHPDoc doesn't put line break after comment for function without class
  • Cannot find usages of an interface
  • NoSuchMethod exception on PHP parameter info
  • Add new php 5.5 functions in gd stubs
  • Missing cURL constants
  • Extract interface: merge implements keyword to class if "Blank lines around parameters" is enabled
  • Zend Cache functions
  • Duplicated bookmark icon problem
  • Allow references to DOC_TAG_NAME
  • Not all well-knows system hooks available in hook completion (see hook_form_alter)
  • @param type is used for variable outside of the function
  • "Optimize Imports" and "Never usage detection" detect reference
  • Change link to PHPUnit phar
  • Missing documentation for "Unused local variable" inspection setting
  • Missing documentation for "Undefined variable" inspection
  • New constants from PHP 5.5 are missing
  • Add method: scroll to it's line
  • Move statement: block of code doesn't respect boundaries
  • Map help Id to Settings | Drupal and "Drupal Module"
  • Map help ID to the Move Static Member dialog box
  • SNMP stub missing optional parameters
  • NoSuchMethod exception on code style settings
  • Unused parameter: Option "Don't report when parameters are accessed via func_num_args" is misalligned
  • If default server is not set up then there is no deployment submenu in project view
  • Introduce Field does not offer suggestion when used on new instantiation
  • Move Statement: Dragging the block of code messes up code structure
  • Generating PHPDoc will generate different code reformating results.
  • Simplify FQN in @return does not maintain array marker.
  • Move statement: brace is moved separately if open brace located on a new line
  • Move statement: if caret is located on the last line of PHPDoc then statement won't be moved as a whole
  • Move statement: throws exception during movement of empty lines
  • Move statement: doesn't move case statement outside switch block
  • Annotator: Incorrect error message for import statement that is already in use

New in PhpStorm 7.0 Build 131.235 EAP (Oct 3, 2013)

  • Unused parameter: Unused parameter inspection should be skipped on use of func_get_args()
  • Unused local variable: Unused variables: support of get_defined_vars()
  • Method return value artefacts when passed to another method
  • Inspection missing PHPDoc doesn't detect methods and functions
  • Extending DocBlockTagName completion not possible for plugins
  • Unused import inspection broken when using ClassName[]
  • Usage of "is_object" function makes inspector typecast class variable
  • Failed to download patch from 131.205 to 131.235
  • Not all well-knows system hooks available in hook completion (see hook_form_alter)
  • Place caret after parameter list on hook completion
  • Disable Surround With for code in short tag
  • "Surround with 'if isset...'" breaks code in short tags
  • environment.php.erb cannot be opened makes editor unusable
  • IDE FROZEN: IntelliJ IDEA hangs and doesn't respond on indexing php project
  • Vertical Debug toolbar layout
  • Unused parameter: Option "Don't report when parameters are accessed via func_num_args" is misalligned
  • If default server is not set up then there is no deployment submenu in project view
  • PHP: missing concatenation indentation inside function call
  • Grouping rules disappear after deselecting all of them
  • [php] continuation indent of multiline string
  • Move static member: Attempt to move field/function from trait to class that uses the trait leads to unnecessary warning
  • Phing: Allow to pin Phing Build execution windows
  • Twig: wrong highlight

New in PhpStorm 7.0 Build 131.205 EAP (Sep 27, 2013)

  • Drupal support improvements: hook invocation parameters completion, navigation to *.api.php hint from hook implementation
  • Auto-generated @return PHPDoc for typed arrays
  • New inspections
  • New Phing “Before launch” task: Add Phing’s project name next to the build file name
  • Remote servers list is sorted when creating a new project from existing files
  • Fixed:
  • Variable that was assigned by method that returns static is not accepted as parameter for function with type hinted parameters
  • PhpDoc: false and true seen as class names in @return type
  • Parameter type: Incorrect warning about mismatched parameter types when subclass array is provided where superclass array is expected
  • Drupal support: hook invocation parameters completion
  • Auto-generated @return PHPDoc for typed arrays
  • Add Inspections "Tradional style syntax array detected" "Short style syntax array detected" with quickfix
  • Incorrect formatting of alternative syntax for control structure if/else/endif
  • Incorrect inspection in multiple cases
  • False and true are not subtypes of bool
  • PHP plugin error with IDEA 132.325
  • Unused private properties should be colored in gray
  • Code formatting breaks indentation in nested Doctrine annotations
  • password suite functions from PHP5.5 are unknown
  • New methods from PHP 5.5 are missing
  • Some functions became deprecated and were removed
  • Custom font-color for function parameter makes inspection 'unused parameter' invisible
  • Annoying reformatter bug when: if( ... ) // comment \n function();
  • implement navigation to *.api.php hint from hook implementation
  • Unresolved built-in property phing.dir
  • "Add getter/setter" intentions do not work correctly when used in an interface.
  • Exception in latest Cardea with PHP
  • Exception is thrown if "Add @return tag" fix is invoked on class method outside class
  • CodeFormat destroys inline execution when it has variables
  • Phing "Before launch" task: Add Phing's project name next to the build file name
  • Keyboard invocation of Command Line Tools Console clears user input
  • Sort remote servers when creating a new project from existing files

New in PhpStorm 7.0 Build 131.98 Public Preview (Sep 14, 2013)

  • A summary of improvements and new features:
  • PHP Language Support: PHP 5.5, improved PHP syntax coloring for various constructs, type inference and PHPDoc improvements, new refactorings (Move Static Member and Extract Interface), new inspections and quick-fixes
  • Built-in Tools: Vagrant, built-in SSH console and remote tools, local terminal, support for even more command line tools (Zend Framework 2 Tool, Tools based on Symfony Console (such as Laravel and Doctrine), and Drush for Drupal), Google App Engine for PHP
  • Debugging and Testing: debugger configuration validation, debugging with Smart Step Into, PHPUnit on Server improvements
  • Frameworks and Plugins: Drupal Plugin, 3rd-party plugins for Symfony and other frameworks
  • PhpStorm 7 also includes brand new web toolkit introduced in WebStorm 7:
  • Web Templates Support (EJS, Mustache, Handlebars)
  • Web Components Support
  • Modern Stylesheets, JavaScript & npm: Stylus, Compass, JS Karma test runner and the istanbul code coverage engine, integrated node package manager npm
  • Major Live Edit and JavaScript Debugging changes
  • From the IntelliJ IDEA platform side, this release includes Full Screen Mode for all platforms, Presentation Mode, and many other features and improvements.
  • PhpStorm 7 keeps up with latest PHP & web languages trends, integrates a variety of modern tools, and brings even more extensibility with support for major PHP frameworks.

New in PhpStorm 7.0 Build 131.61 EAP (Sep 6, 2013)

  • From the PHP side, this build delivers:
  • Scope highlighting for PHP control structures – alternative syntax (WI-566)
  • Type inference fixes (e.g. @return static[] now works as it should, WI-13242)
  • Symfony Console standalone for Laravel and Doctrine (WI-18196)
  • PHPUnit on Server fixes
  • Traits-related inspections are introduced (class can’t extend trait, interface can’t extend traits)
  • The build brings various new features and fixes from both web (Compass support, Stylus improvements) and IntelliJ IDEA platform side.
  • Bug fixes and improvements:
  • Type inference: PHPDoc @return $this[]|self[] Insufficient / @return static[] does not work
  • Highlight current scope for alternative syntax
  • PHPUnit on Server: _intellij_phpunit_launcher.php autoload class PHPUnit/Runner/IncludePathTestCollector.php
  • Extract method: The option to set up the default visibility
  • Symfony Console standalone
  • Extract field: The option to set up the default visibility
  • Redundant closing: Redundant closing tag doesn't take into account following PHP tags
  • [phpDoc] static/$this does not work with multiple return types
  • "Update PHPDoc" quick fix doubles return statement
  • Invalid simplifying of boolean expression.
  • Add field intention: The option to set up the default visibility
  • A run configuration with an array as a parameter doesn't work
  • Code Style checker doesn't understand multiple @throws tags
  • PHP: false 'expression not allowed as class constant value' violation after replacing single quotes with double quotes in const value
  • socket_set_timeout definition should have last parameter marked as optional
  • ini4idea plugin version 131.8. at 20130829 do not compatible with IDEA11
  • Missing references to traits in @see tags in docblock
  • PHPUnit on Server: exclude for groups works like include
  • Strange font and colors in the Terminal window
  • Set composer.json path in settings when creating Composer project
  • Multiple mapping with multiple roots deployment doesn't see one root
  • Optimize imports: Attempt to modify PSI for non-committed Document
  • PhpDoc error: expected DOC_COMMENT_END
  • Invalid Inspection - Field Not Found / Declared Dynamically - Accessed Using Variable
  • "endblock" gets syntax-highlighted in twig template
  • mongodb driver now supports function findAndModify
  • Invalid type is shown inside if statement with instanceof
  • Spaces when foreach and array are on same line (option name)
  • Class can't extend trait
  • Interface can't use traits

New in PhpStorm 7.0 Build 131.8 EAP (Aug 29, 2013)

  • From the PHP side, this build features:
  • Coding Style improvements: blank lines before/after ‘Use’ statements configuration has been introduced
  • Indentation in case of using Javascript as Template Data Language (WI-17814)
  • PHPUnit on Server improvements, including configuration using XML configuration file (WI-9369) and support for PHPUnit 3.7 (along with 3.5 and 3.6)
  • PHPDoc various bug fixes
  • INI plugin enhancements
  • PHP-cgi console now forces new lines after each output
  • Other bug fixes and improvements:
  • PHPUnit on Server phpunit-launcher "file" param is relative when it should be absolute
  • PHPUnit on Server: After deploying through SFTP all files and dirs has mod bits 777
  • Weird ini error marking "duplicated key"
  • Javascript as Template Data Language does not indent right
  • "PHPUnit on Server" run configuration support for PHPUnit 3.7.0RC1 and newer?
  • PHPDoc comment not always reparsed by inspection when updated
  • Coding style: blank lines around imports (use)
  • Inspection: Duplicate Key in Section
  • PHPUnit on Server: PHPUnit on server run configuration: including/excluding a group doesn't have any effect
  • Typo in Validate Remote Environment dialog
  • Support arrays
  • Renaming a Twig template: file content is displayed as filename
  • INI file syntax highlighting
  • "Apply" button is never disabled in Deploy - > Mappings panel
  • Unused import: isn't detected if FQN is used
  • PHPUnit on Server: PHPUnit on server run configuration: include/exclude checkboxes become disabled on configuration re-opening
  • PHPUnit on Server: An option to disable automatic upload of test files for "PHPUnit on Server" configuration
  • Remote Run: doesn't separate testsuites in result tab
  • Tests with data provider are not grouped during Remote Run
  • Valid keys are shown as error
  • Incomplete documentation to function http_build_query
  • Duplicate Key in section: doesn't work if there is key without value
  • Exception is thrown for ''Suppress For Whole File''
  • PHP-CGI console should force new lines after each output
  • [] is not considered to be section
  • Ini formattian always adds new lines after sections
  • Wrong line break inside multiline comment breaks code
  • Support multiline values
  • Goto definition for aliased trait method call has wrong offset in file
  • Move static member: unnecessary warning "Class already contains ..." if base class of target class have the same private/protected fields/functions
  • Unused import: isn't detected if there is self
  • Add packages as libraries checkbox doesn't work if first action was Apply and not OK
  • Correct English for remote PHP debugging strings
  • PHPUnit on Server: test run with warning is represented as successful

New in PhpStorm 7.0 Build 130.1639 EAP (Aug 17, 2013)

  • Separate customizable template for PHP interfaces (WI-18672)
  • New Inspection: ‘PHP Fatal error: “static::” is not allowed in compile-time constants’
  • Significant improvements in performance and stability
  • Bug fixes and improvements:
  • WI-7743 New Inspection: Add inspector for 'PHP Fatal error: "static::" is not allowed in compile-time constants'
  • WI-18734 CTRL+hover and Quick Documentation shows different type of variable
  • WI-17126 Itention: import partially imported class
  • WI-15548 Import class: Intention doesn't take into account name collision
  • WI-19677 Formatting of code produce additional duplicate imports
  • WI-19493 DuplicateSectionInFile when running code inspection on the command line
  • WI-19267 Move static method: Optimize imports isn't run after refactoring
  • WI-19246 Optimize imports: isn't invoked if code isn't formated
  • WI-18509 Optimize imports breaks 'global' statement.
  • WI-16873 Import class: Automatic class import for Unnecessary FQN can cause conflicting names in one class
  • WI-19699 Exception on using duplicate section inspection
  • WI-19679 Import class: check existence of classes with the same name
  • WI-19678 Import class: does nothing if class was imported and aliased
  • WI-19658 Exception about range is thrown during typing
  • WI-19656 Ignore = and : after first occurence (inside values)
  • NWI-19654 Allow single-letter key (property)
  • WI-19650 Support colon (:) as key-value separator
  • WI-19643 Support keys(properties) with spaces
  • WI-19638 Move static member: doesn't handle multiple selection with dependency
  • WI-19636 Move static field/constant: has dialog from Move Static Method
  • WI-19619 Twig: Exception is thrown during deletion of empty block
  • WI-19618 Twig: Exception is thrown during rename refactoring
  • WI-19609 To be documented: PHP-CGI built-in web server console is needed
  • WI-19580 Twig: wrong nested for-else-endfor indentination on autoformat
  • WI-19560 instance type hint needs to be overwritten
  • WI-19476 Reformat code (optimize imports) problem in phtml files
  • WI-19420 Drush > error > Failed to parse command output
  • WI-19367 A file containing a lot of class definitions freezes PhpStorm
  • WI-19265 To be documented: bad charset on comman line tool in windows 7
  • WI-18510 Optimize imports breaks short echo tags
  • WI-18210 Phar related stubs are "bad" / i.e PharData::isFileFormat reports no return value
  • WI-17392 Import Class: with option "fix all unefined class problems" some classed are imported multiple times
  • WI-16630 Import class: Import class for elements in use creates invalid code
  • WI-16098 Import Class: doesn't work for trait

New in PhpStorm 7.0 Build 130.1562 EAP (Aug 10, 2013)

  • Built-in web server now supports PHP files
  • Twig code completion for block names
  • Remote environment debug configuration validation (WI-19464)
  • Move static member refactoring
  • New inspection: multiple classes declaration in one file
  • Bug fixes and improvements:
  • PhpStorm marks late static binding ($obj::$var) feature as an error
  • Twig block autocomplete
  • Links in PhpDoc don't allow a description (@link)
  • Invalid "Cannot use [] for reading" if function argument is reference
  • PHP files: doesn't work 'Open in Browser'
  • internal web server should serve PHP files
  • Can't debug using internal webserver
  • Class isn't colored during constant access
  • Inspection "Multiple classes declaration in one file"
  • Add @return tag: breaks PHPDoc
  • Safe Evaluation: doesn't work for static members in static method
  • Run configurations for new PHP files are broken
  • Safe Evaluation: Cannot Evaluate Static Properties Or Methods if watches has lowercase class
  • PHPDocblock Auto-Correct Spacing Issue
  • Validate Remote Environment: exception is thrown if mapping isn't set up
  • Validate Remote Environment: hang IDE completely
  • Internal Webserver: Necessary to restart PhpStorm to change PHP interpreter
  • Internal webserver: improve warning/error message notification about incorrect project configuration
  • Internal web server doesn't work with PHP under windows
  • Validate remote environment debug configuration
  • PHPDoc Identation broken
  • Smart Step Into: doesn't support dynamic invocations via call_user_func, call_user_func_array, call_user_method, call_user_method_array
  • Code hints and auto-complete doesn't work right on lambda functions
  • Generating PHPDoc inserts a 'Class' comment for interface.

New in PhpStorm 7.0 Build 130.1481 EAP (Aug 2, 2013)

  • From the PHP side, this build features:
  • Vagrant Integration
  • Completion for php variables inside string literals with injected language
  • Injected language features enhancements (colouring, detection, etc)
  • Twig: navigation to parent blocks and “find usages” for blocks
  • Debugger engine automatic detection and validation (WI-3503)
  • No subsystem:
  • WI-19180 (Bug) - PHP Built-in Web Server run configuration: port number must not be formatted
  • RUBY-13971 (Bug) - Cannot enter text in reg exp in some circumstances
  • Code Analysis. Inspection:
  • IDEA-93372 (Feature) - Implement something similar to ReSharper contract annotations for Java
  • IDEA-110663 (Bug) - Description not displayed for batch inspection results
  • IDEA-110398 (Bug) - Catch NullPointerException is "not null" while throwing null is false
  • IDEA-110527 (Bug) - ChangeSignatureGestureDetector throws exception on dispose if tabs are off
  • IDEA-110920 (Bug) - Batch inspection stops if an inspection tool throws SOE.
  • Code Formatting and Code Style:
  • IDEA-110260 (Bug) - Arrangement settings, edit some rule: incorrect initial value in 'order' combo.
  • IDEA-109854 (Bug) - "Reformat Code" dialog behaves strangely on "Do not show this dialog in the future" checkbox state change
  • IDEA-109893 (Bug) - Formatting of LONG strings in comments
  • Code Navigation:
  • IDEA-110813 (Feature) - Update class navigation to allow .java in the name
  • IDEA-79278 (Usability Problem) - Autoscroll to source doesn't preserve file position
  • IDEA-110267 (Bug) - Go to previous change - breaks when doing too fast
  • CoffeeScript:
  • WEB-8420 (Bug) - CoffeeScript: global variable treated as local
  • WEB-8298 (Bug) - Coffeescript array indentation problem
  • WEB-8576 (Bug) - CoffeeScript plugin doesn't warn on faulty class definition
  • WEB-8489 (Bug) - CoffeeScript formatter doesn't format block strings correctly
  • WEB-8434 (Bug) - CoffeeScript: 'Unexpected element' error on regular expression
  • Debugger:
  • WEB-7401 (Usability Problem) - Debugger, Chrome extension: warn user if the extension can't connect because the port is occupied
  • WEB-8445 (Bug) - Elements tab: MDV: text node update breaks formatting
  • WEB-8204 (Bug) - Breakpoints are not recognised during node debugging if sourcemap URLs specify 'file://' protocol
  • WEB-8444 (Bug) - Elements tab: MDV: attribute update breaks formatting
  • WEB-8358 (Exception) - Elements tab: CCE is thrown on adding nested indented tags
  • Editor. Editing Text:
  • IDEA-110404 (Feature) - Allow surround-style live template expansion to work
  • IDEA-90750 (Usability Problem) - Change default value of 'Allow placement of caret after end of line' into 'off'.
  • IDEA-109838 (Performance Problem) - IDE slows down for no reason
  • File Watchers:
  • WEB-8454 (Feature) - Add csso CSS minifier
  • WEB-8424 (Feature) - Add Check in File Watchers to verify that File Type and Scope conflict.
  • WEB-8604 (Bug) - Coffeescript 'File Watcher' not executing for new files added after 'git pull'
  • WEB-8556 (Bug) - IDE does not always get result from last FileWatcher run
  • Groovy:
  • IDEA-110428 (Bug) - Extract field fails
  • HTML:
  • WEB-7035 (Bug) - HTML Structure no alphabetical sort?
  • Inspections:
  • PY-10325 (Bug) - Code compatibility inspection - version selector broken
  • Java. Error Highlighting:
  • IDEA-110767 (Feature) - Mark modules with errors in project tree
  • Java. Refactoring:
  • IDEA-109510 (Bug) - Refactor This menu command (Ctrl-T) should include all Refactor menu commands
  • JavaScript:
  • WEB-1182 (Feature) - External annotations for JavaScript libraries
  • WEB-748 (Bug) - Method expression is not of Function type
  • WEB-8528 (Bug) - @memberOf in object literal
  • JavaScript. Inspections:
  • WEB-8081 (Feature) - Process contents of strings assigned to JS location properties
  • WEB-3689 (Cosmetics) - "Fall-through in case statement" suppression comment includes a spelling mistake
  • WEB-8466 (Bug) - inspect code: code style issues: 'Var statement is not at the scope start' for var statements immediately after 'use strict'
  • Live Edit:
  • WEB-8376 (Bug) - Live Edit: highlighting is broken for element and it's children if element ID begins with a number
  • Node.js:
  • WEB-7515 (Feature) - documentation for required module
  • WEB-1919 (Bug) - Impossible to debug node.js process that spawns child processes
  • Packaging:
  • PY-10146 (Bug) - Packaging: Do not try to install distutils or pip simultaneously with other packages
  • Plugin Support. Architecture:
  • IDEA-101030 (Feature) - Nice to have paths to files in a plugin be relative to that plugin location.
  • Task Management:
  • IDEA-110136 (Bug) - Breakpoints are not stored in the task context
  • IDEA-110849 (Exception) - INFO - lij.tasks.impl.TaskManagerImpl - Argument 0 for @NotNull parameter of com/intellij/util/containers/ContainerUtil.map must not be null
  • TypeScript:
  • WEB-8201 (Feature) - Support TypeScript's 0.9 single export
  • WEB-7994 (Bug) - typescript: new Date(): Interface can not be instantiated
  • WEB-8449 (Bug) - TypeScript: usages of interface from global namespace imported using not resolved inside module
  • WEB-7920 (Bug) - "Method expression is not a Function type" when instanciating ambient interface declaration with custom constructor return type
  • WEB-7532 (Bug) - TypeScript: refactor/rename class method breaks method calls
  • WEB-8439 (Bug) - TypeScript: primitive types not resolved in interface within a module
  • WEB-7802 (Bug) - Typescript does not understand Interfaces with New Keyword (Class Definitions)
  • WEB-8428 (Bug) - Typescript: 'this' marked as incorrect in a static context
  • WEB-8532 (Bug) - Incorrect file name when downloading TypeScript stubs from DefinitelyTyped
  • WEB-2299 (Bug) - TypeScript: report errors when creating interface instance using new operator
  • WEB-8447 (Bug) - TypeScript: formatter adds extra spaces around generic argument
  • WEB-7318 (Exception) - TypeScript: IllegalArgumentException at TypeScriptUtil.findFileByReferencePath() on completion invocation in module import directive
  • WEB-2173 (Exception) - TypeScript: StringIndexOutOfBoundsException on Refactor/Extract Method
  • Unit Testing. JUnit:
  • IDEA-110770 (Bug) - JUnit tests running: already existing run configuration is found for test disregarding JVM properties. JVM properties should be treated part of test "signature"
  • User Interface:
  • IDEA-51776 (Cosmetics) - Background Progress bar is stripped if cannot fit in the window's layout.
  • IDEA-109656 (Bug) - "Confirm Exit" is shown twice; "Don't ask again" checkbox doesn't work
  • IDEA-110025 (Bug) - IDEA cannot start with AssetionError
  • IDEA-110440 (Bug) - Can't start IDEA after fresh installation
  • IDEA-109806 (Bug) - No compilation error highlighting in various Scope - based views of Project tool window
  • IDEA-75349 (Bug) - Switching editor tabs with Structure pane open causes editor to jump to the top of file
  • Version Control:
  • IDEA-110503 (Exception) - [build:MPS-129.189] update failed for ActionGroup: Group by Packages (null)[Group by Packages]: Already disposed
  • Version Control. Git:
  • IDEA-110679 (Usability Problem) - GitHub: do not show modal error on login cancel
  • IDEA-110677 (Usability Problem) - Share Project on GitHub: do not show warning for sharing without first commit
  • IDEA-110685 (Usability Problem) - GitHub: save password checkbox state is not saved
  • IDEA-110668 (Bug) - Share Project on GitHub: file statuses for added files are not updated after sharing
  • IDEA-110676 (Bug) - Share Project on GitHub: show added files in first commit dialog
  • Version Control. Mercurial:
  • IDEA-110365 (Usability Problem) - Incorrect updating to another branch in case of uncommited changes
  • IDEA-101439 (Bug) - Mercurial: when committing a lot of files IDEA creates several commits with the same message.
  • IDEA-83937 (Bug) - Unable to commit with unicode message - Mercurial
  • Version Control. Perforce:
  • IDEA-87523 (Performance Problem) - Deleting huge amount of unversioned files from IDEA hangs UI
  • IDEA-105495 (Bug) - State of part of unchanged files stay "modified without checkout" after "revert unchanged files" action

New in PhpStorm 7.0 Build 130.1293 EAP (Jul 20, 2013)

  • Extended syntax colouring for various constructs - methods, static functions, classes/interfaces, modificators, etc.
  • Composer vendor
  • Optimize imports: remove "use" of classes in same namespace
  • Introduce (Extract) Field works not as expected
  • Zend Framework 2 command line tool support
  • Batch Inspections Will Not Run
  • Add stub for Redis (link enclosed)
  • PHP Plugin breaks Java move refactoring
  • Command Line tool: Do not push command to history if it equals to last command in history.
  • Smart Step Into: doesn't work if function calls are on different lines
  • Move Static Method: doesn't lookup usage of function in PHPDoc
  • Move Static Method: "class keyword" are not handled if used as class names
  • Move Static Method: Exception is thrown if moved method uses undefined field/method
  • Move Static Method: usage of constant via keywords is not detected
  • Move static method: doesn't update invocation of method via self
  • Move Static Method: Doesn't resolve namespace aliases
  • Move Static Method: Warning is shown only after Refactor button pressing
  • PHP Inspector does not know the PHP predefined constant SID
  • Optimize Imports: does not remove references to the class that is acctually defined in the namespace
  • Problem with php function "socket_get_status"
  • Move Static Method: Exception is thrown if moved method invokes magic method declared in PHPDoc
  • Include path is ignored when the project root is part of the include path
  • Default aliases for Zend Tool 1 and Zend Tool 2 are the same
  • Extract Interface: uncheck magic methods by default
  • Extract Interface: remove modifiers during change of visibility
  • Stub for CachingIterator::valid is invalid
  • Embedded stub for mysqli_data_seek
  • Extract interface: change PHPDoc with reference in reverse order
  • Extract Interface: doesn't handle final modifier
  • Extract Interface: abstract static function become just function in interface
  • Smart Step Into: doesn't support dynamic invocation of static methods
  • Smart Step Into: doesn't support dynamic invocation of object methods
  • Display documentation stubs for superglobal variables
  • False positive: "Arbitrary expressions in empty are allowed in PHP 5.5 only" for object property access for PHP 5.4 level
  • Move Static Method: changes visibility of method without any noticing
  • Override method: may change signature if aliases are used
  • Import use statements: should handle conflicts
  • SplType bug
  • SPL_c1.php

New in PhpStorm 7.0 Build 130.1176 EAP (Jul 11, 2013)

  • PHP 5.5 support: generators, coroutines, finally keyword, list in foreach, using empty() on the result of function calls and other expressions, class name resolution as scalar via class keyword, constant array/string dereferencing
  • Drupal Plugin: integration for modules, themes and core development. Hooks (completion for hook declaration, quick documentation, navigation to hook invocations), automatic assistance in development environment configuration, command line tool integration for Drush, Search in Drupal API. Please read full tutorial
  • Smart Step Into (PHP Debug)
  • Extract Interface refactoring for PHP
  • Built-in SSH terminal
  • Automatic alignment of PhpDoc comments at edit time
  • Smart line split on Ctrl+Enter (Cmd-Enter)
  • INI plugin is bundled

New in PhpStorm 6.0.3 Build 129.814 (Jun 24, 2013)

  • Fixed issues:
  • Member has protected access when duplicated class
  • Unsupported Syntax -> Multiple parameters for
  • PhpStorm hangs / openapi issue
  • Move tabs is hard when they place in two rows
  • Executable bit lost after upgrade to EAP 129.757
  • Class should not extend himself
  • New file dialog
  • Override method doesn't import use statements, leading to invalid code
  • Export sync setup / configuration / excluded paths
  • autocompletion presentation for deprecated features
  • PHPDoc comment does not match function or method signature if namespace exists
  • php formatter causes php error
  • Change signature: create and initialize class properties doesn't work for old-style constructor
  • Change signature: mnemonics for Preview button and Create and initialize class properties are the same
  • PHPStorm 6.0.1 Freezes Randomly now and requires Task Manager Kill
  • Override method: can't handle namespaces
  • Wrong message during installation
  • Code Inspection CPU Hangs on "Unused import" (Not using MVC plugin)
  • Support OSX 10.9 Mavericks
  • EAP 129.672 -> 129.757 upgrade: please select empty folder after uninstall
  • Autocompletion: “literal and”
  • edit html fragment: automatic replacements break code
  • Incorrect stub signature for pcntl_signal()
  • Exception is thrown during addition to watches
  • Double-Click Unit Test Navigates To Incorrect Location
  • Wrong parsing - new + double array dereference
  • Debugger not working in Symfony Project
  • "extract method" does not extract nor does it yield an error message
  • Exception is thrown during addition to watches
  • MultipleIterator::key() method return type (array, not void)
  • Change signature: allows to change constructor name
  • Initialize properties: dialog contains irrelevant buttons and list caption
  • Code reformat of array access in HEREDOC causes syntax errors
  • Rearrange - codeStyleSettings.xml - Order Of Nodes Keeps Changing
  • Push Down: No warnings are issued for magic methods
  • Code reformat for selected text affects not selected text in some cases
  • When using the "auto-implement methods" option of a class implementing an interface, namespaced classes are unqualified
  • Move class: bind Help button in dialog to Help

New in PhpStorm 6.0.3 Build 129.757 EAP (Jun 17, 2013)

  • Fixes:
  • Member has protected access when duplicated class
  • Override method doesn't import use statements, leading to invalid code
  • PHPDoc comment does not match function or method signature if namespace exists
  • php formatter causes php error
  • Change signature: create and initialize class properties doesn't work for old-style constructor
  • Change signature: mnemonics for Preview button and Create and initialize class properties are the same
  • PHPStorm 6.0.1 Freezes Randomly now and requires Task Manager Kill
  • Override method: can't handle namespaces
  • Exception is thrown during addition to watches
  • Exception is thrown during addition to watches
  • Change signature: allows to change constructor name
  • Initialize properties: dialog contains irrelevant buttons and list caption
  • Code reformat of array access in HEREDOC causes syntax errors
  • Rearrange - codeStyleSettings.xml - Order Of Nodes Keeps Changing
  • Push Down: No warnings are issued for magic methods
  • Code reformat for selected text affects not selected text in some cases
  • When using the "auto-implement methods" option of a class implementing an interface, namespaced classes are unqualified
  • Move class: bind Help button in dialog to Help
  • It also contains important openapi change to allow plugins properly extend type inference system w/o freezing the IDE. We already contacted authors and updated plugins should be available soon. Current plugin versions will have some type-related functionality gracefully disabled.

New in PhpStorm 6.0.2 Build 129.487 (May 15, 2013)

  • Numerous refinements, including bugfixes, performance improvements and some new features, including:
  • Composer performance is significantly improved
  • Command Line Tools configuration per project
  • Move Statement improvements
  • TODO for Twig and Smarty templates fixes
  • New intention: initialise class properties from class constructor arguments
  • Codestyle formatting enhancements
  • TestRunner works for PHPUnit 3.4
  • File types via Linux “Shebang” - php is now supported
  • Resolved issues:
  • New intention: initialize class properties from class constructor arguments
  • PHP: Code Completion for "self" and "parent" keywords is missing
  • False-positive "Only variables can be passed by reference" for class vars
  • Reformat PHPDoc adds unneeded whitespaces
  • Extra } in js context when autoclosing twig tags
  • Unsupported Syntax -> Multiple parameters for
  • PHP Code Formatting: chained method call
  • Recognize file types via Linux "Shebang" regardless of extension
  • Factory support doesn't accept double-quoted strings
  • Allow configuration of Command Line tools per Project.
  • PHPDoc inspection "Missing @throws tag(s)" doesn't cover subtypes.
  • Move tabs is hard when they place in two rows
  • Support IP6 ips as hostname
  • Php multiline string concatenation indentation
  • Local variable wrongly accused of not being used
  • PHPStorm seems to think 'selected_valid_from_month' is SQL
  • PHPDoc comment does not match function or method signature bug
  • Wrong PHPDoc inspection hint for rethrown exception
  • Direct assign override phpdoc suggestions even if unknown type assigned
  • Broken PDO constants link to php manual
  • Clicking "Remove project from list" in JetBrains splash page for project which has been deleted does not refresh "Recent Projects"
  • Can't quit column select mode
  • No table field name autocomplete inside injected SQL
  • Better Support for Multiple Monitors
  • CLT can't be disabled
  • Move statement: don't allow to move statement into multiline parameters list
  • Bad formatting - Pear Coding Standards - TRUE/FALSE/NULL constants need to be all lowercase always.
  • Factory support: show class name right to the alias in autcomplete popup
  • Wrong indentation in switch statement
  • Sorting of imports should be case insensitive
  • Import class reorder comments
  • Code reformat of array access in strings causes syntax errors
  • Add Composer Dependency Does Not Honor Branch Alias
  • D'n'D: attempt to copy file from PHAR leads to obscure result
  • Code preview in Code Style Editor is broken
  • "Code style" and "Inspection" settings does not switches on project change
  • Asked to change dialect when using an HTTP_POST_VARS item
  • Attempt to create __construct function in interface leads to exception
  • Initialize properties: exception is thrown for arguments not comma-separated
  • Initialize fields: exception is thrown for invalid contructor argument
  • Initialize properties: dialog contains irrelevant buttons and list caption
  • Kubuntu 13.04 phpstorm (PS-129.291) won't start after java8 upgrade
  • File names autocomplete doesn't work in commit window
  • Phar related stubs are "bad" / i.e PharData::isFileFormat reports no return value
  • All VCS shortcuts are absent
  • Irrelevant "implements" item in in-class autocomplete list
  • Composer does not support unicode symbols in description
  • Composer Description - remove slashes when " is escaped in original description file
  • Smarty: keyword names for identifiers.
  • SQL strings with DELETE and INSERT are not detected
  • Fail to parse packages with no versions
  • IDE doesn't know "double" type of property defined in PhpDoc
  • Fail to parse some packages
  • Unexpected behavior of "Complete Current Statement" in for loop header
  • Exception is thrown during completion
  • Custom Command Lines schemes doesn't have dates in file names
  • Project visible command line tool should have higher priority then global one
  • Edit command line dialog: usability issues
  • Description editing is useless in Edit Command Line dialog
  • Exception is thrown during typing new class
  • Remove tool name idea as it's totally useless for users
  • Inspection adds documentation tag on the wrong place
  • Several changes related to line endings
  • Exception is thrown if invalid path is added to Exclude Paths
  • Add tooltip to Up/Down arrows icons in create new php file/new php class dialogs
  • Move statement: Allow to move any statement as a single whole
  • Move statement: Selection of statements can seek into other statement
  • Move statement: can't properly handle single line classes, traits, interfaces
  • Move statement: Don't move elements outside of logical block
  • Support override while moving in Remote Host (also d'n'd)
  • Phing tool window: Display target description next to target name when available
  • PHP Formatter after wrapping if Braces, opening Brace does not go into next Line
  • Twig double }} in the style attribute
  • During deletion include and require usage of PHAR aren't found
  • Incorrect detection of PHPDocs @ declaration in formatter
  • Wrapping of binary expressions in while and if statement is wrong
  • docblock @return for PHP date is wrong
  • CodeStyle formatting : Styles in PHPDoc and Other tabs not working

New in PhpStorm 6.0.2 Build 129.394 EAP (May 1, 2013)

  • Fixed issues:
  • New intention: initialize class properties from class constructor arguments
  • Support IP6 ips as hostname
  • CLT can't be disabled
  • Factory support: show class name right to the alias in autcomplete popup
  • Code reformat of array access in strings causes syntax errors
  • D'n'D: attempt to copy file from PHAR leads to obscure result
  • Irrelevant "implements" item in in-class autocomplete list
  • IDE doesn't know "double" type of property defined in PhpDoc
  • Unexpected behavior of "Complete Current Statement" in for loop header
  • Inspection adds documentation tag on the wrong place
  • Exception is thrown if invalid path is added to Exclude Paths
  • Phing tool window: Display target description next to target name when available
  • During deletion include and require usage of PHAR aren't found
  • docblock @return for PHP date is wrong

New in PhpStorm 6.0.2 Build 129.362 EAP (Apr 26, 2013)

  • Highlights:
  • Command Line Tools configuration per project
  • TODO for Twig and Smarty templates fixes
  • Codestyle formatting enhancements
  • TestRunner works for PHPUnit 3.4
  • Fixes:
  • Reformat PHPDoc adds unneeded whitespaces
  • Extra } in js context when autoclosing twig tags
  • PHP Code Formatting: chained method call
  • Factory support doesn't accept double-quoted strings
  • Allow configuration of Command Line tools per Project.
  • PHPDoc inspection "Missing @throws tag(s)" doesn't cover subtypes.
  • PHPStorm seems to think 'selected_valid_from_month' is SQL
  • Wrong PHPDoc inspection hint for rethrown exception
  • Move statement: don't allow to move statement into multiline parameters list
  • Bad formatting - Pear Coding Standards - TRUE/FALSE/NULL constants need to be all lowercase always.
  • Wrong indentation in switch statement
  • Sorting of imports should be case insensitive
  • Import class reorder comments
  • Code preview in Code Style Editor is broken
  • Composer does not support unicode symbols in description
  • Composer Description - remove slashes when " is escaped in original description file
  • SQL strings with DELETE and INSERT are not detected
  • Fail to parse packages with no versions
  • Fail to parse some packages
  • Exception is thrown during completion
  • Custom Command Lines schemes doesn't have dates in file names
  • Project visible command line tool should have higher priority then global one
  • Edit command line dialog: usability issues
  • Description editing is useless in Edit Command Line dialog
  • Exception is thrown during typing new class
  • Remove tool name idea as it's totally useless for users
  • Several changes related to line endings
  • Add tooltip to Up/Down arrows icons in create new php file/new php class dialogs
  • PHP Formatter after wrapping if Braces, opening Brace does not go into next Line
  • Twig double }} in the style attribute
  • Incorect detection of PHPDocs @ declaration in formatter
  • CodeStyle formatting : Styles in PHPDoc and Other tabs not working

New in PhpStorm 6.0.1 Build 129.291 (Apr 17, 2013)

  • PHP:
  • The generic Factory Method pattern support was added. By adding simple external metadata you can help IDE to deduce return types from the invocation arguments. This will reduce the number of required @var annotations in code employing the pattern, wich is quite common in modern frameworks. More info on using metadata
  • PHP type inference for variables should now work with Fluent Interface style call chains more correctly – again removing the need for many @var annotations.
  • PHP completion for array indexes has been significantly improved, general completion performance is back to speed
  • PHP inspection got a couple of new ones – division by zero and invalid string operation
  • Change Signature refactoring now supports anonymous functions
  • New action “move method up/down”
  • Code formatting and indentation fixes
  • Smarty template engine support fixes
  • HTML / CSS / JavaScript:
  • Improved formatting for CoffeeScript
  • Improved inspections for SASS and TypeScript
  • Internal web server is now available in PhpStorm
  • Various bugfixes

New in PhpStorm 6.0.1 Build 129.240 EAP (Apr 11, 2013)

  • Fixed:
  • Auto-completion sometimes very slow
  • New inspection: division by zero
  • Invalid "Interfaces may not include member variables" for PHPdoc @property
  • Parser shows errors incorrectly in twig templates
  • New intention: PHP namespace intention action: convert to braced
  • Incorrect cursor position for generated @var single-line style PHPDoc comment for class field
  • Move statement: Exception is thrown during move of single line PHPDoc comment
  • Move line up moves line down and breaks code
  • Spaces within "for" parentheses not working
  • Move statement: moving statement with comment moves outer element
  • Globally installed composer not recognized as command line tool
  • IAE from remote transport configuration for app servers

New in PhpStorm 6.0.1 Build 129.177 EAP (Apr 5, 2013)

  • This build addresses both aspects by implementing a much requested feature purely relying on php-openapi. It required numerous adjustments – and much more are still pending, but we have a great progress.
  • The generic Factory Method pattern support was added. By adding simple external metadata you can help IDE to deduce return types from the invocation arguments. This will reduce the number of required @var annotations in code employing the pattern, wich is quite common in modern frameworks. More info on using metadata.
  • Other notable changes:
  • PHP type inference for variables should now correctly work with Fluent Interface style call chains – again removing the need for @var annotations.
  • PHP completion for array indexes has been significantly improved
  • PHP inspection got a couple of new ones – division by zero and invalid string operation
  • Resolved tracker issues:
  • Generic support for factory design pattern in PHP chaining (e.g. Magento, Doctrine, Kohana, etc..)
  • Support for Composer
  • Type of variable that was assigned by method that returns static, self or $this isn't resolved
  • Array key completion: add support for class variables (in addition to normal variables)
  • Auto completion PHP: Auto complete for arrays does not work in method scope
  • PHP&Javascript mix: wrong error shown (statement expected)
  • PhpDoc generation: please put cursor before name of variable in generated @var block
  • Type inference issue - subtype method referenced through $this after appropriate instanceof check.
  • Array completion for fields initialized with arrays doesn't work
  • Division by Zero: in hexadecimal numbers treats x and X differently
  • Can .idea/phing.xml file not contain absolute path to phing executable?
  • Reformat With Script Tag Indents Incorrectly
  • Phpstorm doesn't show some class methods in Ctrl+F12 methods list
  • Fix all occurrences of += to .= doesn't do anything
  • Division by Zero: NPE is thrown during typing
  • Division by Zero: ClassCastException is thrown during typing
  • Array completion contains currently entered statement
  • Reformat code replaces contents of Smarty tags with spaces
  • Codecompletition (CTRL+SPACE) gives endless spinner inside array access
  • Code Completion works too long in case of array key
  • unacceptable slowliness on PHP arrary keys completion

New in PhpStorm 6.0.1 Build 129.91 EAP (Mar 25, 2013)

  • Bug fixes and new features:
  • Change Signature refactoring now supports anonymous functions
  • New action “move method up/down”
  • Code formatting and indentation fixes
  • Smarty template engine support fixes
  • All the latest fixes from the Web team are also included, such as:
  • Improved formatting for CoffeeScript
  • Improved inspections for SASS and TypeScript

New in PhpStorm 6.0 Build 127.100 (Mar 13, 2013)

  • The key features of PhpStorm 6 include:
  • Composer dependency manager for PHP support
  • Code (re)arranger – control the structure of your existing and generated code
  • New refactorings: Change Signature, Pull Up/Push Down class members, and Move Class
  • Smarter namespace handling – Auto-import, Optimize Imports and more
  • Fully customisable templates, including PHPDoc
  • More code inspections, smarter code completion, and better runtime error prevention
  • New database schema editor and change tracking tools
  • PhpStorm 6 also provides a brand new web toolkit:
  • Built-in REST Client to test RESTful web services right from the IDE
  • File Watchers – for easy Sass, LESS, SCSS, CoffeeScript, TypeScript transpilation
  • Full-featured debugging of TypeScript, Dart or CoffeeScript with source maps
  • Refined handling of JS libraries, including minified versions detection
  • Re-worked HTML structure view with support for HTML5
  • Emmet abbreviations support for faster HTML & CSS coding
  • And last but not least, PhpStorm 6 features a fresh IDE look and feel, Retina-ready icons, and Darcula, a new native dark UI theme for the IDE and the editor.

New in PhpStorm 6.0 Build 126.339 EAP (Feb 22, 2013)

  • PHP inspection performance dramatically improved for (previously) worst cases - huge files and huge batch inspection runs.
  • PHP completion for all cases involving namespaces is being reworked now. You should see significant improvements, but there is a set of known issues pending.
  • the Web team continues to pour new features: JS libraries concept was totally reworked (for the good), File Watchers got presets for popular tools, Emmet for CSS is available and more.

New in PhpStorm 6.0 Build 126.162 EAP (Feb 7, 2013)

  • Improved stability and bugfixes, with an important addition – ability to use PHPUnit provided in .phar or via composer dependency.

New in PhpStorm 6.0 Build 126.92 EAP (Jan 31, 2013)

  • Round of fixing and refinement

New in PhpStorm 6.0 Build 126.36 EAP (Jan 26, 2013)

  • Composer project type at File|New Project|Projec Type->Composer
  • PHPUnit tests generation via File|New|PHPUnit… and Navigate|Test actions
  • Controllable Arrangement of class members in PHP at Settings|Code Style|PHP|Arrangement
  • Hierarchical color scheme management via Language Defaults section of Colors & Fonts
  • Up to 3x performance improvements on OOP-heavy code

New in PhpStorm 6.0 Build 124.509 EAP (Jan 15, 2013)

  • WI-11308 - New PHP Class: Auto fill namespace on creating new php file
  • WI-8595 - UML Diagrams: Distinguish between public and private/protected methods
  • WI-12066 - New PHP Class: Ability to provide namespace when creating a class.
  • WI-14853 - New PHP 5.4 constants are missing
  • WI-15878 - Optimize Imports: split 'multiple use' imports into 'single use' imports
  • WI-15877 - Optimize Imports: sort imports alphabetically
  • WI-15570 - Folding: Use statements in class for traits can be collapsed
  • WI-15379 - Composer: Support completion for command options
  • WI-15308 - Wrong documentation for ReflectionClass::getConstructor()
  • WI-14852 - New methods in PHP 5.4 are missing
  • WI-14780 - Good code is red: Clone can't be call for closure
  • WI-12486 - right click on filename -> copy the FQN of the class
  • WI-16088 - No icon for PhpStorm on Windows Desktop and Start Menu
  • WI-16077 - Exception is thrown if invalid class name with leading "\" is specified
  • WI-16041 - Starting PhpStorm fails with "Internal Error: magic" system error
  • WI-15972 - Wrong php-doc for finfo_file
  • WI-15897 - Move Class: appends zeros to file names instead of incrementing counter
  • WI-15912 - Create New Project - Add Local Server dialog: Alt+N maps to both Open and Next buttons
  • WI-15872 - Move Class: import classes that use classes from global namespaces to global namespace leads to code with warning
  • WI-15864 - Move class: changes declarations of namespaces
  • WI-15846 - Default color scheme for warnings isn't visible in Darcula
  • WI-15723 - PhpUnit Method Icons overlay lead to Super slow editing of files
  • WI-15701 - Exception on autocompletion in `extends` clause when using class from different namespace
  • WI-15667 - Command Line Tools Console modifies input characters
  • WI-15607 - Rename refactoring: No warning is issued if namespace name already exist
  • WI-15497 - Import class: Respect existing partial imports
  • WI-15437 - PHP mess detector doesn't work
  • WI-15274 - Parameter type: Invalid Expected A, got null inspection for optional function argument
  • WI-14855 - Surround with: Exception is thrown for code with new operator
  • WI-14639 - Support infinite possible number of parameters
  • WI-14247 - Options (--optName="opt value") support
  • WI-13829 - PHPUnit run configuration: use method FQ name as configuration name when creating run configuration from context
  • WI-13653 - Type inference: infer type in conditions with equality operators (e.g. '==')
  • WI-13556 - Sync with remote: Provide command to sync one side to another in one go
  • WI-13522 - On Mac the default keymap should be set to 'Mac OS X 10.5 +'
  • WI-13328 - Other Declaration of class Inspector regression
  • WI-13158 - Errors during annotating php files

New in PhpStorm 6.0 Build 124.373 EAP (Dec 28, 2012)

  • Highlights:
  • PHP type inference for “fluent interface” call chains (@return $this / @return static) will infere the proper type – which is known only at at point of reference. Note that one important case is still not supported – assigning result of such a call returning $this/static to variable
  • New PHP refactoring: move class to another namespace
  • REST Client plugin included
  • Changes:
  • WI-7619 — Type inference: @return static isn't working
  • WI-8038 — @return $this isn't working.
  • WI-7737 — New refactoring: PHP namespace move refactoring
  • WI-13062 — Namespace defined twice marked as not resolved
  • WI-11175 — Implement "Optimize Imports" for PHP
  • WI-10351 — @return static does not take inheritance into account
  • WI-12110 — @return $this doesn't work at all, PS 117.694
  • WI-11923 — Undefined Field: Accessing properties on classes using the __get() and __set() magic methods. (PHP)
  • WI-15771 — Remote Host Tool Window mapped files hard to read in Darcula
  • WI-15455 — bug dracula with twig
  • WI-14996 — Auto-import: Automatic imports are not ordered
  • WI-15663 — Pull Up: Implement method in child class is always shown
  • WI-15545 — Add list of available options into composer's command documentation
  • WI-13579 — Fluent interface for new Class autocompletion is broken
  • WI-15871 — Move Class: produces invalid code if moved class uses subnamespaces in PHPDoc
  • WI-15870 — Move Class: doesn't take into account partial namespace imports with aliases
  • WI-15869 — Move Class: doesn't import traits, functions and constants to a new namespace
  • WI-15865 — Move class: insert new namespace after comments for previous namespace
  • WI-15863 — Move Class: "Target directory is not located inside the project " is always shown
  • WI-15836 — Composer: Description tab is editable
  • WI-15835 — Composer: contains libraries that don't exist on packagist site
  • WI-15828 — Composer: Layout of Add Composer Dependency isn't optimal
  • WI-15827 — Composer: Show output shows percentage of downloads that leads to very wide dialog
  • WI-15813 — Textmate plugin is broken in PHPStorm
  • WI-15819 — IDEA Throws error while running phing target before debugging
  • WI-15770 — Init composer: creates composer.json with commented code
  • WI-15735 — Unnecessary fully qualified name: Exception is thrown for unfinished FQN code
  • WI-15733 — Undefined field: Field write access is treated as undefined for valid cases (magic __set and dynamic allocation)
  • WI-15730 — Update of MVC plugin from repository breaks its functionality
  • WI-15725 — Command Line Tool Support plugin breakes Tools menu
  • WI-15716 — Undefined field: Wrong "undefined field" inspection in isset/empty functions for object fields
  • WI-15714 — Undefined field: is shown although if condition with isset/empty surrounds field access
  • WI-15704 — Autocomplete in use statement doesn't work in specific situation
  • WI-15682 — NPE in EnforcedPlainTextFileTypeManager
  • WI-15643 — Pull Up/Push Down: Implement method should have mnemonic for fast editing
  • WI-15642 — Pull Up/Push Down refactoring: doesn't import classes to other namespaces during implementation of functions in child classes
  • WI-15641 — Pull Up/Push down: adds duplicated use statements
  • WI-15640 — Pull Up/Push Down: doesn't warn about moving static function from class to interface
  • WI-15639 — Pull Up/Push Down: doesn't detect constant collision for inherited interface
  • WI-15637 — Pull Up/Push down refactoring: Error message isn't correct
  • WI-15608 — Rename refactor: doesn't update partial namespaces
  • WI-15560 — List of commands used during deployment?
  • WI-15547 — Simplify FQN: prefer latest use statement instead of optimal one
  • WI-15513 — Icon folder isn't shown for completion of namespaces
  • WI-15508 — Auto-import: multiple use statements on one line produce produce not optimal code
  • WI-15452 — Phar files in the project: CPU usage and lags
  • WI-15018 — Import FQN: Sort automatically added use statements
  • WI-14755 — Pull Up/ Push down refactorings don't show warning dialog if argument type becomes undefined

New in PhpStorm 6.0 Build 124.295 EAP (Dec 19, 2012)

  • PHP type inference for ’$var->prop’ and ‘$var['key']‘ expressions (assignments tracking, instanceof and ‘is_bool’-like functions)
  • Code folding in Twig templates for blocks and control structures
  • Textmate bundle support included

New in PhpStorm 6.0 Build 124.237 EAP (Dec 13, 2012)

  • WI-14992 — Rename: Namespace rename: affects only current file
  • WI-14998 — Auto-import: Please respect existing partial imports
  • WI-15371 — Folding: Collapase groups of use statements by default
  • WI-14472 — Auto-import: Auto-insertion of "use" doesn't take into account aliases
  • WI-15498 — Replace qualified name with "use" intention should respect existing partial imports
  • WI-15495 — Auto-import: Invalid leading "\" is inserted during trait import
  • WI-15490 — Smarty tags that start with $ aren't indented
  • WI-15440 — Pull/push methods with import of used classes from phpdoc
  • WI-15390 — Exception is thrown for Init Composer Menu Item if console contains Composer command
  • WI-15382 — Composer: Description for Undo generation of composer.json is too long
  • WI-15380 — Composer: Pressing CTRL-Z after Init Composer won't uncomment commented configuration
  • WI-15370 — PHPStorm hang when pasting regex
  • WI-15347 — Incorrect Inspection Error: Cannot instantiate abstract class ''
  • WI-15315 — "Stopped" on Loading Modules
  • WI-15309 — Can't push/pull members on interfaces
  • WI-15085 — When using "Pull Members Up..." IDE doesn't add use namespace in a base class and causes an invalid code
  • WI-11634 — Folding: collapse/expand use statements at the begging of php class file

New in PhpStorm 6.0 Build 123.66 EAP (Dec 4, 2012)

  • Highlights:
  • Darcula UI should be now almost complete. Please start filing bugs on remaining problems.
  • PHP composer projects got initial support. Tools | Init Composer will help you start a new project. Next step is the understanding the composer.json contents and helping you to work with it.
  • PHP & Twig got new formatting engine that fixed tons of bugs and we plan to continue to work on this.
  • PHP Mess Detector support is ready.
  • OS X version should now support update via patch without breaking access to keychain (SVN credentials, etc). Please report if you affected again.
  • Fixes:
  • WI-15252 — Auto-import: Do not auto import classes from global namespace
  • WI-14994 — PHP file structure: leading \ should not be added
  • WI-2609 — Ctrl+Z doesn't work in create new class dialog
  • WI-15144 — Memcache::Delete has wrong return type, is void, should be boolean
  • WEB-2043 — TypeScript: false 'Invalid number of parameter' violation in case of optional parameters
  • WI-14460 — break and continue statements don't support 0 as an argument in PHP 5.4
  • WI-14437 — Annotator: Member has private access Error produced for private variable in parent class
  • WI-10953 — smarty: {else} indentation should line up with {/if}. It currently gets indented.
  • WI-15365 — About dialog is blank
  • WI-15249 — Smarty tags aren't indented inside other smarty tags
  • WI-15219 — After add Symfony command line tool on the Settings window the popup with information does not disapear
  • WI-15176 — Font is dark for elements in Application data folder in MVC view for Darcula theme
  • WEB-2042 — TypeScript: Unresolved function or method inspection when any is the parameter type
  • WEB-2059 — TypeScript: functions/classes from imported external module are not resolved
  • WEB-1994 — TypeScript: StackOverflowError when opening the StructureView for interface

New in PhpStorm 6.0 Build 123.26 EAP (Nov 28, 2012)

  • Fixes:
  • WI-13714 — Please add Typescript support
  • WI-11118 — PHP short tags HTML indentation with PHP blocks
  • WI-11402 — Add PHP Mess Detector inspections support
  • WI-8916 — Unknown (but valid) CSS Properties. Do not suggest to optimize background when multiple vendor specific tags are used.
  • WI-5703 — Extract method: PHP: Extract Method Refactoring: parameter's type could be detected where possible
  • WI-2306 — Image dimension discovery in css
  • WI-11780 — Reformat array adds unneded whitespaces
  • WI-13276 — Allow Mark as plain text run on phars
  • WI-13224 — LiveEdit TypeError on Chrome Console
  • WI-13213 — cant launch live edit
  • WI-8090 — Incorrect alignment of key-value pairs when reformatting PHP code.
  • WI-15042 — Add ability to pass custom ruleset.xml to PHP Mess Detector
  • WI-15009 — Unable to launch PhpStorm v6 EAP "The JVM could not be started. The maximum heap size..." / broken .vmoptions
  • WI-14118 — Code indentation is unreliable
  • WI-13548 — It would be nice to be able to configure the Chrome extension to what host it should connect to
  • WI-13445 — any configured deployment server subdomain should be inspectable
  • WI-12741 — Add ability to toggel between double and single quotes in HTML and CSS
  • WI-12313 — PHP Code Sniffer warnings
  • WI-15074 — Add stub for Redis (link enclosed)
  • WI-15069 — Show in Explorer is disabled for phar files
  • WI-15059 — PHAR: Phar files aren't change color according to VCS status
  • WI-15040 — The IDE Typescript parser complains about some reserved words being used as identifiers names
  • WI-15023 — PHPUnit @covers "Cannot find declaration to go to" on FQCN
  • WI-14962 — Overridden glyph isn't shown if overriding is happened inside trait
  • WI-14954 — PHP breadcrumbs doesn't show reference in parameter
  • WI-14906 — TypeScript: false 'Invalid number of parameter' violation in case of optional parameters
  • WI-14561 — Implicit variable exception while refactoring class members
  • WI-14507 — Bad code is green with traits
  • WI-14063 — "Chrome extension has been successfully registered" notification on each launch
  • WI-13262 — Implement more advanced logic for test method detection
  • WI-13229 — JS: auto complete bug (methods listed twice)
  • WI-13010 — PhpStorm 5 EAP / PS-121.150 - Does not store preferences
  • WI-12270 — Bug in inspection "function has inconsistent return points"
  • WI-12176 — Reformat code doesn't delete empty lines in PHPDoc comments
  • WI-11605 — Allow for auto-surround of selected item with back-ticks ( ` )
  • WI-11163 — [javascript] warn if an explicitly return value from a constructor is not an Object
  • WI-11017 — Unused local variable: Code inspection marks variable as unused if the variable is used as class name for new
  • WI-9335 — In javascript, add the ability to add a variable to a previous declaration...
  • WI-9138 — PHP wrong alternative syntax reformat
  • WI-7932 — Debugger would not attach to Chrome if it's already running (Mac/Lion)
  • WI-6780 — Platform/JavaScript does not understand literals in JsDoc type annotations
  • WI-1783 — Creating imports:provide example and procedure for PHPStorm
  • WI-15154 — Cannot debug typescript under windows
  • WI-15080 — TypeScript: Unresolved function or method inspection when any is the parameter type
  • WI-15066 — Include/Exclude phar works only for one file in multiple selection
  • WI-15064 — Dracula PHAR: Exclude phar has unnecessary underlining
  • WI-15062 — PHAR: Action item for include/exclude always has the same name
  • WI-15058 — Extract method refactoring for read-only file leads to exception
  • WI-15047 — Make colors for variables in darcula/darcula2 color scheme brigther
  • WI-15043 — "Choose phpmd launcher" window doesn't show files
  • WI-15004 — IllegalArgumentException at Extensions.findExtension() when opeing file right-click menu
  • WI-15001 — Run Context Unit Tests Will Not Run Single Test / Only Entire Class Of Tests
  • WI-14984 — TypeScript: false 'element not accessible' errors when using 'global' type in a module
  • WI-14982 — JS: NoClassDefFoundError at JSCompletionContributor.fillCompletionVariants when using JS completion
  • WI-14927 — TypeScript: can't match property declaration in form id:{(ParamList) : ReturnType} to function type literal
  • WI-14912 — TypeScript: correctly format enums
  • WI-14909 — MVC: Modify message about Framework Integration
  • WI-14900 — Change caption "Open Help Topics"
  • WI-14850 — New PHP 5.4 functions are missing
  • WI-14832 — F1 doesn't work in Remote Host Tool Window
  • WI-14795 — Extract Method PHP: No warning is shown for reserved parameter names
  • WI-14753 — Pull Up/ Push Down refactorings behave inconsistent for empty class
  • WI-14662 — PHAR: CTRL-LEFT CLICK on PHAR does nothing
  • WI-14656 — PHAR: Move refactoring doesn't work
  • WI-14655 — PHAR: Copy refactoring contain full path to PHAR
  • WI-14654 — PHAR: Copy refactoring unpack PHAR file
  • WI-14653 — PHAR: It's impossible to rename PHAR
  • WI-14651 — PHAR: It's impossible to delete PHAR file
  • WI-14590 — Add link to 'see also' section of 'Live Edit' page
  • WI-14461 — Page Editor. Auto Import misses PHP section
  • WI-14340 — JS Debugger: can't register Chrome extension and attach to Chrome on WinXP SP3
  • WI-14279 — Dart Plugin: Debugging WEB APP using Dartium - Breakpoints ignored.
  • WI-14277 — live edit not working. Webstorm 5.0.3 Ubuntu linux
  • WI-14256 — Debugging unit tests doesn't work with Firefox with WS121-351
  • WI-14240 — Dart: ArrayIndexOutOfBoundsException when extracting method from identifier
  • WI-14182 — 404 in documentation for Setting up isse tracking system
  • WI-14164 — Dart: no completion for variables names in constructor body after a colon
  • WI-14163 — Dart: no co0mpletion inside generic params list if the closing ';' is missing
  • WI-14160 — Dart: Throwable on attempt to Refactor/Rename library class/method/variable
  • WI-14157 — Dart: factory constructor without body in abstract class marked as error
  • WI-14155 — Dart: syntax error on checking optional parameter value (? param)
  • WI-14153 — Dart: ArrayIndexOutOfBoundsException on adding a comment after cascaded method invocation expression
  • WI-14152 — Dart: chained calls in cascades not resolved
  • WI-14150 — Dart: dart2js added to dependencies
  • WI-14070 — classNameComplete() stop suggest base JavaScript classes like Number, String, etc
  • WI-14027 — Show type warnings without running the dart analyzer
  • WI-14017 — Fix "connecting" label
  • WI-13776 — Private members are not accessible via references in nested functions
  • WI-13695 — disable element highlighting — current selection must be cleared immediately
  • WI-13661 — PHPUnit: File hyperlinks also includes leading space character as part of clickable area
  • WI-13460 — false positive inspection "Method expression is not of Function type"
  • WI-13425 — Invalid Inspection - JSDoc comment matches function signature - Use of $
  • WI-13413 — Jade formatter broken
  • WI-13384 — Add support for jsdoc typecasts
  • WI-13362 — Allow for optional parameters via @param(type=default value)
  • WI-13361 — Inspection item does not appear in View | Tool Windows | Inspection as specified by documentation.
  • WI-13313 — JavaScript: Semicolon at end of functions gets placed on new line when refactoring
  • WI-13253 — Export code coverage results
  • WI-13250 — JavaScript: completion sort error
  • WI-13153 — improve notification text about outdated JB Chrome extension under Linux
  • WI-13122 — Dart plugin does not use errors stacktrace to jump to affecting line in source code file
  • WI-13029 — Good code red: CSS box-shadow negative offset
  • WI-13026 — Callback function usage
  • WI-12940 — Two option buttons can be selected simultaneously
  • WI-12935 — Paired quote insertion doesn't work in JSON
  • WI-12854 — Dart SDK is not assigned for new web modules with Dart on Leda 122.202
  • WI-12845 — Dart Analyzer Isn't Showing Any Warnings
  • WI-12808 — Dart Plugin: a non-existent file in #import should be an error
  • WI-12807 — Dart Plugin: needs "no such type" error/warning
  • WI-12776 — Show newly created package folders and files after installing packages
  • WI-12754 — Indentation wrong when using nested if-statements
  • WI-12753 — "Extract Parameter" doesn't respect selected scope
  • WI-12744 — Dart: Enable debugging in libraries
  • WI-12675 — Publish the Quickstart guide for WebStorm
  • WI-12528 — Unused local variable: The parameter/ordinary variable used in ` (backtick) is marked as unused (gray)
  • WI-12416 — Unused local variable: Sometimes unused local variable when used inside backquotes
  • WI-7654 — Make Split Declaration And Initilization put the declaration at the top of the scope, rather than only in the line before.
  • WI-3716 — Wrong indentation

New in PhpStorm 6.0 Build 122.864 EAP (Nov 20, 2012)

  • PHP:
  • Automatic generation of “use” clauses on class name completion
  • Change signature refactoring
  • Pull up/Push down for class members refactoring
  • Better runtime error prevention - more problems will be caught by code analyzer
  • JavaScript:
  • TypeScript support: coding assistance & debugging via source maps
  • Dart support is now integrated into WebStorm
  • General:
  • Darcula – completely dark IDE interface option

New in PhpStorm 5.0.3 Build 121.351 (Oct 23, 2012)

  • Bug:
  • WI-3441 — HTML&PHP mix - something is broken
  • WI-10492 — Function call parses as variable when it is parameter passed by reference
  • WI-10738 — PHP parser bug: Invalid "Expected: expression" for assignment by reference
  • WI-10884 — Call on array property element is marked as error
  • WI-11861 — Unxpected: Expression when setting a variable by reference into an array
  • WI-12635 — FTPS does not work if SSL/TLS required on the data channel (by server)
  • WI-13263 — Valid code with reference marked as invalid
  • WI-13349 — Generating web module project from template does not work behind a proxy
  • WI-13358 — Wrong warning for text shorthand property in w3c walidation
  • WI-13483 — 'Property overrides property' inspection issues
  • WI-13574 — Unused local variable: Unused local variable and closure
  • WI-13598 — PHP Framework Popup on project open
  • WI-13632 — Settings / Framework Integration: element column combobox has no "nothing" ("no setting") choice
  • WI-13650 — CSS, attribute selectors: show classes defined in css in 'class' attribute competion
  • WI-13664 — no auto complete and undefined function session_status() in php 5.4
  • WI-13670 — Passing by reference in a function does not display inspection error PhpHierarchyChecksInspection
  • WI-13736 — Support for class member access on instation disappeared from 5.0
  • WI-13745 — Unused local variable: Invalid Inspection - Unused Local Parameter - Used in define()
  • WI-13763 — I cant get Live Edit running
  • WI-13778 — PHPUnit: same named class shades method referred from PHPUnit tag
  • WI-13780 — PHPUnit: Refactor / Rename of test method does not update reference in PHPUnit tags
  • WI-13804 — MVC View stops working with an excluded folder
  • WI-13806 — PHP: can't navigate to interface in quick doc window - name is not clickable
  • WI-13808 — Debugging in PHAR archives doesn't work if use path mappings
  • WI-13828 — Help: http://www.jetbrains.com/phpstorm/webhelp/phing.html is missing
  • WI-13840 — Russian unicode symbols doesn't show up correctly during jstestdriver debugging
  • WI-13854 — Navigate to symbol does not include css selector
  • WI-13867 — Undefined field: Undefined field inspection and magic methos
  • WI-13900 — NODE_PATH is not working anymore (after updating to 5.0.1 or 5.0.2)
  • WI-13903 — Local jshint overrides dont work
  • WI-13910 — The address isn't valid
  • WI-13929 — Settings/Framework integration: provide context help
  • WI-13970 — JS Debugger: can't attach to Chrome
  • WI-13991 — EAP 121.322 installation trying to replace latest stable PHPStorm 5.0.2
  • WI-13992 — LESS syntax highlighting: some identifiers are colored as property names
  • WI-14002 — Dart: can't create Dart SDK
  • WI-14014 — PHPSTorm crashes when trying to use @-moz-keyframes
  • WI-14042 — Code Style not properly saved/restored when switching projects
  • WI-14082 — Cannot run command line applications
  • WI-14092 — Remote debugging is not working
  • WI-14123 — PHPStorm crashes when running PHP script with large amount of HTML output
  • WI-14167 — Ctrl+Shift+R combination doesn't work
  • Feature:
  • WI-3070 — css autocomplete for input type (attribute selectors)
  • WI-12291 — Completion of pseudo-pages
  • WI-12292 — Completion in @page block
  • WI-12293 — Completion in @font-face block
  • WI-12683 — CSS: provide completion in attribute selectors
  • WI-12857 — Provide a way to customize folders in MVC view (for Symfony2 , Yii)
  • WI-13800 — Add possibility to specify --minify switch when running dart2js from the Dart plugin
  • Usability Problem:
  • WI-12225 — PhpDoc: callback as a @param is not valid but callable is
  • WI-13321 — debugger: value tooltip disappears too fast
  • WI-13412 — Settings | Deployment: Please add icons to the list of deployment entries (like it was in v4)
  • WI-13792 — Add line numbers to "Choose declaration" popup
  • WI-13829 — PHPUnit run configuration: use method FQ name as configuration name when creating run configuration from context
  • WI-13836 — Symfony2 framework integration bundle naming
  • WI-14021 — IDE can't find profiles.ini of Firefox
  • WI-14221 — Settings of Command Line Tool Support contains redundant column
  • Performance Problem:
  • WI-13768 — PHPStorm is incredibly slow when framework support is enabled
  • WI-13885 — IDE hangs on remote JS debug (PhpUnit Console message linking/file existence checking)

New in PhpStorm 5.0.3 Build 121.322 EAP (Oct 13, 2012)

  • Bug:
  • WI-10492 - Function call parses as variable when it is parameter passed by reference
  • WI-10738 - PHP parser bug: Invalid "Expected: expression" for assignment by reference
  • WI-10884 - Call on array property element is marked as error
  • WI-12635 - FTPS does not work if SSL/TLS required on the data channel (by server)
  • WI-13358 - Wrong warning for text shorthand property in w3c walidation
  • WI-13483 - 'Property overrides property' inspection issues
  • WI-13574 - Unused local variable: Unused local variable and closure
  • WI-13598 - PHP Framework Popup on project open
  • WI-13632 - Settings / Framework Integration: element column combobox has no "nothing" ("no setting") choice
  • WI-13650 - CSS, attribute selectors: show classes defined in css in 'class' attribute competion
  • WI-13664 - no auto complete and undefined function session_status() in php 5.4
  • WI-13736 - Support for class member access on instation disappeared from 5.0
  • WI-13745 - Unused local variable: Invalid Inspection - Unused Local Parameter - Used in define()
  • WI-13778 - PHPUnit: same named class shades method referred from PHPUnit tag
  • WI-13780 - PHPUnit: Refactor / Rename of test method does not update reference in PHPUnit tags
  • WI-13804 - MVC View stops working with an excluded folder
  • WI-13808 - Debugging in PHAR archives doesn't work if use path mappings
  • WI-13840 - Russian unicode symbols doesn't show up correctly during jstestdriver debugging
  • WI-13854 - Navigate to symbol does not include css selector
  • WI-13929 - Settings/Framework integration: provide context help
  • Feature:
  • WI-3070 - css autocomplete for input type (attribute selectors)
  • WI-12291 - Completion of pseudo-pages
  • WI-12292 - Completion in @page block
  • WI-12293 - Completion in @font-face block
  • WI-12683 - CSS: provide completion in attribute selectors
  • WI-12857 - Provide a way to customize folders in MVC view (for Symfony2 , Yii)
  • Usability Problem:
  • WI-12225 - PhpDoc: callback as a @param is not valid but callable is
  • WI-13321 - debugger: value tooltip disappears too fast
  • WI-13412 - Settings | Deployment: Please add icons to the list of deployment entries (like it was in v4)
  • WI-13792 - Add line numbers to "Choose declaration" popup
  • WI-13836 - Symfony2 framework integration bundle naming
  • Performance Problem:
  • WI-13768 - PHPStorm is incredibly slow when framework support is enabled
  • WI-13885 - IDE hangs on remote JS debug (PhpUnit Console message linking/file existence checking)

New in PhpStorm 5.0.2 Build 121.285 (Oct 3, 2012)

  • PHP:
  • debugging of PHAR-packed code (only Xdebug engine supports this)
  • resolving, validation, rename and find usages for goto labels
  • indenting code with “Tab” key leaves HEREDOC end marker untouched
  • support for “unlimited parameters” attribute in PHPDoc ($name…)
  • complex doc @annotations (e.g. Doctrine) are not reformatted/broken anymore
  • PHPUnit tags in PHPDoc completion
  • JavaScript:
  • support for JSDoc typecasts
  • inspection with a quick fix for JSDoc not matching method/function signature
  • warn if an explicitly return value from a constructor is not an Object
  • Platform:
  • default look and feel on Linux changed from GTK+ to Alloy IDEA – it uses system fonts and has a much better overall quality (worth to try for current users too)
  • settings for Code Style, File Templates and Live Templates can be exported/imported separately and do not contain extra stuff like a list of recent projects, user credentials etc.

New in PhpStorm 5.0.2 Build 121.272 EAP (Sep 27, 2012)

  • WI-13094 — Xdebug: support stepping into Phar archives
  • WI-13186 — defining constant in a switch-case block creates "Reassignment for constant" error
  • WI-13188 — Undefined variable: invalid "undefined variable" error when pass a variable by reference to function
  • WI-13243 — Vars autocomplete without $ symbol
  • WI-12145 — Traits with new self(); shows error "Cannot instantiate trait"
  • WI-12622 — Undefined methods: Support new methods in PHP 5.4
  • WI-9130 — PhpStorm hides return type in php documentation preview if type is 'mixed'
  • WI-9877 — PHPUnit Console Window - Make File Hyperlinks
  • WI-10053 — PHP Code Formatting, PHP Doc: Please leave annotations untouched (e.g., Doctrine)
  • WI-11003 — PHP: 'goto' to undefined label should be highlighted as error
  • WI-11449 — PHPSTOM_HELPERS\object offered in "use" hint
  • WI-11462 — PHP Unit Runner Freezes with Large stack trace
  • WI-12135 — Undefined method: Incorrect "method not found" with namespaces, traits and aliases
  • WI-13127 — Type inference: variable type changes in self assignment concatenation expression
  • WI-13283 — phpunit test list doesn't show tests if echo was made
  • WI-13308 — Code Reformating not being applied/displayed consistantly
  • WI-13350 — Incorrect syntax highlighting when escaping a backslash in a Twig tempate
  • WI-13395 — Bundled definition of SoapClient missing __construct method
  • WI-13427 — Non-FQN imported traits not properly inherited by a class
  • WI-13530 — Return type for wddx_deserialize needs update
  • WI-13504 — fseek() stub error

New in PhpStorm 5.0.2 Build 121.252 EAP (Sep 20, 2012)

  • WI-12529 - Undefined method: Failed Autocomplete / Incorrect Inspection - Method Not Found In Class When Used In foreach Loop
  • WI-13024 - UML: IndexNotReadyException on restoring project files with UML
  • WI-13165 - IDE Will Not Load Completely
  • WI-13190 - Undefined method: Variable declaration in loop broken in 5.0
  • WI-13261 - Undefined field: No warnings for undefined fields
  • WI-3560 - Moving php code with tab: heredoc/nowdoc end marker should't be moved
  • WI-4486 - PHP: ambiguous resolve in case of same named functions/constants in custom and global scopes
  • WI-12589 - show errors for usage of private clone method
  • WI-12864 - Private constructor marked as unused even if used
  • WI-13124 - Jade: RunTimeException on pressing 'Set from' in Settings/Code Style/Jade
  • WI-13279 - Disable notification for Yii framework settings configuration
  • WI-2235 - PHPUnit: @depends, @dataProvider, @expectedException tags could be supported
  • WI-4487 - PHP: bad code is green: incorrect resolve when referencing a function/constant from default namespace with wrong namespace prefix
  • WI-6780 - Platform/JavaScript does not understand literals in JsDoc type annotations
  • WI-6955 - Icon of "overriden method" is shown when parent class has private method, although it shouldn't
  • WI-7006 - Missing SplType classes
  • WI-9431 - New inspection: __toString() magic method must return string
  • WI-9433 - New inspection: Warning/error should be shown when converting objects without __toString() method to string
  • WI-10995 - Incorrect behaviour when aliasing namespaced trait methods
  • WI-11076 - Add JsonSerializable into stubs
  • WI-11098 - Add Constant Inspect Fix should creates the constant at the top of the class.
  • WI-11267 - PHP: namespace name in use statement is not resolved
  • WI-11273 - After keyword "use" inside class PhpStorm wrong parse namespaces
  • WI-11933 - HEREDOC syntax with double quotes (PHP 5.3) doesn't recognise variables in the string
  • WI-11995 - Provide specific icon for PHP classes derived from Exceptions
  • WI-12011 - formatter breaks code 'var b = "xx"+ +new Date();'
  • WI-12139 - Incorrect return type / 'void' function mysqli_real_escape_string result use
  • WI-12502 - Namespaces: Absolute class reference gets confused by NS import.
  • WI-12583 - Missing stub for \SplEnum
  • WI-12743 - Deployment -> Sync, big file comparison blocks
  • WI-12748 - docblocks don't auto-complete correctly
  • WI-12785 - new http_response_code function displays as undefined
  • WI-12850 - phpDocumentor Unlimited parameters tag
  • WI-12929 - Namespace conflicts wrongly resolved
  • WI-13063 - PHP: support 'phar:' protocol in includes
  • WI-13068 - PHP, Navigate to class: show path to classes from include path
  • WI-13070 - PHPStorm does not report all unused aliases
  • WI-13086 - Duplicated MVC tabs
  • WI-13089 - Phar: External Libraries/PHAR not updated on refactor/rename .phar file
  • WI-13095 - SimpleXMLElement::saveXML is an alias of SimpleXMLElement::asXML, but have no return statement in signature
  • WI-13106 - phpstorm does not remove a temp file after phpcs check
  • WI-13146 - Map help ID to the Framework MVC structure tool window
  • WI-13151 - Map help id to Phing Settings dialog
  • WI-13211 - PHAR: "deployed file on xxx is removed" when opening file inside archive
  • WI-13230 - SimpleXML.php stub issues
  • WI-13297 - Unused local variable
  • WI-13305 - "@return bool" PHPDoc missed in Core.php method trait_exists
  • WI-13340 - Make function 'session_register' Deprecated
  • WI-13358 - Wrong warning for text shorthand property in w3c walidation
  • WI-12388 - Unused private method: Unused private method __construct

New in PhpStorm 5.0.1 Build 121.215 (Sep 12, 2012)

  • PHP editor: reworked type inference engine for variables and class fields, added support for callback references and many other quality and performance improvements.
  • Added ability to specify own PHP CodeSniffer coding standards.
  • Support for Symfony2 coding standards.
  • New MVC view is introduced for Symfony2 & Yii.
  • Many additions in SQL/Databases support, including live database schema refactoring, stored procedures editing, schema migration scripts generation, improved SQL completion and many more.
  • 'Live Edit' mode for PHP/HTML/CSS/JS.
  • Numerous improvements in code editors for JavaScript and CSS/Sass/LESS.

New in PhpStorm 5.0 Build 121.150 EAP (Aug 30, 2012)

  • Bug:
  • WI-1732 — "Edit fragment" corrupts code.
  • WI-3226 — Automatically Inject regexp into approriate places
  • WI-6833 — Rename: Rename refactoring: should rename *parent* Class parameters and constants (inherited in PHP just as methods)
  • WI-6867 — Spellchecker hangs on particular js file
  • WI-7028 — Idea suddenly use about 80% CPU and doesn't response.
  • WI-7365 — HTML handling in Twig templates seems some kind of broken
  • WI-9436 — Incorrect __clone() magic method handling
  • WI-11838 — File structure doesn't find functions affected to variables (unlike Navigate, Symbol)
  • WI-11915 — JS structure view lacks jQuery related items
  • WI-12012 — PHP_WINDOWS_VERSION_MAJOR not detected as predefined constant
  • WI-12137 — ReflectionClass::getTraits() wrongly documented as array
  • WI-12329 — Class Hierarchy does not recognize JavaScript classes (defined with JsDoc)
  • WI-12365 — incorrect "use statement with non-compound name"
  • WI-12368 — Help unavailable
  • WI-12465 — TWIG: Autoformating cuts all html tags after "Reformat code"
  • WI-12515 — Method __toString is not implemented ... @return with more than one types
  • WI-12533 — Wrong autocompletion for array_replace
  • WI-12621 — Template Project Setting/Framework Intergration is not openable
  • WI-12623 — Yii MVC support relies on a fixed directory structure
  • WI-12680 — Bug when creating method with magic constant as parameter
  • WI-12714 — Broken inspection: Highlight unused use statements
  • WI-12722 — JS: don't report 'Unused definition' violation for JSTestDriver test methods declared using prototype
  • WI-12769 — JSTestDriver: can't debug using FireFox
  • WI-12781 — Formatter does not indent nested twig statements
  • WI-12790 — JSTestDriver: coverage is not available
  • WI-12791 — wrong instanceof should mark as errror
  • WI-12792 — MVC view - Symfony 2.0 not supported
  • WI-12811 — JSTestDriver: .js file with QUnit tests doesn't have a test decorator unless the file contains module() function
  • WI-12812 — JSTestDriver: executing run configuration for QUnit test function that doesn't belong to any module produces no result
  • WI-12813 — JSTestDriver: QUnitAdapter installed by intention doesn't support full set of QUnit assertions
  • WI-12814 — JSTestDriver: no 'jump to source'/'create configuration'/'run configuration' actions available for QUnit tests from default module
  • WI-12837 — 'inherit' on text-decoration is branded invalid but shouldn't
  • WI-12843 — JsTesDriver run/debug configuration — dialog is ugly and error message is invisible
  • WI-12848 — Node.js Temporary Run/Debug configurations should be created with working directory of target JS file
  • Cosmetics
  • WI-8486 — Add 'test' icon mark to PHPUnit test classes and test methods in structure view, etc...
  • WI-12668 — Mistyped MVC structure menu item
  • Feature:
  • WI-1640 — Autoinject Regex into standard library functions
  • WI-4349 — Auto complete array keys defined using array(key=>value)
  • WI-8725 — New inspection: Add inspection for "use statement with non-compound name has no effect"
  • WI-9153 — New intention: Simplify boolean expressions
  • WI-11553 — Ext JS 4.x: recognize implicit applyConfig methods for class configs
  • WI-12658 — support modules in mvc-structure for yii
  • WI-12856 — Generate run configuration when creating Node.js Express app project
  • Task:
  • WI-12297 — Updated PHPDoc for CUBRID PHP API
  • WI-12833 — Map Help id to Settings | PHP | Code Sniffer page
  • Usability Problem:
  • WI-1638 — 2nd parameter of strip_tags() is not HTML, don't auto-inject HTML into it.
  • WI-5185 — do not inject HTML into strip_tags, preg_replace, arguments etc.
  • WI-5774 — Annotator: Implemented method is shown as abstract in subclass
  • WI-10740 — JsTestDriver run configuration: provide choosers for case/method
  • WI-10851 — PHPUnit Run configuration: disable file/class choosers if no projects are open
  • WI-12657 — Wizard ask the wrong question : Framework root directory
  • Performance Problem:
  • WI-9085 — PhpStorm hangs while running spellchecker regexp on huge SQL file

New in PhpStorm 5.0 Build 121.110 EAP (Aug 23, 2012)

  • Bug:
  • WI-5520 - Generating setters/getters problems
  • WI-6238 - Generated getters and setters should be inserted at cursor position and not at the end of a class
  • WI-10396 - Duplicate color values in css editor
  • WI-10416 - Undefined variable: Variables included from a different file are not seen
  • WI-10742 - JsTestDriver: when running configuration with 'test'='Method', execute the specified method only
  • WI-11623 - Undefined field: Valid MongoDB database name is highlighted as 'Field not found'
  • WI-12232 - JSDoc: resolving types in jsdoc comments is not the same way as in source code
  • WI-12332 - Annotator: Call to protected constructor from invalid context false positives
  • WI-12473 - PHP: completion doesn't auto-complete params/variables names in use statement of the closure
  • WI-12568 - [NodeJS] On OS Error creating Express App: "Cannot create .../node_modules directory!"
  • WI-12576 - If global classes use trait, get warnings
  • WI-12585 - Object property in @param tag breaks parameter info popup.
  • WI-12619 - Incorrect JSDoc @private processing for anonymous function
  • WI-12644 - jsdoc @constructs doesn't cause a param info tooltip to display
  • WI-12645 - Invalid Inspection - Unresolved Symbol
  • WI-12651 - JsTestDriver plugin: JsTestDriver tool window not initialized
  • WI-12656 - Invalid callback reference injected into html injection
  • WI-12695 - PHP str_replace('','',"") marks right quote as unrecognized symbol
  • WI-12708 - An unexpected warning "Private member is not accessible"
  • WI-12729 - Undefined method: Bad code is green: simple Undefined method check is broken
  • WI-12730 - Good code is yellow: trivial trait use in class is marked "no effect"
  • WI-12755 - JSTestDriver: debugger is disconnected in about 30 sec
  • Cosmetics:
  • WI-12721 - JSTestDriver: add closing single quote to "Execute ''" hint
  • Exception:
  • WI-12679 - LiveEdit: IOException on editing after following the hyperlink in opened page
  • Feature:
  • WI-6885 - Add support classList property and DOMTokenList interface.
  • WI-7072 - No Automatic NOWDOC language injection?
  • WI-8994 - Provide support of '--stderr' command line test runner option
  • WI-11245 - Undefined field: PhpUndefinedFieldInspection on dynamic fields
  • WI-11627 - Undefined field: Skip an inspection when there is a @return tag in doc comment for '_get' method
  • WI-11628 - Type inference: Infer type for magic properties when there is a @return tag in doc comment for '_get' method
  • WI-12569 - Honor @exports jsdoc tag the same way as @class tag
  • WI-12719 - JSTestDriver: provide some indication in case if no testcases/methods with names specified in run configuration can be found in chosen file
  • WI-12773 - JSTestDriver: file names with non-ascii characters should be red-highlighted in JSTestDriver configuration file
  • Usability Problem:
  • WI-12395 - Type inference: Externally connected variables are not seen
  • WI-12717 - JSTestDriver: when creating method run configurations from TestResults panel, provide unique names for them

New in PhpStorm 5.0 Build 121.62 EAP (Aug 16, 2012)

  • New week, new build, new features:
  • MVC view is introduced – should work for Symfony2 & Yii in this build, but will be eventually available for any framework and will integrate with command line tools/generators
  • PHP editor support for callback references within literals – with usage search an rename support. We also plan to look into more complex cases and various “hook-based” architectures later
  • SQL/Database got many new big and small features, including live database schema refactoring, stored procedures editing, schema migration scripts generation, advanced completion, navigation and query result browsing and many more…
  • JsTestDriver now allows tests debugging
  • and of course bug fixes

New in PhpStorm 5.0 Build 121.12 EAP (Aug 8, 2012)

  • PHP editor got new type inference engine for variables and class fields, providing completion and navigation for conditional constructs i.e. if($var instanceof AClass) {$var->AClassMethod} and other non-trivial cases
  • PHP editor will help you prevent much more runtime errors related to inheritance
  • Deployment plugin got FTPS support
  • JsTestDriver support got a pack of fixes and performance improvements
  • JavaScript completion performance improved

New in PhpStorm 4.0.3 Build 117.694 RC (Jul 5, 2012)

  • Fixes:
  • WI-9718 - Method not found when chaining methods
  • WI-11866 - Syntax error: Only simple expressions are allowed
  • WI-11970 - Undefined scalar types in class magc method definition
  • WI-11662 - "Can't inherit abstract function" error in abstract class implementing interface
  • WI-11776 - @return self stopped working
  • WI-11448 - PHPSTORM_HELPERS\object offered for autocompletion
  • WI-11825 - PHPSTORM_HELPERS class suggested in class name completion
  • WI-10721 - PhpStorm does not support more than one level of inheritance with @inheritdoc
  • WI-9980 - mysqli::query @return type can be improved
  • WI-10993 - No suggestions for $this (phpdoc defined) members
  • WI-10133 - 'callable' type hinting in a namespace is inspected as "Undefined class callable"
  • WI-11583 - conflict with the IDE internal class Callback
  • WI-10643 - callable vs. callback type hinting works not correct
  • WI-9361 - Undefined field: Do not downgrade severity of "Undefined field" inspection for static properties.
  • WI-11897 - PHPDoc @methods improperly report Undefined class for standard types.
  • WI-7155 - Absract class can't be created even when __construct exists
  • WI-11418 - Trying to instantiate object of abstract class which has constructor - no error is shown
  • WI-11426 - wrong prototype for strchr
  • WI-11652 - Add extension handling for Office 2007+ file extensions
  • WI-11794 - Trait member marked as 'not found' in class
  • WI-11789 - DocBlock autogeneration not correct if function parameter is namespaced class object

New in PhpStorm 4.0.3 Build 117.657 EAP (Jun 29, 2012)

  • WI-8320 - Undefined method in chain using $this var as object
  • WI-9912 - Keep losing directories
  • WI-11854 - JSHint indent config error
  • WI-9303 - The IDE does not handle right the phpdoc returned class without namespace, even if this class is imported in the header
  • WI-11422 - Using an interface name instead of a class name within catch block is marked as error, indeed it is not
  • WI-9609 - Multiple class declarations (different classes) in single file breaks classname autosuggestions for static use
  • WI-4468 - Accessing private properties when a __get method is present should be downgraded to warnings instead of errors
  • WI-2604 - Parse error inspection: syntax error in string
  • WI-5604 - Show warning/error if user tries to use scalar types for type hinting
  • WI-11835 - date_timestamp_set returns DateTime not void
  • WI-11231 - Wrong phpDoc @return value when explicit return statement occurs
  • WI-11444 - Mouse over no longer shows array values when debugging
  • WI-6949 - PhpDoc magic method declaration error
  • WI-11492 - Xdebug doesn't stop on breakpoints in included files which names contain "%" (percent sign).
  • WI-11567 - Update text in "Introduce Constant" refactoring tip of the day
  • WI-11408 - "Click to see the full text" shows nothing
  • WI-11635 - Cannot override typing from base class (broken since 3.0)
  • WI-11488 - "bool", "null" and "mixed" are undefined in @method PhpDoc comments
  • WI-6544 - Undefined method: Fluent interface leads to undefined methods
  • WI-11355 - Use of FQ function from global namespace kills code completion
  • WI-11577 - phpcs error message
  • WI-7442 - Inherited @method PHPDoc annotations are not recognized by inspections
  • WI-6218 - Undefined method: Undefined method notices on autocompleted methods
  • WI-11461 - Unused local variable: Variable not considered unused when mentioned in vardoc.
  • WI-11673 - "implement methods" quick fix on "class TESTEmptyIterator implements Iterator, Traversable {}" will add TWO definitions for methods
  • WI-9277 - Undefined field: Fields reported as undefined when overriding property type
  • WI-11764 - MemcachedException has duplication of all code stubs
  • WI-10669 - @property + inheritance autocomplete bug
  • WI-11806 - Wrong PHPDoc for Memcache
  • WI-11361 - Unrecognized classes: EmptyIterator, CallbackFilterIterator, RecursiveCallbackFilterIterator
  • WI-11401 - doubleval parameter has wrong phpdoc (missing type)
  • WI-11763 - Core_c.php has mixed whitespace
  • WI-11540 - Multiple access type modifiers are not allowed (on fields)
  • WI-11570 - ArrayIterator has OPTIONAL argument
  • WI-11010 - PHP Inspections: false 'Function name must be callable' warning in case if the closure is preceded with doc comment
  • WI-9156 - Bad code is green: (expression) is not allowed in Class::(expression);
  • WI-10841 - Code Style PHP - Convert True/False/Null constants to lower case

New in PhpStorm 4.0.3 Build 117.609 EAP (Jun 21, 2012)

  • WI-9968 — Relative classes in annotations with namespace uses.
  • WI-11260 — Shortcut assignment to Phing target
  • WI-10841 — Code Style PHP - Convert True/False/Null constants to lower case
  • WI-10928 — False positive: Trait abstract method implemented in parent causes IDE to show error
  • WI-10994 — Used Trait fields missing from class autocomplete
  • WI-11722 — Traits can't have constants
  • WI-11647 — Traits can't implement interfaces
  • WI-11644 — Trait can't be instantiated
  • WI-11737 — Switch control structure in phtml template breaks newlines
  • WI-11698 — Email address in comment gets split when auto reformate code
  • WI-11707 — Phing: re-run of running build asks about termination 2 times
  • WI-9577 — Show each elements from "@see" list on a separate line (currently they are not divided even with a space)
  • WI-11028 — Invalid SILENT auto replacement paths of resources
  • WI-7744 — border-radius W3C: parse error
  • WI-7068 — Recognise .hphp files as .php files
  • WI-11266 — PHP: code completion suggests namespace alias just after itself
  • WI-11363 — Chopdown works like wrap and buggy in array initializer.
  • WI-11515 — Support php view
  • WI-9777 — "Mutiple definitions exist for class self"
  • WI-9243 — phpDoc types + use is inconsistent
  • WI-11705 — Code analysis failed with exception: java.lang.ArrayIndexOutOfBoundsException: 255
  • WI-11458 — Command Line Tools Console: Clear all does not update the occurrences set of "To next/previous command" action
  • WI-11457 — Command Line Tool Console: "To next/previous command" keyboard shortcut also scrolls the command history, and not in sync
  • WI-11345 — Command Line Tool Support: generated tool configuration file is not valid against its schema
  • WI-11677 — Deployment: unexcepted multiselect mode in remote path select dialog
  • WI-11603 — Element highlighting
  • WI-11501 — Syntax Hightlighting SASS
  • WI-11638 — Instant HTML/CSS editing
  • WI-11600 — PHPStorm do not know about SPL EmptyIterator
  • WI-10585 — Test SFTP Connection loading bar loads infront of message box to confirm connection to host
  • WI-11620 — NodeJS: Nodeunit Run/Debug Configurations cosmetics
  • WI-11618 — NodeJS: change "dir" to "directory" in "Path to dir is incorrect" error
  • WI-10309 — excluded directory from project will be sync with deployed
  • WI-11393 — Nodeunit Run Configurations should allow user to set Environment Variables ala the Node.js Run Configurations
  • WI-10559 — Syncronize With... action in Project View
  • WI-11335 — Can't connect to ftp server
  • WI-11323 — Command Line Tools Console: "To previous/next command": refine numeration of commands
  • WI-11311 — Command Line Tools Console is disabled during indexing
  • WI-11337 — CLT: Cursor does not return to promt after "cd" command
  • WI-10885 — Recursive Compare: add action "Set overwrite older"
  • WI-10804 — ftp mass select needs a 'do nothing' option
  • WI-10364 — IDE macro in externally configured Phing properties
  • WI-11327 — Command Line Tools Console: Export to Text File: show full path to default target file
  • WI-10964 — Deployment-Diff: Save Settings
  • WI-10483 — Create Symfony and Zend Framework project generators
  • WI-11364 — FTP doesn't work with Adobe Business Catalyst server
  • WI-11346 — Command Line Tools Console: path code completion suggests nothing after back slashes
  • WI-10349 — Allow configuration of command line tool one for all projects
  • WI-11371 — When refactoring the "Project Folder" name, the "Run Command" feature stops working
  • WI-11325 — Command Line Tools Console: keyboard shortcut for Export to Text File does nothing
  • WI-11604 — Command line tool: wrong parameter number shouldn't block command execution
  • WI-9290 — Command line support: "named entity" (i.e. framework controller name) completion API
  • WI-11406 — .ini file: Incorrect parsing (and, as result, incorrect color highlighting and Structure tree building) if Value is missing
  • WI-10690 — NodeJS settings: it could be possible to not only download NodeJS sources, but to specify a local path to the sources as well
  • WI-11490 — Chrome plugin url isn't shown up in Ubuntu
  • WI-11481 — ext doesn't reconnect after idea restart
  • WI-11477 — Add the separator before the client-side types of application in the Create New Project dialog in RubyMine

New in PhpStorm 4.0.2 Build 117.414 (May 30, 2012)

  • Bug:
  • WI-7315 — Don't reformat indentation on chained method call with inline function
  • WI-7943 — Incorrect class name handling if class name is similar to internal php type
  • WI-8132 — Formatter: Align key-value pairs
  • WI-8538 — Comment block in method invocation appears to be treated as parameter by inspection.
  • WI-9112 — Missing '@return' tag: make description more clear
  • WI-9117 — Properly format PHPDoc comments when autocreating them
  • WI-9571 — Docblock not auto-created when adding PHPDoc comment in front of anonymous function.
  • WI-9847 — Live templates dollar sign
  • WI-9979 — Confusing error message on extracting Linux tar.gz
  • WI-10003 — Unused private field: "unused private field" inspection doesn't work when the potential getter is presented
  • WI-10361 — Add use statement doesn't work for interfaces
  • WI-10417 — JavaScript File Format Incorrect
  • WI-10549 — Code Style -> PHP -> 'Blank line before method body' doesnt work
  • WI-10573 — PHP_CodeSniffer Coding standard list empty
  • WI-10603 — JavaScript Libraries: Quick Documentation Lookup shows "have no idea :)" for some Prototype entities same named as Mootools ones
  • WI-10670 — support for {@inheritDoc} in PHPDoc and interface
  • WI-10681 — Download Error dialog doesn't close on pressing Close button
  • WI-10721 — PhpStorm does not support more than one level of inheritance with @inheritdoc
  • WI-10739 — JsTestDriver, Coverage: 'Excluded file path' option doesn't work
  • WI-10857 — Phing inspection for dbdeploy is faulty
  • WI-10870 — Phing : taskdef with file attribute is marked as error
  • WI-10919 — KickStrap 2.0.1 Template not working correctly
  • WI-10931 — @property is not aligning correctly in the phpdoc although "Align parameter names" is checked
  • WI-10939 — Introduce constant: Extract Constant in PHPStorm 4.0 RC4
  • WI-10985 — private function __clone() {} // error
  • WI-11021 — Memcache::get
  • WI-11039 — F4 in command line tool input opens editor with file dummy.txt
  • WI-11043 — unwanted PHP Source Formatting
  • WI-11056 — Invalid stub for mysqli_connect_error()
  • WI-11057 — Invalid stub for mysqli_connect_errno()
  • WI-11059 — Calling undefined magic __*() methods does not marked as error.
  • WI-11102 — Feature Request: Define custom namespaces to exclude them from jsHint
  • WI-11103 — Error in documentation
  • WI-11142 — PHP_CodesSniffer. $phpcsFile->getFilename() does't returns correct file name.
  • WI-11147 — Code formating sometimes does not take affect
  • WI-11161 — Trait imported into current namespace are not recognized when used in class.
  • WI-11164 — String and other type boxes aren't correctly auto-suggested
  • WI-11214 — Can't collapse array with php5.4 syntax
  • WI-11225 — chaning the indentation chars in jslint screen makes settings window un responsive
  • WI-11240 — Code reformat breaks heredoc closing tag
  • WI-11264 — PHP stubs for Phar::setSignatureAlgorithm
  • WI-11271 — "else" cannot be put in same line as "if" closing brace
  • WI-11280 — Incorrect prototype for date_modify
  • WI-11300 — Code format: simple methods in one line don't work
  • WI-11326 — "Class may not inherit from final class" with "final class object {}"
  • WI-11419 — Inspections: get_class type incompatibility error
  • WI-11438 — Incorrect warning for valid type - Undefined class object
  • Cosmetics:
  • WI-11018 — PHPUnit tests are not marked with special overlay icon if first class in file is a stub and not the test itself
  • Feature:
  • WI-5465 — Default phpDoc description for method in Interface
  • WI-8203 — Annotator: Notify user that 'Class declarations may not be nested'
  • WI-11084 — Constant not defined PHP_QUERY_RFC3986
  • WI-11254 — Stubs for missing constants from PHP 5.4
  • WI-11257 — Method MongoCursor::batchSize miss in MongoDB extension stub.
  • WI-11276 — Add indent before "use" keyword inside class
  • WI-11287 — Node.JS: "go to declaration" should work for arguments to "require()"
  • WI-11383 — PHP_CodesSniffer encoding
  • Performance Problem:
  • WI-6879 — Don't invoke 'Mark as plain text' action in dispatch thread or wrap it with progress(ui freeeze)
  • WI-10991 — Performance problem in really big files
  • WI-11034 — Out of memory PHP file / with codesniffer inspections
  • WI-11120 — IDE halts when adding /* comment above aliased trait method
  • Task:
  • WI-7131 — Latest Phing version (2.4.12) support
  • Usability Problem:
  • WI-9659 — Proper recognision of PHPDoc style comments (highlighting and functionality)
  • WI-10428 — Excluded path input field looses value
  • WI-11192 — .ini file: Separate color style for Value

New in PhpStorm 4.0.2 Build 117.414 EAP (May 17, 2012)

  • Bug:
  • WI-8132 — Formatter: Align key-value pairs
  • WI-8538 — Comment block in method invocation appears to be treated as parameter by inspection.
  • WI-9117 — Properly format PHPDoc comments when autocreating them
  • WI-9847 — Live templates dollar sign
  • WI-10573 — PHP_CodeSniffer Coding standard list empty
  • WI-10670 — support for {@inheritDoc} in PHPDoc and interface
  • WI-10721 — PhpStorm does not support more than one level of inheritance with @inheritdoc
  • WI-10857 — Phing inspection for dbdeploy is faulty
  • WI-10870 — Phing : taskdef with file attribute is marked as error
  • WI-10907 — Phing: 'destfile' attribute of tar task is marked as invalid
  • WI-11009 — PHP: Generate/PHPDoc Blocks... is always enabled for anonymous functions
  • WI-11039 — F4 in command line tool input opens editor with file dummy.txt
  • WI-11103 — Error in documentation
  • WI-11142 — PHP_CodesSniffer. $phpcsFile->getFilename() does't returns correct file name.
  • WI-11147 — Code formating sometimes does not take affect
  • WI-11161 — Trait imported into current namespace are not recognized when used in class.
  • WI-11214 — Can't collapse array with php5.4 syntax
  • WI-11220 — Inherit return types for methods if not explicitly specified
  • WI-11225 — chaning the indentation chars in jslint screen makes settings window un responsive
  • WI-11240 — Code reformat breaks heredoc closing tag
  • WI-11264 — PHP stubs for Phar::setSignatureAlgorithm
  • WI-11280 — Incorrect prototype for date_modify
  • Cosmetics:
  • WI-10689 — JavaScript Libraries: Download Library dialog: 'Download and Install' button could be disabled unless a library is selected
  • WI-11191 — .ini file: Provide appropriate icons for Structure panel
  • Feature:
  • WI-5465 — Default phpDoc description for method in Interface
  • WI-8203 — Annotator: Notify user that 'Class declarations may not be nested'
  • WI-11084 — Constant not defined PHP_QUERY_RFC3986
  • WI-11254 — Stubs for missing constants from PHP 5.4
  • WI-11257 — Method MongoCursor::batchSize miss in MongoDB extension stub.
  • WI-11276 — Add indent before "use" keyword inside class
  • Performance Problem:
  • WI-6879 — Don't invoke 'Mark as plain text' action in dispatch thread or wrap it with progress(ui freeeze)
  • Task:
  • WI-7131 — Latest Phing version (2.4.12) support
  • Usability Problem:
  • WI-10428 — Excluded path input field looses value
  • WI-10908 — Run configuration, Run Phing target: disable Ok button if no valid targets are selected
  • WI-11192 — .ini file: Separate color style for Value

New in PhpStorm 4.0.2 Build 117.369 EAP (May 8, 2012)

  • It brings you various fixes and critical performance improvements for PHP.

New in PhpStorm 4.0 Build 117.257 (Apr 24, 2012)

  • PHP 5.4 language features support
  • ECMAScript Harmony support
  • Code coverage for PHPUnit
  • Code checking with PHP Code Sniffer
  • Drupal coding style support
  • New PHP code inspections
  • Smarter JavaScript completion

New in PhpStorm 4.0.1 Build 117.257 RC (Apr 23, 2012)

  • Numerous improvements in PHP stubs. Please be sure issue File|Invalidate Caches!
  • PHP editor will warn on all incorrect overrides (e.g. final, lower visibility etc.)
  • TypoScript support as downloadable plugin (Settings|Plugins|Browse)
  • ..plus various bug and performance fixes.

New in PhpStorm 4.0 Build 117.222 RC 2 (Apr 17, 2012)

  • Numerous improvements in PHP stubs – for SPL, DOM, ssh2, svn and many others. Please issue File|Invalidate Caches!
  • Spellchecker will skip @author, @link and @file values in PHPDoc to reduce false positives, plus we started work on built-in PHP-specific dictionary
  • Go to Class now supports “namespace\” prefixes to narrow down the search
  • Traits will be suggest in completion for “use” clauses in class
  • ..plus lot of bug and performance fixes in all areas

New in PhpStorm 4.0 Build 117.190 RC (Apr 13, 2012)

  • Fixed lot of recently reported problems and made significant performance improvements for PHP code inspection.

New in PhpStorm 4.0 Build 117.132 EAP (Apr 4, 2012)

  • No subsystem:
  • IDEA-83580 (Bug): Unnecessary parentheses around call qualifier
  • IDEA-83641 (Bug): Don't autopopup with word completion variants in XML
  • Code Analysis. Inspection:
  • IDEA-83634 (Feature): CyclomaticComplexity should have "skip for equals" param
  • Editor. Editing Text:
  • IDEA-81205 (Bug): Indent on paste: Correct processing in case of 'indent block'
  • Gradle:
  • IDEA-83753 (Bug): Gradle: Deliver gradle output when project libraries are being resolved on import
  • Grails:
  • IDEA-83696 (Bug): Exception during Grails resolve
  • IDEA-83550 (Bug): Grails: it is not allowed to specify a package prefix when creating TagLibs, Filters and Scripts
  • IDEA-83499 (Bug): Auto-complete removes closing curly bracket ("}") in GSP tag
  • Java. Code Completion:
  • IDEA-83475 (Usability Problem): Disable autopopup in unfinished String literals
  • IDEA-83722 (Bug): Autopopup interferes after new in varargs
  • JavaScript:
  • IDEA-81653 (Bug): Incomplete closure formatting
  • Maven:
  • IDEA-80109 (Exception): New Project Library / from Maven: nothing found and JAXBE at NexusRepositoryService.findArtifacts()
  • Project Configuration:
  • IDEA-79468 (Bug): Settings / Code Style: saving Project scheme to global list: if switch to new scheme is rejected, irrelevant scheme is shown in the combobox
  • IDEA-83638 (Exception): Impossible to open Project Structure after externally deleting a content root; AE at ContentEntryTreeEditor.setContentEntryEditor()
  • SQL:
  • IDEA-83477 (Performance Problem): Sql editing (oracle dialect) is slow and blocks ui on keypress
  • Spring:
  • IDEA-83330 (Bug): Autowiring for Bean Class inspection considers beans defined in Java configuration not included in any fileset
  • IDEA-57470 (Bug): spring: code completion in xml suggest unprefixed and when "beans" namespace has been bound to prefix
  • IDEA-83689 (Exception): CCE at com.intellij.spring.model.values.PlaceholderUtils$8.compute
  • Task Management:
  • IDEA-69306 (Usability Problem): Time out problems while connecting to a JIRA server
  • Unit Testing. JUnit:
  • IDEA-83694 (Bug): Internal error for single method JUnit test
  • Version Control. CVS:
  • IDEA-83619 (Bug): Sort by Version in CVS History broken
  • Version Control. Perforce:
  • IDEA-83534 (Bug): NPE when adding/editing jobs to a changelist

New in PhpStorm 4.0 Build 116.101 EAP (Mar 24, 2012)

  • PHP Completion for simple cases was improved – for class declarations, try/catch clauses, etc.
  • JavaScript got support for Requirejs and ’Go to declaration’ on CommonJS’s AMD format
  • Performance introduced with recent PHP 5.4 features were fixed

New in PhpStorm 4.0 Build 116.101 EAP (Mar 14, 2012)

  • PHP 5.4 is now fully supported – this build will recognize trait use section’s method renames and conflict resolution rules and infer $this type in closures. There still some minor things to refine.. Anyway please pay attention to problems with 5.4 features and file all reports as new separate issues
  • PHP “Language Level” setting is added to project – see Settings | PHP. It will also set features for Language Level inspection to mark as unavailable
  • PHPDoc inheritance support added – both for classes/methods with missing docs or tagged with @inheritDoc superclasses/interfaces/traits will be looked up. Also PHPDoc presentation got some facelifting, with more coming
  • CSS parser was totally rebuilt to significantly increase performance
  • PHPUnit tests are now generated using phpunit-skelgen, see WI-9340
  • JavaScript completion got much requested ability to order suggestions by inheritance rather than alphabetically, completion for JQuery selector inside $() and ExtJS4/Sencha implied methods and configuration properties

New in PhpStorm 4.0 Build 114.282 EAP (Mar 1, 2012)

  • Subversion 1.7 support is now officially complete
  • Gherkin (Behat) syntax support added
  • PHP 5.4:
  • All new syntax features are now supported: class member access on instantiation, short array syntax, Callable, literals in static calls, etc.
  • Added multiresolving of “parent” class references in Traits
  • Still missing support for $this in Closure, Trait method renaming on use, parent member resolving/inspection

New in PhpStorm 3.0.3 (Feb 28, 2012)

  • Bug fixes:
  • Can not navigate to ExtJs objects
  • False warning about mutable variable is accessible form closure
  • Evaluating an expression while debugging javascript in WebStorm 3.0.2 takes 2min.
  • PHP TODO: Closing "*/" should not be highlighted
  • Auto complete freezes PhpStorm in Mac OS X Lion
  • Create project from existing files is silently cancelled if file has been changed on server during download
  • References to the global object broken
  • Wrong inspection result: b == true can be simplified to b
  • incorrect inspection: "invalid number of parameters, expected 0..3" for window.open()

New in PhpStorm 4.0 EAP (Feb 20, 2012)

  • IntelliJ Platform 11.1 with lot of improvements and even more streamlined UI
  • PHP Language support for Traits and other 5.4 features. We only started with this so trait conflicts, method renaming and parent calls are not yet analysed by IDE. Toggle 5.4 feature usage checks in Inspections/PHP/General/Language Level
  • PHP Code Coverage is now built in for both Xdebug and Zend Debugger
  • PHP debugger supports remote command line scripts and PHP 5.4 built-in server
  • Code Inspection got new analysers for PHP and JS
  • ECMA Script 6 (Harmony) features are now supported
  • SASS & LESS code formatting and advanced features, CoffeeScript support is improved (kudos to RubyMine team!)
  • Project generation from HTML5 boilerplate and NodeJS boilerplate

New in PhpStorm 3.0.2 (Feb 8, 2012)

  • There are new ‘Surround With’ actions introduced:
  • Surround with: ‘(expr)’ and ‘!(expr)’
  • Surround with: ‘if(expr){…}’ and ‘while(expr){…}’
  • Fixed:
  • WI-9622 Undefined class: False positive 'Undefined class' in PhpDoc for classes from global namespace
  • WI-9633 Undefined NULL class in PHPDoc
  • WI-9579 Publish Apache Config (.htaccess) Support plug-in
  • WI-9281 jslint annotations not working
  • WI-8475 [NodeJs] Run/Debug NodeUnit is ignoring the Working Directory setting.
  • WI-9588 ECMAScript Object.create(foo).constructor() does not give code completion like new foo() does.
  • WI-8905 Inspection produces too many error highlighters and cause UI lock
  • WI-9143 PhpStorm is unable to execute phing targets if phing is installed via PEAR
  • WI-9265 Ternary reformat hangs
  • WI-9292 JSLint 'predefined' text field clears after every entry
  • WI-9109 Need to update some of PHPUnit related documentation
  • WI-9152 Mac Os X (version 10.7.2) Zend Framework Command line not working
  • WI-9110 Wrong documentation for 'Enabling PHPUnit Support'
  • WI-9308 JSLINT/JSHINT Indent Validations Ignore Rules
  • WI-8948 PHPStorm 3.0 - Unable to run Phing build file
  • WI-9063 Wrong PHPDoc formatting for Date and Time
  • WI-8721 Attempting to install the jasmine js test driver plugin gives errors

New in PhpStorm 3.0.1 RC (Jan 17, 2012)

  • Dark editor color schemes are bundled WI-333
  • Undefined class inspection will check PHPDoc WI-9241
  • Undefined member inspection will provide more details WI-9242

New in PhpStorm 3.0.1 Beta (Dec 27, 2011)

  • Bug:
  • WI-5021 — PHP: sub-namespaces of imported namespaces are not resolved
  • WI-5659 — Provide explanation of the symbols in structure tree
  • WI-5704 — Duplicated annotator warnings
  • WI-6224 — Intermediate Namespaces are not recognized in code completion
  • WI-6779 — Platform/JavaScript does not understand the Null and Undefined types in JsDoc annotations
  • WI-7536 — 'Suppress for statement' doesn't work for case statement without braces
  • WI-7800 — Word "proven" is reported as error
  • WI-7804 — Unused local variable: Invalid Unused Variable Warning
  • WI-7877 — "Upload changed files automatically" + "Warn when uploading over newer file": false positive "deployed file is changed" after merge
  • WI-8207 — Annotator: Wrong "Cannot use [] for reading"
  • WI-8355 — PHPUnit on Server Debug doesn't work in latest EAP.
  • WI-8362 — Custom Smarty Delimiters for Comments are not working
  • WI-8394 — PHPUnit Config not accepted due to 'PHP interpreter not installed'
  • WI-8405 — UML: bad items presentation in 'Show Parents' and 'Show Implementations' actions
  • WI-8407 — UML: wrong title in 'Show Parents' popup
  • WI-8433 — Throwable at EditorFactoryImpl.validateEditorsAreReleased() on closing project after Sync with Local/Deployed
  • WI-8548 — FTP response 421 received. Server closed connection.
  • WI-8551 — JS: regexp.lastIndex is treated as read-only
  • WI-8630 — False positive "Missing PHPDoc comment" for "define" constant definition.
  • WI-8644 — Including non-existing file in _intellij_phpunit_launcher.php when run tests "PHPUnit on Server"
  • WI-8664 — Array alignment
  • WI-8679 — WebStorm JS type reconized but autocomplete not showing if assignment made.
  • WI-8680 — Rename: Refactor > Rename denies valid names
  • WI-8713 — Javascript Parser has issues in 3.0
  • WI-8735 — "Warn when uploading over newer file": false positive "file needs to be synchronized" on large files
  • WI-8750 — Global problem with braces
  • WI-8752 — Incorrect 'Unused Javascript assignment' behavior
  • WI-8753 — Incomplete stubs: missing DOMNamedNodeMap::$length
  • WI-8763 — Xdebug Proxy help dialog broken
  • WI-8789 — JSLint settings errors
  • WI-8804 — "Variable initializer is redundant" try/catch
  • WI-8805 — Align Assignments formatting feature does't work for freestanding constants
  • WI-8820 — "Potentially invalid usage of this" and "bind"
  • WI-8879 — Items in @see block in phpdoc popup should be separated by comma
  • WI-8895 — when adding a condition to a breakpoint while running debug PhpStorm crashes
  • WI-8902 — Symfony (2.1.0) Command Line Tool broken in PhpStorm 3.0
  • WI-8908 — Javascript Change Signature Refactor adds types when types are included in JSDOC
  • WI-8926 — Javascript inspection reports invalid number of parameters when the number is correct
  • WI-8995 — Comment line after the return statement is incorrectly treated as a type declaration?
  • WI-9030 — PhpStorm halt's at launch/startup, only shows splash
  • WI-9047 — Generate missing method is broken for inherited constructor.
  • WI-9065 — [javascript] don't mark named function expression from return statement as unused
  • WI-9080 — Possible iteration over custom/inherited members false positive.
  • WI-9098 — PHP Quick Doc formats multiple simple types incorrectly
  • Cosmetics:
  • WI-8972 — A typo at Interpreters configuration options
  • WI-9027 — Wrong muptiple primitive parameter type rendering in php documentation preview
  • Exception:
  • WI-8633 — Invalid SQL Error
  • WI-8842 — Access to DataContext is allowed from EDT only
  • WI-9094 — PHP: NPE at PhpPresentationUtil.formatParameters() with code completion in argument list of function call
  • Feature:
  • WI-5404 — Suppression of inspection at non-statement level does not work.
  • WI-5789 — recogenise relative class names in PhpDoc
  • WI-8710 — PHPUnit 3.6 Support for runnning UnitTests on a remote server
  • WI-9073 — [javascript] reference should not be resolved to an obviously inconsistent declaration
  • Performance Problem:
  • WI-8427 — Very poor performance in big css files
  • Task:
  • WI-5482 — Integrate feature usage tracker with introduce constant refactoring
  • WI-5484 — Integrate feature usage tracker with inline variable refactoring
  • WI-6011 — Provide productivity guide tip for 'inline variable' refactoring
  • WI-6012 — Provide productivity guide tip for 'introduce constant' refactoring
  • WI-7398 — Create icons reference, as in IntelliJ IDEA
  • WI-8731 — Document Profiling with Zend Debugger engine.
  • WI-8853 — Document JSLint
  • Usability Problem:
  • WI-2196 — PHP: 'bool' keyword is not suggested by completion
  • WI-7102 — 'PHPDoc signature mismatch' inspection cannot be suppresed
  • WI-7424 — add option to not code fold top-level module pattern in JavaScript
  • WI-7512 — ability to supress spelling warning for a line and/or file
  • WI-7538 — Find usages: 'Search for text occurrences' option doesn't save its state
  • WI-7750 — Find Usages: find usages scope doesn't remember previous scope
  • WI-8176 — UML: What's the tooltip "Unknown" over any object on diagram mean?
  • WI-8444 — UML: Cannot find UML actions using 'Find Action' action and 'UML' search key
  • WI-8667 — New phpunit run configuration, Test scope: class, uf there is only one class in chosen file - automatically select it
  • WI-8954 — unable to open multiple projects at the same time
  • WI-9068 — Show "Cretate Run Configuration | PHPUnit for CLASS_NAME" option even if cursor is currently inside additional (non-test) method

New in PhpStorm 3.0 (Nov 30, 2011)

  • Smart Duplicated Code Detector to help you quickly find similar blocks of code through your entire code base and securely get rid of them without losing the intended functionality.
  • A new integrated UML tool allows you to quickly get a bird’s-eye view of your project structure, or even a semantic view of the changes in the recent VCS commits made by your colleagues.
  • To ensure that your code works fast and doesn’t cause any performance bottlenecks, the IDE now includes a profiler.
  • The key new functionality in PhpStorm 3.0 includes:
  • Smart Duplicated Code Detector
  • PHP UML diagrams
  • Profiling results browser for Xdebug and Zend Debugger engines
  • PhpUnit test runner is now fully compatible with PhpUnit 3.6
  • CoffeeScript support
  • Significant improvements to FTP/SFTP Sync
  • TFS support and revision graph for GIT
  • Streamlined UI across all operating systems