Novedades de RubyMine 2024.3

Finalización de código mejorada basada en la nube, peticiones de IA inline, compatibilidad con Kamal 2, integración incorporada con la RBS Collection, actualizaciones de Ruby 3.4 y revisiones ortográficas y gramaticales basadas en Grazie

AI Assistant

Finalización de código mejorada basada en la nube

RubyMine 2024.3 incorpora una finalización de código basada en la nube más rápida y que tiene más en cuenta el contexto a través del complemento JetBrains AI Assistant, con mejoras de calidad y velocidad y que añade la compatibilidad con la finalización multilínea.

Gracias al modelo de lenguaje de gran tamaño (LLM) Mellum, la latencia de finalización es casi una décima parte de lo que era en versiones anteriores, lo que se traduce en sugerencias casi instantáneas. La tasa de aceptación de sugerencias de finalización se ha duplicado aproximadamente, mientras que la tasa de cancelación ha descendido a entre la mitad y un tercio de lo que era en la versión anterior.

Tenga en cuenta que la finalización de código basada en la nube en AI Assistant solo está disponible con una suscripción a AI Pro o una prueba gratuita activa.

Contexto de Rails mejorado para las pruebas de unidad

RubyMine proporciona ahora a AI Assistant más contexto sobre las aplicaciones Rails para una mejor generación de pruebas de unidad.

Peticiones de IA inline

RubyMine 2024.3 introduce las peticiones de IA inline, que ofrecen una forma fluida de interactuar con AI Assistant directamente en el editor. Puede escribir peticiones en lenguaje natural, que AI Assistant interpreta al instante y convierte en cambios de código, y los resalta en morado en el medianil para facilitar su seguimiento. Las peticiones de IA inline tienen en cuenta el contexto, e incluyen de forma automática los archivos y símbolos relacionados para una generación de código más precisa.
Esta funcionalidad está disponible actualmente en los archivos *.rb.

Compatibilidad con Rails 8

Compatibilidad con Kamal 2

Rails 8 proporciona compatibilidad para implementar sus aplicaciones con Kamal 2 y, en RubyMine 2024.3, hemos implementado la finalización de código para las configuraciones de Kamal 2.

Anotaciones de nulabilidad desde schema.rb para compatibilidad con tipos

RubyMine reconoce ahora el modificador de tipo not-null para los atributos de migración y proporciona resaltado y advertencias para las asignaciones nil incorrectas.

Información del código para Solid Queue y Solid Cache

En RubyMine 2024.3, los archivos queue_schema.rb y cache_schema.rb presentan ahora iconos específicos y resaltado de sintaxis.

RBS

Integración incorporada con la RBS Collection

RubyMine dispone ahora de integración con la RBS Collection, una colección de archivos RBS gestionada por la comunidad para gemas que no incluyen firmas.

Aunque no utilice RBS en su proyecto, podrá disfrutar de las firmas de tipo incluidas en la RBS Collection, sin necesidad de ningún esfuerzo adicional. RubyMine descargará y gestionará de forma automática las firmas de tipo para las dependencias del proyecto.

Ruby

Posibilidad de utilizar it como alias para parámetros numerados en bloques

RubyMine reconoce ahora it como alias de _1 en bloques sin parámetros, y ofrece la compatibilidad con tipos e intenciones de conversión para tales usos.
Hemos añadido una nueva anotación de error que le impide utilizar it en un bloque con parámetros numerados regulares.

Compatibilidad con cadenas «chilled» de Ruby 3.4

RubyMine reconoce ahora las cadenas «chilled», un nuevo estado de transición para los literales de cadena en Ruby 3.4. En los proyectos sin el pragma frozen_string_literal, las cadenas se pueden «congelar» (chill), lo que permite modificarlas con una advertencia en lugar de provocar un error.

Anotaciones de error para argumentos anónimos ambiguos

RubyMine muestra ahora un error cuando intenta utilizar argumentos anónimos de bloque, rest y palabra clave rest en un contexto anidado ambiguo.

VCS

Actualizaciones en Find in Files

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.

Opción para deshabilitar las comprobaciones previas a la confirmación en segundo plano

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.

Experiencia del usuario

Correctores de ortografía y gramática integrados

El complemento Grazie ya está disponible en RubyMine sin necesidad de configuraciones adicionales. Proporciona comprobaciones inteligentes que van más allá de las simples faltas de ortografía y erratas. Comprende las reglas gramaticales y puede advertirle de un estilo inadecuado.

Las comprobaciones Grazie están disponibles en cadenas, heredocs, comentarios, comentarios de bloque y archivos RDoc.

Puede gestionar las comprobaciones de Grazie en Settings | Editor | Natural Languages | Grammar and Style | Scope.

Compatibilidad mejorada con consolas

Hemos añadido nuevas opciones para controlar si se preselecciona la primera sugerencia de finalización cuando se utilizan consolas o el campo Evaluate Expression durante la depuración.

Durante la depuración, el campo Evaluate Expression refleja ahora con precisión los tipos self, reconoce las variables locales y los parámetros con tipos inferidos, y admite la finalización para nuevas variables locales introducidas dentro de la sesión actual del marco de pila.

Las sesiones de consola recuerdan los comandos ejecutados previamente y proporcionan inferencia de tipos y finalización para las variables locales.

Aumento del límite de pestañas predeterminado

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.

Ubicación optimizada para la acción Rename

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.

Interfaz de usuario actualizada para el nuevo terminal

Hemos actualizado la interfaz de usuario del nuevo terminal con un diseño más compacto, reduciendo los márgenes para maximizar el espacio de su pantalla. Los márgenes más pequeños ahorran espacio y le ofrecen una mayor visibilidad mientras trabaja con comandos sin sacrificar la legibilidad.

Resaltado de todas las apariciones del texto seleccionado

De forma predeterminada, RubyMine 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.