Novedades de RubyMine 2022.2

Compatibilidad mejorada con Rails, RBS, Debugger, YARD y varias funcionalidades nuevas.

Rails

Enlaces clicables en los registros del servidor Rails

Los desarrolladores de Rails ya pueden hacer clic en los enlaces de las referencias Controller#action, View y Route para navegar a los archivos correspondientes.

Buscar, completar y navegar por las URL de Rails

RubyMine ahora admite la búsqueda de URL de Rails. Simplemente escriba /url en el cuadro de diálogo Search Everywhere para buscar y navegar hasta un archivo que contenga la URL deseada. También puede utilizar un atajo de teclado: Ctrl+Mayús++\.

Hemos introducido el autocompletado de las solicitudes HTTP. Esto significa que puede autocompletar las URL de Rails y navegar a sus Routes correspondientes. Las sugerencias de finalización también muestran los tipos de solicitudes HTTP disponibles.

Ventana de herramientas Endpoints

La nueva ventana de herramientas Endpoints proporciona una vista agregada de las API de servidor y cliente utilizadas en su proyecto. La ventana de herramientas puede ayudarle a desarrollar microservicios y para la comunicación entre backend y frontend. Para obtener más detalles, consulte este tema de ayuda.

Mejor finalización de las etiquetas HTML en los archivos ERB

Ya no es necesario escribir manualmente las etiquetas HTML de apertura cuando se editan los archivos .html.erb. Solo tiene que empezar a escribir el nombre de una etiqueta HTML y RubyMine le ofrecerá la sugerencia de autocompletar adecuada. Pulse Tab para autocompletar la etiqueta y continuar editando cosas dentro de la etiqueta.

RBS

Modificadores de visibilidad inline

En esta versión, hemos seguido mejorando la compatibilidad con RBS. A partir de esta versión, la visión del código de RubyMine comprueba ahora los modificadores de visibilidad inline públicos y privados para determinar la visibilidad de las declaraciones de atributos y métodos. También hemos añadido modificadores de visibilidad por método a la vista de estructura.

Recuperar tipos de clases desconocidas

Anteriormente, solo proporcionábamos tipos para un objeto si su clase tenía una firma RBS. Si no había una firma RBS correspondiente, solo podíamos recuperar los tipos de métodos de Object.

Hemos mejorado la inferencia de tipos para clases desconocidas, por lo que RubyMine ahora buscará los tipos de los métodos de todos los ancestros conocidos de Ruby, no solo de Object.

Depurador

Hemos mejorado el depurador de RubyMine para hacerlo más robusto para Ruby 3 o posterior. Ahora debería ser capaz de depurar su código escrito en Ruby 3 o posterior sin ningún problema importante mientras utiliza todas las funcionalidades proporcionadas en la GUI, como recorrer el código, evaluar expresiones y más. También hemos corregido problemas en las implementaciones anteriores del depurador, así que, si está ejecutando una versión de Ruby anterior a la 3.0, debería poder depurar su código en RubyMine también. No se requiere ninguna acción adicional, ya que el IDE sugerirá automáticamente una implementación de depurador adecuada.

YARD

Visión del código de las macros YARD

A partir de la versión 2022.2, RubyMine reconoce las extensiones de macros YARD y ofrece asistencia general para su codificación.

  • Utilice la acción Go to declaration en una referencia de macro para saltar a la declaración de macro correspondiente.
  • Busque los usos de una declaración de macro invocando la acción Find usages.
  • Renombre cada uso de una macro pulsando Mayús+F6.

Tenga en cuenta que RubyMine no admite las macros «attach» debido a posibles problemas de rendimiento.

Mejora de la renderización de los documentos de YARD

Compruebe el aspecto actualizado de los comentarios y las etiquetas de YARD al renderizarlos en el editor. Hemos reorganizado la sangría y los estilos para que la documentación del código dentro del IDE sea más uniforme.

Varias funcionalidades nuevas

Ejecutar el archivo actual

RubyMine utiliza configuraciones de ejecución/depuración para ejecutar, depurar, desplegar y probar su código. En esta versión, hemos introducido una nueva funcionalidad para ejecutar y depurar el archivo que está abierto en el editor.

Información del código para variables locales con coincidencia de patrón

Las funciones de visión del código, como la navegación entre entidades, la refactorización Rename y Find Usages, ahora funcionan con las variables locales con coincidencia de patrón.

Salir de la continuación del comentario de línea

Esta versión añade una nueva opción para salir de la continuación de un comentario de línea pulsando Intro. Utilice Mayús+Intro para insertar una línea de comentario vacía. Puede activar y desactivar esta opción en Preferences / Settings | Advanced Settings | Ruby | Delete empty line comment with Enter checkbox.

Cambiar el tamaño de la fuente globalmente

Recientemente hemos introducido un acceso directo de teclado que cambia el tamaño de la letra en todos los editores. Para aumentar el tamaño de la letra, pulse Alt+Mayús+.. Para reducirlo, pulse Alt+Mayús+,.

Editar nombres de intérpretes

Si utiliza diferentes Rubies para distintos proyectos, ahora puede editar los nombres de los intérpretes en la configuración de SDK de Ruby. Hemos añadido esta funcionalidad para ayudarle a que varios SDK sean legibles para el ser humano y evitar confusiones a la hora de elegir entre ellos.

Abrir el Gemfile a partir de una sugerencia de RuboCop

Ahora puede abrir su Gemfile y añadir la gema RuboCop directamente desde la ventana de la herramienta de notificaciones. Cuando vea la sugerencia de Configurar RuboCop en la ventana de herramientas Notifications, haga clic en Add.

Gestionar la autoinserción de paréntesis

Ahora puede elegir si desea que RubyMine inserte automáticamente paréntesis al completar el código o no. Para activar la inserción automática de paréntesis, vaya a Settings/Preferences | Editor | General | Code Completion y active la casilla Insert parentheses automatically when applicable.

JavaScript

Compatibilidad con componentes independientes de Angular

Compatibilidad con componentes independientes de Angular

Hemos estado trabajando activamente en la compatibilidad con Angular 14 en RubyMine. La incorporación más importante en esta versión es la compatibilidad con los componentes independientes de Angular. RubyMine ahora reconoce correctamente los componentes, las directivas y procesos marcados como standalone: true.

Actualizaciones para Vue

Actualizaciones para Vue

Nuestra compatibilidad con Vue 3 se ha quedado atrás con respecto a algunas de las últimas actualizaciones de Vue. Para abordar este problema, hemos incluido varias mejoras, aunque algunas, como la compatibilidad con Vite, ya estaban incluidas en las actualizaciones menores de la v2022.1. RubyMine 2022.2 también incorpora algunas correcciones. Por ejemplo, entiende el estrechamiento del tipo en las directivas v-if/else.

Compatibilidad con TypeScript 4.7

Compatibilidad con TypeScript 4.7

RubyMine 2022.2 incluye TypeScript 4.7, que admite nuevas características del lenguaje como moduleSuffixes y ESM en Node.js. Insertará automáticamente la extensión .js en la declaración de importación si module está configurado como node16 o nodenext en su archivo tsconfig.json. Además, RubyMine admite el campo typesVersions en los archivos package.json.

Planes de retirada de funcionalidades

Esta versión retira la compatibilidad con algunas tecnologías y funcionalidades antiguas, concretamente Rails 3, la gema RCov, el tipo de configuración de ejecución JRuby, así como los servidores de precarga Zeus, Spork y Nailgun. Para obtener más detalles acerca de estas decisiones, consulte este artículo.