Novedades de RubyMine 2021.3

Firmas de tipo RBS integradas, nuevas inspecciones para la comprobación de tipos y archivos RBS, compatibilidad con flujos de trabajo de desarrollo remoto, mejoras en la experiencia de usuario y mucho más.

Ruby y RBS

Firmas de tipo RBS integradas

Esta versión integra firmas RBS. Con las firmas RBS de las que dispone, RubyMine es capaz de proporcionar una asistencia a la codificación mejorada, como la comprobación de tipos en tiempo real, una navegación más precisa, búsqueda y refactorización, y mucho más.

Nuevas inspecciones para los archivos RBS

En esta versión, hemos añadido 12 nuevas inspecciones para los archivos RBS. RubyMine comprobará el código RBS en busca de problemas de estilo, entidades no utilizadas, incidencias heredadas, desajustes en las declaraciones parciales, etc.

El corrector ortográfico integrado en RubyMine ahora también funciona para los archivos RBS.

Información de parámetros basada en RBS

La ventana emergente de información de parámetros (Ctrl+P) muestra los nombres y tipos de parámetros del método. Ahora puede utilizar la información de tipo de las firmas RBS correspondientes (si están presentes).

Copyright de los archivos RBS

Es posible que su proyecto contenga archivos RBS que desee proteger mediante copyright. En lugar de añadir un aviso de copyright a cada archivo por separado, ahora puede añadir la información de copyright de forma automática al principio de los archivos RBS.

Ejecutar RuboCop al guardar

Ahora puede configurar RuboCop para que reformatee los archivos cada vez que se modifique uno, y los cambios se guardan de forma automática o manual. Para activar esta función, busque RuboCop en Preferences / Settings y seleccione la casilla de verificación Run ‘rubocop -a’ on save.

Comprobación de tipo

Más inspecciones para una comprobación de tipos basada en RBS

Hemos añadido una serie de nuevas inspecciones para detectar desajustes entre los valores asignados y los tipos previstos tomados de RBS.

Estas inspecciones comprueban los tipos de constantes, las variables de instancia y de clase, los parámetros de métodos y bloques, los valores de retorno, los argumentos pasados a las llamadas yield y las variables globales. Las encontrará en Preferences / Settings | Editor | Inspections | Ruby.

Compatibilidad inicial con Sorbet

RubyMine ahora reconoce las firmas de tipo Sorbet, incluyendo las de los archivos .rbi. Las inspecciones de desajuste de tipos para los argumentos de métodos y los valores de retorno ahora pueden funcionar basándose en Sorbet.

Puede navegar entre los archivos Ruby y RBI correspondientes utilizando las acciones Go To | Type Signature / Associated Declaration del menú contextual. También puede utilizar el acceso directo Ctrl+Alt+Inicio.

Desarrollo remoto

Compatibilidad con flujos de trabajo de desarrollo remoto

RubyMine ahora es compatible con una versión temprana del flujo de trabajo de desarrollo remoto. Le permite conectarse, desde cualquier parte del mundo, a una máquina remota que ejecute un backend de RubyMine. Todo el procesamiento se realizará en esa potente máquina remota, y podrá trabajar en el proyecto con la misma fluidez que si estuviera en su máquina local.

Experiencia de usuario

Mejoras de rendimiento

En esta versión, hemos trabajado en la mejora del rendimiento del editor de código. Acciones como abrir archivos, escribir, invocar la finalización de código y aplicar arreglos rápidos ahora funcionan más rápido.

Esto es solo ligeramente perceptible en archivos de proyecto de tamaño medio, pero es mucho más evidente cuando se trabaja con archivos grandes (2000 líneas de código o más).

Ventana de herramientas Bookmarks

En esta versión, hemos reelaborado la funcionalidad de los marcadores. Puede crear marcadores con nombres personalizados y agruparlos en nodos. Todos los marcadores se encuentran ahora en la nueva ventana de herramientas Bookmarks(Alt+2).

Dividir la ventana de herramientas Run

Ahora puede dividir la ventana de herramientas Run horizontal o verticalmente. Esto puede resultarle útil cuando tiene varias configuraciones en marcha y desea ver sus resultados simultáneamente.

Solo tiene que arrastrar y soltar la pestaña que desee al área resaltada. Puede devolver la pestaña a su lugar para deshacer la división de la ventana de herramientas, o hacer clic con el botón derecho del ratón en el panel superior y seleccionar Unsplit en el menú contextual.

Vista previa de fuente para mostrar usos

Ahora puede activar la vista previa del código fuente en la ventana Show Usages (Ctrl+Alt+F7) haciendo clic en el icono cuadrado.

VCS

Checkout and Rebase onto Current para ramas remotas

La acción Checkout and Rebase onto Current le permite comprobar la rama seleccionada y volver a situarla sobre una rama que está actualmente comprobada. Hasta ahora, esto solo estaba disponible para las ramas locales. A partir de esta versión, hemos añadido la posibilidad de aplicar esta acción también a las ramas remotas.

Nueva ventana de herramientas Changes

A partir de esta versión, RubyMine mostrará datos de confirmación y la diferencia entre confirmaciones en una ventana de herramientas Changes independiente, situada a la izquierda del editor.

Para abrir la nueva ventana de herramientas, vaya a la pestaña Log de su sistema de control de versiones, haga clic con el botón derecho del ratón en una revisión y seleccione Compare with local en el menú contextual.

Nueva acción Push All up to Here

Hemos añadido una nueva acción que le permite hacer push de todas las confirmaciones hacia la que haya seleccionado. Esto puede ser útil cuando se tienen varias confirmaciones listas para su envío mientras otras están todavía en proceso.

Web y marcos de trabajo

Mejor finalización de código para HTML

Hemos mejorado el funcionamiento de la finalización del código en los archivos HTML. Anteriormente, las sugerencias de finalización en los archivos HTML solo aparecían cuando se escribía el carácter <. A partir de esta versión, también puede ver sugerencias de finalización de archivos HTML cuando escribe un nombre de etiqueta o una abreviatura.

Actualizar paquetes npm desde el editor

Ahora puede actualizar paquetes npm a la última versión directamente desde el editor. Abra su archivo package.json, coloque el signo de intercalación sobre la versión del paquete que desea actualizar, pulse Alt+Intro y seleccione Update ‘package name’ to the latest version.

Mejoras en el cliente HTTP

Hemos añadido a compatibilidad con las respuestas binarias, solicitudes gRPC, redirección del resultado a un archivo o directorio personalizado, compatibilidad con flujos de texto y JSON, y compatibilidad con identificadores de solicitudes HTTP.

Space

Fusionar solicitudes y revisiones de código desde el IDE

Para los proyectos ubicados en Space, ahora puede crear solicitudes de fusión y revisiones de código directamente desde el IDE. Para llamar a estas acciones, haga clic en el icono + de la barra de herramientas superior de la ventana de herramientas Code Reviews.

Marcar archivos como vistos

En las revisiones de código, los archivos que aún no ha revisado se marcarán con puntos azules. Esto le ayudará a asegurarse de que no se le escapa ningún cambio en los proyectos de Space al realizar las revisiones de código.

Los puntos desaparecerán automáticamente después de abrir los elementos marcados. Si quiere revisar los cambios más adelante, puede seleccionar Mark as Not Viewed en el menú contextual.

Herramientas para bases de datos

Base de datos en el sistema de control de versiones

Ahora puede generar una fuente de datos DDL a partir de una real, utilizar la fuente de datos DDL para mapear la real, y compararlas y sincronizarlas en cualquier dirección.

Aggregate

Hemos añadido la posibilidad de mostrar una vista Aggregate para un rango de celdas. Solo tiene que seleccionar el rango de celdas para el que desea ver la vista, hacer clic con el botón derecho y seleccionar Show Aggregate View.

Nueva ventana diff de base de datos

Ahora puede utilizar la nueva ventana diff de base de datos para comparar dos esquemas u objetos: solo tiene que seleccionarlos y pulsar Ctrl+D.

La primera fila es la detección automática del encabezado

A partir de esta versión, al abrir o importar un archivo CSV, RubyMine detecta automáticamente que la primera fila es el encabezado y contiene los nombres de las columnas.

Otras mejoras

  • Ahora es posible utilizar un lector de pantalla para crear proyectos (IDEA-185260).
  • Desactiva el widget emergente de la ventana de herramientas (IDEA-278151) y la ventana emergente de documentación rápida (IDEA-274143) que solía aparecer al pasar el ratón.
  • Se ha solucionado un problema con la llamada a la ventana emergente Go To Declaration or Usages pop-up (IDEA-272536).
  • Se han resuelto varios problemas centrados en la voz en off (IDEA-273021).
  • La comprobación de tipos, las inspecciones de argumentos no coincidentes y la acción de información de parámetros ahora funcionan para las llamadas super en los métodos anulados.
  • Se ha añadido la compatibilidad con los parámetros rest RBS (es decir, parámetros de longitud variable) entre otros parámetros.
  • Ahora puede navegar entre los métodos sobrecargados en archivos RBS utilizando nuevos iconos del medianil.
  • Al crear un nuevo archivo RBS, puede utilizar el símbolo :: en un nombre de archivo para crear un archivo que contenga los módulos circundantes.
  • Ahora puede utilizar el formato Class#method para encontrar métodos a través de Search | Symbols.
  • RubyMine ya es compatible con variables de instancia y atributos singleton, y es capaz de proporcionar comprobación de tipos y sugerencias para estos casos.
  • Se ha dejado más clara la estructura de la configuración de VCS.
  • Se han corregido varios problemas relacionados con la asignación de archivos .js y .d.ts y se han añadido iconos para navegar entre ellos.
  • Se ha añadido la compatibilidad con el intérprete remoto de Node.js para npm, ESLint, Mocha y Jest.
  • Se ha reducido el tiempo de indexación de los archivos JavaScript en un 20 %.
  • Ahora puede descargar módulos ES6 remotos desde el editor: coloque el signo de intercalación en la ruta de importación, pulse Alt+Intro y seleccione Download module.
  • El terminal integrado ahora es compatible con la nueva API ConPTY en Windows. Usarlo como backend para el terminal nos ayuda a resolver varios problemas que los usuarios han estado teniendo con la antigua implementación, que estaba basada en winpty. También añade la compatibilidad con colores de 24 bits en el terminal.
  • En esta versión, hemos añadido la compatibilidad con typeahead para el terminal integrado. El terminal ahora puede predecir las modificaciones de texto y las mostrará al instante con un tipo de fuente ligeramente diferente. Esto puede ser útil mientras se trabaja en una máquina remota, ya que el IDE es capaz de mostrar los caracteres tan rápido como lo haría en una máquina local, incluso a pesar de la latencia.