{"id":21073,"date":"2019-03-28T12:46:08","date_gmt":"2019-03-28T12:46:08","guid":{"rendered":"https:\/\/blog.jetbrains.com\/phpstorm\/?p=14294"},"modified":"2019-03-28T13:36:11","modified_gmt":"2019-03-28T13:36:11","slug":"phpstorm-2019-1-release","status":"publish","type":"phpstorm","link":"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/03\/phpstorm-2019-1-release\/","title":{"rendered":"PhpStorm 2019.1 released: Debug Twig and Blade, Locate Dead Code, Enjoy Improved Autocompletion, New Refactorings &#038; Quick-Fixes, and more"},"content":{"rendered":"<p><strong>PhpStorm 2019.1 is now available for you!<\/strong><\/p>\n<p>This major release brings with it support for debugging Twig and Blade templates, locating dead code, new and improved refactorings, intentions, and quick-fixes, enhanced performance and stability, and much more!<\/p>\n<p align=\"center\"><a href=\"https:\/\/www.jetbrains.com\/phpstorm\/whatsnew\/\" target=\"_blank\" rel=\"noopener\">Explore the top new features and download PhpStorm 2019.1 on our website.<\/a><\/p>\n<p align=\"center\"><iframe loading=\"lazy\" width=\"800\" height=\"450\" src=\"https:\/\/www.youtube.com\/embed\/lF26caFXYNE\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/p>\n<p><!--more--><\/p>\n<p>Below we have put together just some of the most interesting features.<\/p>\n<p><strong>PHP<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/01\/phpstorm-2019-1-early-access-program-is-open\/#twig_debug_support\">Debug uncompiled Twig<\/a> and <a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/02\/phpstorm-2019-1-eap-191-5849-26\/#laravel_blade_templates_debugging\">Laravel 5.8+ Blade<\/a> templates.<\/li>\n<li class=\"\"><a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/02\/phpstorm-2019-1-eap-191-5849-26\/#unused_declaration_inspection\">Locate dead code<\/a> with the brand new Unused Declaration inspection.<\/li>\n<li class=\"\">New Refactorings, Intentions, and Quick-Fixes\n<ul>\n<li><a class=\"\" href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/01\/phpstorm-2019-1-eap-191-4738-10\/#move_to_class_refactoring_for_functions_and_constants\">Move To Class Refactoring<\/a> allows to move functions and constants to a class, even <a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/03\/phpstorm-2019-1-eap-191-6014-13\/#refactoring_move_multiple_functions_at_once\">several at once<\/a>.<\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/01\/phpstorm-2019-1-eap-191-4738-10\/#string_juggling_toolbox\">String Juggling Toolbox<\/a> has a few new useful string manipulations.<\/li>\n<li>New Remove Unused Variable intention.<\/li>\n<li>New <a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/01\/phpstorm-2019-1-eap-191-4738-10\/#new_inspection_method_may_be_static\">Method may be \u2018static\u2019<\/a> quick-fix which is available when the method does not use any instance references.<\/li>\n<\/ul>\n<\/li>\n<li>Improved Autocompletion thanks to <a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/02\/new-phpstorm-meta-php-features\/\">new .phpstorm.meta.php features<\/a>.<\/li>\n<li>Reworked Imports to remove unnecessary FQN when possible and ability to <a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/01\/phpstorm-2019-1-early-access-program-is-open\/#sort_use_statements\">sort use statements<\/a> by length or alphabetically.<\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/02\/phpstorm-2019-1-eap-191-5109-15\/#code_cleanup_for_php\">Code Cleanup for PHP<\/a> to cleanse the code and safely remove redundancies automatically.<\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/02\/phpstorm-2019-1-eap-191-5701-19\/#new_styling_options\">New coloring options<\/a> for primitive parameter types and class member visibility.<\/li>\n<li class=\"\">Improved PHPDoc styling configuration.<\/li>\n<\/ul>\n<p><strong class=\"\">Other Improvements<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/01\/phpstorm-2019-1-eap-191-4738-10\/#docker_support_improvements\">Reuse Docker containers<\/a> with <em>docker-compose exec<\/em> support.<\/li>\n<li>Cleaned up default PHP file template \u2013 no more &#8220;Created by PhpStorm&#8221;.<\/li>\n<li>Support for control-click on <code>@inheritdoc<\/code> to go to inherited docblock.<\/li>\n<li>New intention to add existing class field to a constructor.<\/li>\n<li>Set breakpoints on enter and exit of an internal PHP function (call breakpoint).<\/li>\n<li>Possibility to analyze files strictly even w\/o <code>declare(strict_types = 1)<\/code>.<\/li>\n<\/ul>\n<p><strong>Version Control<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/01\/phpstorm-2019-1-eap-191-4738-10\/#version_control_improvements\">Fixup and Squash actions in Git log<\/a>.<\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/01\/phpstorm-2019-1-eap-191-4738-10\/#version_control_improvements\">Cherry-pick a file from a commit in Git log<\/a>.<\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/03\/phpstorm-2019-1-beta\/#vcs_improvements\">New \u201cUncheck all\u201d checkbox<\/a> for partial Git commits.<\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/02\/phpstorm-2019-1-eap-191-5849-26\/#switch_sides_of_compared_files_in_diff_viewer\">Switch sides of compared files<\/a> in diff viewer.<\/li>\n<li>Ignored files and folders are now highlighted<\/li>\n<li class=\"\">Force push is a bit safer with <em>&#8211;force-with-lease<\/em> option<\/li>\n<\/ul>\n<p><strong>IDE<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/02\/phpstorm-2019-1-eap-191-5701-19\/#recent_locations_popup\">Recent Locations Popup<\/a>.<\/li>\n<li>New UI Themes: <a href=\"https:\/\/plugins.jetbrains.com\/plugin\/12100-dark-purple-theme\" target=\"_blank\" rel=\"noopener\">Dark Purple<\/a>, <a href=\"https:\/\/plugins.jetbrains.com\/plugin\/12103-gray-theme\" target=\"_blank\" rel=\"noopener\">Gray<\/a>, <a href=\"https:\/\/plugins.jetbrains.com\/plugin\/12102-cyan-light-theme\" target=\"_blank\" rel=\"noopener\">Cyan light<\/a>, or <a href=\"http:\/\/www.jetbrains.org\/intellij\/sdk\/docs\/reference_guide\/ui_themes\/themes_intro.html\" target=\"_blank\" rel=\"noopener\">even your own one<\/a>.<\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2019\/02\/phpstorm-2019-1-eap-191-5532-18\/#soft_wraps_depending_on_file_type\">Soft-wraps depending on file type<\/a>.<\/li>\n<li class=\"\">Saving a project as a template.<\/li>\n<\/ul>\n<p><strong>Web Technologies<\/strong><\/p>\n<ul>\n<li>Updated docs for CSS &amp; HTML and browser compatibility info from MDN.<\/li>\n<li>Improved TypeScript support in Vue apps.<\/li>\n<li>New inspections for Angular apps.<\/li>\n<li>New JavaScript and Node.js debugger console.<\/li>\n<\/ul>\n<p><strong>Database Tools<\/strong><\/p>\n<ul>\n<li>Support for new databases: Greenplum, Vertica, and Apache Hive.<\/li>\n<li>Code completion supports combined statements for CREATE and DROP.<\/li>\n<li>Support for DEFINER attributes in MySQL and MariaDB.<\/li>\n<li>Support for the Oracle mode in MariaDB.<\/li>\n<li class=\"\">You can now set the default folder for a project.<\/li>\n<\/ul>\n<p>If you are after the full list of all the changes then check out the really long <a href=\"https:\/\/confluence.jetbrains.com\/display\/PhpStorm\/PhpStorm+2019.1+Release+Notes\" target=\"_blank\" rel=\"noopener\">release notes<\/a>.<\/p>\n<p align=\"center\"><a class=\"jb-download-button\" href=\"https:\/\/www.jetbrains.com\/phpstorm\/download\/\" target=\"_blank\" rel=\"noopener\"><i class=\"download-icon\"><\/i>Download PhpStorm 2019.1<\/a><\/p>\n<p>Please share your feedback in the comments, report bugs and suggestions on our <a href=\"https:\/\/youtrack.jetbrains.com\/issues\/WI\" target=\"_blank\" rel=\"noopener\">issue tracker<\/a>, or just connect with us on <a href=\"https:\/\/twitter.com\/phpstorm\" target=\"_blank\" rel=\"noopener\">Twitter<\/a>!<\/p>\n<p>JetBrains PhpStorm Team<br \/>\nThe Drive to Develop<\/p>\n","protected":false},"author":869,"featured_media":21074,"comment_status":"open","ping_status":"open","template":"","categories":[3992,89],"tags":[744,91],"cross-post-tag":[],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/phpstorm\/21073"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/phpstorm"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/types\/phpstorm"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/users\/869"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/comments?post=21073"}],"version-history":[{"count":0,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/phpstorm\/21073\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/media\/21074"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/media?parent=21073"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/categories?post=21073"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/tags?post=21073"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/cross-post-tag?post=21073"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}