Los aspectos más destacados de esta versión incluyen:
xdebug_notify()
PhpStorm 2024.3 viene cargado con nuevas inspecciones y arreglos rápidos para que pueda actualizarse sin problemas a las numerosas funcionalidades de PHP 8.4. A continuación, encontrará un resumen breve de la compatibilidad de las nuevas funcionalidades de PHP 8.4 con el flujo de trabajo de PhpStorm.
Uno de los mayores cambios en la trayectoria más reciente de PHP, los vínculos de propiedades, se han diseñado para eliminar los getters y los setters del código reutilizable, lo que permite implementar vínculos get
y set
para propiedades.
Para los vínculos de propiedades (entre los que se incluyen los vínculos de propiedades dentro de las propiedades promovidas), PhpStorm ofrece:
get
y set
. get
y set
con la inserción de cuerpos de vínculos de propiedades. get
y set
para una propiedad mediante la acción Generate, parecida a Generate | Getters and Setters. La visibilidad asimétrica permite que una propiedad con tipo tenga definida una visibilidad independiente para las operaciones de lectura y escritura.
PhpStorm 2024.3 garantiza que los ámbitos de visibilidad asimétrica se implementen de forma correcta en el código, con comprobaciones y arreglos rápidos para:
set
más amplia que la visibilidad principal (get
). final
redundantes para propiedades private (set)
. set
. Puede usar PhpStorm 2024.3 para convertir los bucles foreach
a las nuevas funciones de PHP 8.4 array_find()
, array_find_key()
, array_any()
y array_all()
.
new
sin paréntesis PhpStorm 2024.3 es compatible con la eliminación de los paréntesis que enmarcan la expresión new
en construcciones del tipo (new MyClass())->method()
.
Tenga en cuenta que las funcionalidades de AI Assistant solo están disponibles con una suscripción a AI Pro o en la versión de prueba.
Hemos mejorado considerablemente la calidad y hemos reducido la latencia de nuestra finalización de código mediante IA para PHP. Estas mejoras funcionan con Mellum, el nuevo modelo de lenguaje de gran tamaño (LLM, por sus siglas en inglés) de JetBrains optimizado para una finalización de código en la nube más rápida, inteligente y que tiene en cuenta el contexto.
Para obtener más información sobre el nuevo LLM de JetBrains, consulte este artículo de blog.
Las sugerencias de finalización de código inline ahora incluyen el resaltado de sintaxis, lo que mejora su legibilidad.
Ahora, las sugerencias de código multilínea pueden aceptarse todas a la vez (pulsando Tab) o de forma gradual, es decir, palabra por palabra (Ctrl+→) o línea por línea (Fin).
Con las nuevas peticiones de IA inline, ahora AI Assistant detecta y procesa las solicitudes en lenguaje natural a medida que las escribe directamente en el editor. Interpreta al instante las peticiones y genera el código sugerido sin tener que hacer nada más.
PhpStorm deja una marca morada en el medianil junto a las líneas modificadas por AI Assistant para que pueda ver fácilmente lo que se ha actualizado. Si hay alguna sugerencia que no le gusta, puede ajustar la petición inicial haciendo clic en la marca morada del medianil o pulsando Ctrl+/.
En esta actualización, la gestión del contexto que AI Assistant tiene en cuenta en sus sugerencias es más transparente e intuitiva. Se ha renovado la interfaz de usuario para que pueda ver y gestionar cada elemento incluido como contexto, lo que proporciona visibilidad y control total. Ahora, el archivo abierto y cualquier código seleccionado dentro de este se añaden de forma automática al contexto, y puede añadir o eliminar fácilmente archivos según necesite, personalizando el contexto para que se ajuste al flujo de trabajo. Además, puede adjuntar instrucciones a todo el proyecto para guiar las respuestas de AI Assistant en toda la base de código.
AI Assistant ahora ayuda a generar títulos y descripciones precisos para sus solicitudes de fusión y de incorporación de cambios directamente desde el IDE, para agilizar su flujo de trabajo y garantizar que sus descripciones sean claras y concisas.
En el área de mensajes de error, se puede acceder a un par de nuevas acciones útiles para gestionar los errores de ejecución de consultas SQL con AI Assistant. Explain with AI abre el chat de IA con una petición enviada de forma automática y la respuesta de AI Assistant con una explicación del error. La acción Fix with AI genera una corrección del error de ejecución de la consulta en el editor.
Obtenga más información sobre todas las actualizaciones de JetBrains AI Assistant.
xdebug_notify()
Para mejorar aún más la experiencia de depuración de PHP, ahora PhpStorm cuenta con una forma estructurada de manejar los resultados enviados desde la función xdebug_notify()
.
Introducidas en Xdebug 3.1, las llamadas xdebug_notify()
permiten mostrar variables de forma selectiva en la consola de depuración de PhpStorm.
Para los desarrolladores de Laravel que utilizan Laravel Herd, ahora PhpStorm 2024.3 detecta de forma automática la ruta al ejecutable PHP de Laravel Herd utilizado actualmente en su máquina. Para utilizar este intérprete en PhpStorm, vaya a la configuración del intérprete CLI (PHP | CLI interpreter | …) y, en el cuadro de diálogo CLI Interpreters que se abre, seleccione el ejecutable PHP de la lista de opciones configuradas previamente.
PhpStorm 2024.3 mejora de forma significativa el marco de trabajo de pruebas Pest para los desarrolladores de Laravel. Hemos implementado la compatibilidad total con Pest 3.0 y la posibilidad de ejecutar pruebas paralelas y de mutación con Pest directamente desde el IDE.
El reciente lanzamiento de Pest 3.0 incluye pruebas de mutación, que realizan pequeños cambios en el código para comprobar si las pruebas pueden detectarlos.
Puede activar la opción Run Tests (Pest) with Mutation de Pest en PhpStorm 2024.3 como cualquier otra opción de prueba (directamente desde el editor, desde la ventana de herramientas Project o a través de una configuración de ejecución/depuración) y utilizar la ventana de herramientas Pest Mutation para inspeccionar los resultados de la prueba.
Asegúrese de que Xdebug 3.0+ esté instalado también en el intérprete de PHP que utiliza en el IDE.
Para obtener más información, consulte la documentación de PhpStorm.
En PhpStorm 2024.3, ya no es necesario cambiar al terminal para ejecutar pruebas Pest en modo paralelo. Solo tiene que navegar hasta el archivo de prueba y seleccionar Run Tests (Pest) in Parallel desde el icono del medianil en el editor, desde el menú contextual de la ventana de herramientas Project o a través de una configuración de ejecución/depuración.
Ahora, PhpStorm puede resolver de forma automática los conflictos de fusión en las declaraciones de importación. Para activar esta función, seleccione la opción Resolve conflicts in import statements en el cuadro de diálogo de fusión bajo el icono de la rueda dentada o vaya a Settings | Tools | Diff & Merge y seleccione Automatically resolve conflicts in import statements.
La funcionalidad Find in Files se ha mejorado con un nuevo ámbito de búsqueda: Project Files Excluding Git-Ignored. Esta opción excluye cualquier archivo ignorado en los archivos .gitignore
de sus resultados de búsqueda, lo cual le ayuda a centrarse solo en el código relevante cuando busque en el proyecto.
Ahora puede gestionar las comprobaciones en segundo plano durante el proceso de confirmación con la nueva opción Run advanced checks after a commit is done en Settings | Version Control | Commit. Este ajuste le permite decidir si deben ejecutarse pruebas e inspecciones después de realizar una confirmación. Si desea que estas comprobaciones se completen antes de la confirmación, simplemente deshabilítelo.
Ahora, la pantalla Welcome muestra el nombre de la rama, lo que es de gran ayuda para organizarse si trabaja con varias versiones del proyecto, ya que le permite cambiar fácilmente entre los directorios de trabajo.
Ahora, PhpStorm admite la introspección de fragmentos. Anteriormente, el introspector solo podía realizar una introspección completa de los esquemas de las bases de datos MySQL o MariaDB, pero no refrescar los metadatos de un solo objeto. Cada vez que se ejecutaba una declaración DDL en la consola y esa ejecución podía modificar un objeto del esquema de la base de datos, el IDE iniciaba una introspección completa de todo el esquema. Esto llevaba mucho tiempo y solía interrumpir el flujo de trabajo.
Ahora, PhpStorm puede analizar una declaración DDL, determinar qué objetos podrían haberse visto afectados por ella y actualizar solo esos objetos. Si selecciona un único elemento en Database Explorer y llama a la acción Refresh, solo se actualizará un objeto, en lugar de todo el esquema, como ocurría antes.
JOIN
En ciertos casos, no se recomienda ejecutar una consulta que contenga un número excesivo de cláusulas JOIN
debido a la degradación del rendimiento. El editor puede ahora identificar y resaltar este tipo de consultas. Puede activar esta inspección en los ajustes del IDE. Para ello, vaya a Editor | Inspections, expanda la sección SQL y seleccione Excessive JOIN count.
Para que la paginación en cuadrícula sea más perceptible en nuestro editor de datos, hemos desplazado el control correspondiente de la barra de herramientas a la parte inferior central del editor de datos.
PhpStorm ahora excluye los resultados node_modules
de forma predeterminada al utilizar Find in Files en los directorios del proyecto, lo que reduce el desorden de archivos irrelevantes. Puede restaurar el comportamiento anterior habilitando la opción Search in library files when “Directory” is selected in Find in Files en Settings | Advanced Settings.
Hemos mejorado los consejos en el editor para componentes de Vue, Svelte y Astro. La acción Show component usages encuentra ahora los usos tanto en las importaciones como en las plantillas de marcado. También hemos añadido el filtro Show component usages para excluir los usos de componentes al buscar referencias de archivos normales. La refactorización Rename también se ha actualizado con una opción para incluir usos al renombrar un archivo de componentes.
La vista previa en color para las clases CSS de Tailwind ahora se muestra integrada en el editor, lo que facilita distinguir los colores. Hemos añadido compatibilidad con el método textDocument/documentColor
del protocolo de servidor de lenguaje (LSP), por lo que todos los complementos basados en LSP ofrecen ahora esta funcionalidad sin necesidad de configuraciones adicionales.
Para proyectos con Angular 19, ahora PhpStorm pasa de forma predeterminada al modo independiente para componentes, directivas y tuberías. Se han añadido arreglos rápidos para ayudar a convertir entre componentes independientes y no independientes. Las importaciones independientes no utilizadas pueden eliminarse de forma automática durante el reformateo del código o mediante una nueva inspección. También se ha mejorado la compatibilidad con la sintaxis @let
.
De forma predeterminada, PhpStorm ahora destaca automáticamente todas las instancias del texto que selecciona dentro de un archivo. Esto facilita efectuar un seguimiento de los lugares en que aparece el texto seleccionado en su código. Si prefiere el comportamiento anterior, puede desactivar esta funcionalidad en Settings | Editor |General | Appearance.