Peticiones de IA inline y asistencia a la codificación para el decorador dataclass_transform
Puede interactuar con AI Assistant directamente donde realiza la mayor parte de su trabajo: en el editor. ¿No sabe qué hacer con un error en el código? ¿Necesita añadir documentación o pruebas? Simplemente comience a escribir su solicitud en una nueva línea en el editor. PyCharm reconocerá de forma automática su solicitud en lenguaje natural y generará una respuesta. Si la nueva línea tiene sangría, anteponga a su solicitud el símbolo $
o ?
.
PyCharm 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 no le gusta la sugerencia inicial, puede pulsar Tab para generar una nueva. También puede hacer clic en el bloque morado del medianil para ajustar el texto inicial o simplemente puede pulsar Ctrl+\ (Windows) o Cmd+\ (macOS).
Esta funcionalidad está disponible para archivos de Python, JavaScript, TypeScript, JSON y YAML.
¿Desea obtener ayuda con un argumento específico? Puede restringir tanto como quiera el contexto que AI Assistant utiliza para su respuesta. Solo tiene que poner el signo de intercalación en el contexto relevante, escribir el símbolo $
o ?
y empezar a escribir. PyCharm reconocerá su petición y tendrá en cuenta el contexto actual para sus sugerencias.
PyCharm ahora muestra un consejo de inserción Generate with AI Assistant cuando detecta el formato docstring. Esta funcionalidad le ayuda a aprovechar la IA para acelerar el proceso de generación de documentación.
En esta actualización, hemos hecho que la gestión del contexto que AI Assistant tiene en cuenta en sus sugerencias sea más transparente e intuitiva. Una interfaz de usuario renovada le permite ver y gestionar cada elemento incluido como contexto, proporcionándole una visibilidad y un control totales. El archivo abierto y cualquier código seleccionado dentro de él se añaden ahora de forma automática al contexto, y puede añadir o eliminar fácilmente archivos según sea necesario, personalizando el contexto para adaptarlo a su flujo de trabajo. Además, puede adjuntar instrucciones para todo el proyecto con el fin de guiar las respuestas de AI Assistant en toda su base de código.
Ahora puede seleccionar su modelo de chat de IA preferido, eligiendo entre Google Gemini, OpenAI o modelos locales en su máquina. Esta selección ampliada le permite personalizar las respuestas del chat de IA para adaptarlas a su flujo de trabajo específico, ofreciéndole una experiencia más adaptable y personalizada.
Itere más rápido en el código sugerido por AI Assistant simplemente ejecutando fragmentos de código del chat de IA en la consola de Python. Haga clic en el botón verde Run en la esquina superior derecha de la ventana del código para comprobar cómo funciona el trozo de código sugerido.
AI Assistant ahora puede sugerir la mejor manera de realizar una tarea determinada en PyCharm basándose en el último estado de la documentación de PyCharm. Utilice el comando /docs
para obtener consejos personalizados sobre cómo realizar las tareas de la manera más eficiente.
AI Assistant ahora es capaz de trabajar con DataFrames y variables en sus notebooks. Solo tiene que utilizar #
antes del nombre de un DataFrame o de una variable, y AI Assistant le ayudará a analizarlo. AI Assistant cuenta con acceso directo al resumen y las estadísticas del DataFrame para poder ofrecerle los mejores resultados posibles.
Además, puede navegar a la vista Variables de la ventana de herramientas Jupyter directamente desde el chat. Solo tiene que hacer clic en el icono del clip en su mención del DataFrame o variable.
for
en comprensiones de listas Refactorice su código más rápidamente con AI Assistant, que ahora puede ayudarle a convertir bucles for
masivos en comprensiones de listas. Esta característica funciona con todos los bucles for
, incluidos los anidados y los bucles while
.
Hemos implementado un par de acciones útiles para el manejo de errores de ejecución de consultas SQL con AI Assistant. Ahora, para cada mensaje de error, PyCharm muestra dos acciones en el extremo derecho del mensaje de error: Explain with AI y Fix with AI.
Explain with AI abre el chat de IA, envía una consulta automática y le proporciona la explicación del error de AI Assistant.
Fix with AI genera una corrección del error de ejecución de la consulta en el editor.
Estas dos nuevas acciones funcionan de forma similar a las acciones de intención Fix SQL Problem Under Caret y Explain SQL Problem Under Caret.
Esta funcionalidad requiere adjuntar el esquema de la base de datos para sugerir explicaciones y correcciones adecuadas.
PyCharm Professional ahora proporciona sugerencias locales de finalización de código de IA multilínea basadas en el modelo de aprendizaje automático de propiedad exclusiva de JetBrains que se utiliza para la finalización de código de línea completa. Tenga en cuenta que no utilizamos sus datos para entrenar el modelo.
La finalización de código multilínea local genera normalmente de 2 a 4 líneas de código en escenarios en los que puede predecir la siguiente secuencia de pasos lógicos, como dentro de bucles, cuando se gestionan condiciones o cuando se completan patrones de código comunes y secciones de código reutilizable.
Cuando se trabaja con clases de datos personalizadas creadas a través de bibliotecas que utilizan el decorador dataclass_transform
, el IDE proporciona ahora toda la asistencia inteligente a la codificación que ofrece para las clases de datos estándar. Por ejemplo, puede disfrutar de la finalización de código para los atributos y de la inferencia de tipos para las firmas de constructores.
PyCharm 2024.3 facilita la instalación de paquetes importados en su código. Un nuevo arreglo rápido está disponible para autoinstalaciones masivas, lo que le permite descargar e instalar varios paquetes en un solo clic.
PyCharm ahora le permite ejecutar líneas seleccionadas de código directamente en la consola de Jupyter sin ejecutar la celda completa. Esta funcionalidad facilita la depuración rápida o la comprobación de resultados de trozos de código específicos, lo cual aporta más flexibilidad y eficiencia a su flujo de trabajo.
Vea los resultados de las tablas de Jupyter en la ventana de herramientas Data View para acceder a potentes funcionalidades como mapas térmicos, formateo, segmentación y funciones de IA para mejorar el análisis de los DataFrames. Solo tiene que hacer clic en el icono Open in Data View para comenzar.
Ahora puede renombrar símbolos, funciones y variables locales directamente en el editor sin tener que abrir un cuadro de diálogo. Solo tiene que seleccionar la entidad cuyo nombre desea cambiar y pulsar Mayús+F6.
Ahora puede filtrar los datos en la ventana de herramientas Data View y en los DataFrames sin escribir ni una sola línea de código. Haga clic en el icono Filter situado en la esquina superior derecha de la ventana de herramientas o en un DataFrame, y seleccione las opciones de filtrado que desee utilizar. Los resultados del filtrado pueden verse de inmediato en la misma ventana.
Esta característica funciona para todos los marcos de datos de Python compatibles, incluidos pandas, Polars, NumPy, PyTorch, TensorFlow y Hugging Face Datasets.
De forma predeterminada, ahora PyCharm 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 su texto seleccionado en su código. Puede personalizar la funcionalidad en Settings | Editor | General | Appearance.
Basándonos en los progresos realizados en la versión 2024.2, estamos aumentando el número de funcionalidades esenciales que están disponibles mientras se compila e indexa el modelo de proyecto. En la versión 2024.3, las correcciones ortográficas y gramaticales están accesibles incluso mientras la indexación está en curso. Esto le permite detectar errores, como los de los documentos Markdown y las etiquetas de documentación, sin esperar a que finalice la indexación.
Hemos optimizado la ubicación de la acción Rename en el menú contextual cuando se la llama en elementos del editor y la ventana de herramientas Project. La acción se encuentra ahora en el nivel superior, lo que facilita la tarea a los usuarios que dependen con frecuencia del ratón para renombrar rápidamente archivos, variables y otros elementos.
El widget Run actualizado le permite lanzar varias configuraciones simultáneamente manteniendo pulsada la tecla Ctrl y haciendo clic en el icono Debug de la ventana emergente. Además, el widget muestra controles para todas las configuraciones en ejecución, lo cual proporciona una visión clara de sus estados y simplifica la gestión.
Hemos aumentado el límite de pestañas predeterminado en el editor a 30. Esto significa que ahora puede mantener abiertas más pestañas antes de que el IDE empiece a cerrar las que se han utilizado menos recientemente. Puede controlar este ajuste en Settings | Editor | General | Editor Tabs.
PyCharm ahora permite especificar un único puerto de depuración para todas las comunicaciones, lo que simplifica la depuración en entornos restringidos como Docker o WSL. Después de establecer el puerto en la configuración del depurador, este se ejecuta como un servidor y toda la comunicación entre él y el IDE fluye a través del puerto especificado.
Para que la paginación de la cuadrícula sea más perceptible en el editor de datos, hemos movido el control de la barra de herramientas a la parte inferior central del editor de datos.
JOIN
En algunos casos, no se recomienda ejecutar una consulta que contenga un número excesivo de cláusulas JOIN
debido a que se degrada el rendimiento. Ahora, el editor puede identificar y resaltar este tipo de consultas. Puede habilitar esta inspección en los ajustes del IDE. Para ello, vaya a Editor | Inspections, expanda la sección SQL y seleccione Excessive JOIN count.
Ahora, PyCharm admite la introspección de fragmentos. Anteriormente, el introspector podía realizar solo una introspección completa de esquemas en las bases de datos MySQL o MariaDB, pero no podía actualizar 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 en el esquema de la base de datos, el IDE iniciaba una introspección completa de todo el esquema. Esto llevaba mucho tiempo y a menudo interrumpía el flujo de trabajo.
Ahora, PyCharm 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 e invoca la acción Refresh, solo se actualizará ese objeto específico, en lugar de todo el esquema como antes.
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.
PyCharm ahora excluye los resultados de node_modules
de forma predeterminada cuando se utiliza Find in Files en los directorios del proyecto, reduciendo 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.
AI Assistant ahora ayuda a generar títulos y descripciones precisos para sus solicitudes de incorporación y fusión directamente desde el IDE, lo cual agiliza su flujo de trabajo y garantiza que sus descripciones sean claras y concisas.
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 su 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, deshabilítelo.
PyCharm 2024.3 introduce la posibilidad de acceder a variables de entorno directamente dentro del cliente HTTP mediante la sintaxis $env.ENV_VAR
. Esto permite una mayor flexibilidad a la hora de gestionar y utilizar variables dentro de sus solicitudes y scripts. Además, ahora es posible ejecutar solicitudes desde un archivo .http
incluido, todas a la vez o solicitudes específicas por nombre, e ignorar las variables.
Las compilaciones de Dev Containers funcionan ahora de forma más fluida en motores Docker remotos, evitando errores cuando los directorios locales no son accesibles de forma remota. También se ha mejorado la estabilidad en WSL, con mejores compilaciones de imágenes y conexiones fiables.
El archivo devcontainer.json
procesa features
de forma más coherente, y la nueva opción <0>updateRemoteUID0> evita conflictos de acceso al establecer la identidad de usuario correcta. La configuración del IDE en los Dev Containers puede personalizarse a través de los archivos devcontainer.json
o mediante el botón Add currently modified settings from IDE , con finalización automática para todas las opciones disponibles.
El nuevo terminal ofrece ahora un procesamiento de comandos mejorado, y se ha perfeccionado la alineación de su interfaz de usuario, ofreciendo una experiencia más fluida e intuitiva. El terminal es ahora más sensible y procesa las solicitudes con mayor rapidez. El cambio de sesión es ahora fluido, con una conservación del estado coherente en todas las pestañas para garantizar que su flujo de trabajo no se interrumpa. La finalización automática accede más rápidamente a los nombres de los comandos, las banderas y las rutas, reduciendo la introducción manual. También hemos introducido opciones de personalización adicionales, incluyendo las de los estilos de solicitud, nombres de sesión y variables de entorno, dándole un mayor control sobre su entorno de terminal.
PyCharm ofrece ahora acceso al registro de Kubernetes en todo el grupo con streaming y concordancia de patrones, herramientas esenciales para los desarrolladores, así como para los equipos de DevOps y SRE. Esta funcionalidad proporciona una vista centralizada de todos los eventos en los pods, nodos y servicios, ayudándole a identificar rápidamente los problemas sin tener que comprobar manualmente cada registro. El streaming en tiempo real permite realizar diagnósticos inmediatos, mientras que la concordancia de patrones automatiza la detección de eventos y errores clave, como problemas de falta de memoria o actividad inusual de la red. Obtenga más información sobre esta funcionalidad y cómo utilizarla en esta entrada del blog.
PyCharm 2024.3 ofrece compatibilidad ampliada con Docker Compose. Ahora da prioridad a los archivos .env
en la finalización automática env_file
, haciendo que la configuración del entorno sea más rápida. Las nuevas opciones de compilación – cache_to
, no_cache
, tags
, y <0>platforms0> – ofrecen un mayor control sobre el almacenamiento en caché y la orientación a plataformas. El manejo mejorado de depends_on.required
y depends_on.restart
permite una gestión más eficaz del orden de arranque y apagado de los contenedores dependientes.
Nuevas claves como deploy.placement.preferences
, deploy.resources.pids
y deploy.resources.reservations.devices
permiten una colocación flexible de los servicios y límites de recursos. Las compilaciones multicontexto y las compilaciones privilegiadas son ahora compatibles a través de build.additional_contexts
y build.privileged
.
Las opciones adicionales incluyen configuraciones cgroup
, mapeos extra_hosts
personalizados y healthcheck.start_interval
. La configuración mejorada de puertos y secrets.environment
agiliza ahora la gestión de secretos mediante variables de entorno.
Ya está disponible la compatibilidad con OpenTofu. Esta actualización incluye finalización automática para métodos de encriptación, proveedores de claves e inspecciones para referencias desconocidas.
Las acciones de configuración de la ejecución de Terraform son accesibles a través de Search Everywhere, y el IDE detecta automáticamente las variables y locales no utilizadas para mantener su código limpio. Se han perfeccionado los controles para Init
, Validate
, Plan
, Apply
y Destroy
, y se ha racionalizado el formulario Run Configuration. Además, los indicadores de uso mejorados y las advertencias sobre los recursos no utilizados mejoran la navegación y le ayudan a identificar el código inactivo.