Novedades de Rider

Rider 2023.2 ofrece una compatibilidad mejorada con C#, con nuevas inspecciones para trabajar con funciones locales y cadenas sin formato, así como para resolver problemas comunes de Entity Framework. Hemos realizado una gran cantidad de mejoras en la interfaz de usuario, ultimando el nuevo aspecto del IDE, que es elegante, moderno y muy personalizable. Hemos dado un nuevo empujón al desarrollo de juegos con Rider con las actualizaciones de la funcionalidad DOTS para Unity y la indexación optimizada de planos para Unreal Engine, junto con otras numerosas mejoras. Rider 2023.2 es también la primera versión del IDE que ofrece funciones con IA a través del complemento de JetBrains AI Assistant.

Novedades principales

Encabezados de proyecto personalizables

Encabezados de proyecto personalizables Nueva interfaz de usuario

Con Rider 2023.2, puede navegar fácilmente por colores entre todos los proyectos abiertos. De forma predeterminada, ahora los encabezados vienen con colores definidos previamente, pero puede cambiarlos en función de sus preferencias. Para establecer un nuevo color en el proyecto, haga clic con el botón derecho del ratón en un encabezado y acceda al menú contextual. Seleccione la opción Change Toolbar Color y elija el color que desee. Para deshabilitar esta funcionalidad, anule la selección de la opción Use Project Colors in Toolbar del menú contextual.

AI Assistant

AI Assistant Acceso limitado

Con esta versión, introducimos una importante novedad en Rider: AI Assistant. El conjunto inicial de funcionalidades impulsadas por la IA ofrece un chat de IA integrado y se entrelaza de forma natural con algunos de los flujos de trabajo principales de los usuarios del IDE. AI Assistant puede analizar el código seleccionado, explicar el significado de una confirmación y crear archivos Unity escritos según sus especificaciones.

Más información

Ventana de herramientas Build rediseñada

Hemos rediseñado la ventana de la herramienta Build para Rider 2023.2, tanto en términos de rendimiento como de experiencia e interfaz de usuario. Ahora, los resultados de la compilación se presentarán como un árbol de eventos a la izquierda y un registro a la derecha. El resultado se cargará de forma «perezosa», es decir, que solo se cargarán y mostrarán los detalles de la compilación que elija consultar en el árbol de eventos, de modo que sea más fácil de navegar por este y la CPU trabaje mejor.

Integración con GitLab

Rider 2023.2 introduce la integración inicial con GitLab, lo que le permite trabajar con la funcionalidad Merge Requests directamente desde el IDE y agilizar el flujo de trabajo de desarrollo.

Análisis del código

Compatibilidad con C#

Compatibilidad mejorada con cadenas sin formato

Hemos añadido nuevas inspecciones de C# y acciones contextuales para trabajar con cadenas sin formato, así como asistencia mejorada para la escritura y nuevas opciones de formato:

  • Una inspección Use raw string para transformar cadenas literales de varias líneas en sus representaciones sin formato.
  • Una inspección Simplify raw string para eliminar algunas de las comillas y símbolos del dólar que se vuelven redundantes.
  • Varias acciones contextuales para añadir o eliminar comillas, llaves de interpolación y símbolos del dólar, así como para alternar entre la representación en una o varias líneas.
  • Varias opciones de formateador de código, que le permiten alinear o sangrar el contenido dentro de cadenas sin formato.
  • Mejora de la asistencia a la escritura al pulsar las teclas Intro, Supr o Retroceso.

Consulte el artículo del blog correspondiente para obtener más información sobre nuestra compatibilidad mejorada con cadenas sin formato.

Inspecciones de problemas comunes de Entity Framework

Inspecciones de problemas comunes de Entity Framework

Hemos añadido varias inspecciones nuevas, arreglos rápidos y opciones de navegación contextual para problemas comunes que puede sufrir al trabajar con bases de datos que utilizan un marco de asignación objeto-relacional (ORM) como Entity Framework.

  • Para ayudarle con un posible problema «N+1», existen las inspecciones Possible multiple queries to the database for related entities (N+1 problem) y Possible multiple queries to the database (N+1 problem), un arreglo rápido correspondiente y una navegación contextual de ida y vuelta para investigar los lugares de su código en los que tiene un posible problema «N+1».
  • Además de detectar los problemas «N+1», introducimos una inspección más útil cuando se trabaja con Entity Framework: Query can return incomplete data for related entities. Ahora también tenemos un arreglo rápido y una navegación contextual de ida y vuelta para ayudarle a investigar este problema.

Más información sobre las nuevas inspecciones relacionadas con Entity Framework en el artículo del blog.

Inspecciones para trabajar con funciones locales

Rider 2023.2 incorpora dos nuevas inspecciones y sus correspondientes arreglos rápidos destinados a mejorar la legibilidad del código con funciones locales:

  • Una recomendación para poner un return o continue explícito antes de las funciones locales al final de un método.
  • Una sugerencia para mover las funciones locales al final de un método o bloque y separarlas del código ejecutable con un return o continue explícito u otra instrucción de salto de flujo de control.

Consulte este artículo del blog con más detalles sobre las nuevas inspecciones.

Inspecciones para directivas #nullable y anotaciones NRT

Inspecciones para directivas #nullable y anotaciones NRT

Ya están disponibles varias inspecciones nuevas para las directivas #nullable y las anotaciones NRT:

  • Una inspección Redundant nullable directive.
  • Una inspección Unused nullable directive.
  • Una inspección para alertarle de los casos en los que las anotaciones de tipo de referencia anulable (NRT) contradicen los atributos JetBrains.Annotations de un miembro base.

Para saber más sobre estas inspecciones, visite este artículo del blog.

Navegación mejorada desde declaraciones var

Navegación mejorada desde declaraciones var

Ahora, todas las acciones de navegación (Go to…, Find Usages, etc.) sugieren tipos subyacentes cuando se navega desde var para tipos comunes usados para contener otros tipos. Por ejemplo, Rider sugerirá navegar a Person si se utiliza la acción Go to declaration desde la palabra clave var de una variable con el tipo ImmutableArray<Person>?.

Puede obtener más información en el siguiente artículo del blog.

Constructores primarios Versión preliminar de C# 12

En la versión 2023.2, hemos introducido la compatibilidad con constructores primarios para clases y structs que no son registros a partir de la versión preliminar de C# 12. Existen varias inspecciones que detectan aquellos tipos en los que la inicialización puede expresarse con nuevos constructores primarios y sugieren aplicar un arreglo rápido para reducir en gran medida la cantidad de repeticiones de código.

A veces, la inicialización del tipo debe hacerse menos trivial y ya no puede expresarse mediante un constructor primario. Para estos casos, hemos introducido un par de acciones contextuales para invertir el reemplazo de los parámetros primarios del constructor por constructores y campos ordinarios.

Para ver todas estas y muchas más funcionalidades de los constructores primarios en acción, consulte este otro artículo del blog.

Compatibilidad con valores de parámetros predeterminados en lambdas

Compatibilidad con valores de parámetros predeterminados en lambdas Versión preliminar de C# 12

Como parte de nuestro trabajo en pro de la compatibilidad con las actualizaciones del lenguaje C# 12, vamos a introducir la compatibilidad con valores de parámetros predeterminados en las expresiones lambda. Además del conjunto estándar de mensajes de advertencia asociados al reconocimiento de esta sintaxis, también hemos modificado una inspección existente, The parameter has the same default value, para tener en cuenta los valores predeterminados de los parámetros en las lambdas. Puede obtener más información aquí.

Mejor compatibilidad con los recursos eliminables

La norma 2023.2 introduce dos nuevas inspecciones de código diseñadas para controlar mejor la eliminación de un objeto:

  • La inspección Return of a variable captured by ‘using’ statement le avisa cuando el objeto devuelto se desecha inmediatamente.
  • La inspección Return of a task produced by ‘using’-captured object identifica los escenarios en los que una Task es producida por un objeto capturado por una instrucción using y luego devuelta inmediatamente.

También hemos mejorado la funcionalidad Generate dispose pattern para que admita la interfaz IAsyncDisposable y pueda generar un método asíncrono para liberar los recursos.

Encontrará más detalles sobre estas incorporaciones aquí.

Mejor compatibilidad con descartes en C#

El análisis de código ha recibido nuevas y útiles adiciones a la compatibilidad con descartes de C#:

  • Ahora puede comprobar rápidamente los nombres y tipos de los valores descartados con la funcionalidad Push-to-Hint.
  • Hay una advertencia The _ name is typically reserved for local parameters without usages que advierte sobre variables y parámetros con nombre _ que se están utilizando realmente. Parecen un valor «descartado», pero en realidad representan todo lo contrario.
  • Dispone de una inspección Use discard assignment para sustituir una variable y un parámetro no utilizados por un descarte.

Eche un vistazo a el artículo del blog para obtener más información sobre la compatibilidad mejorada con los descartes.

Nuevos consejos de inserción para mejorar la legibilidad del código

Nuevos consejos de inserción para mejorar la legibilidad del código

Consejos de inserción con nombres de componentes de tupla

Al pasar un valor a un argumento de tupla o tipo de retorno, C# le permite omitir los nombres de los componentes. Sin embargo, sin los nombres, resulta más difícil saber el significado de cada componente sin mirar su tipo de destino. Por ejemplo, muchos desarrolladores de software tendrán que comprobar dónde se asigna una tupla (null, false) para entender qué significan sus componentes.

¡Ahí es donde los consejos de inserción pueden ayudarle! Rider 2023.2 mostrará consejos de inserción con nombres de componentes de tupla cuando esos nombres no se desprendan ya de la expresión del componente, lo que hará que su código sea mucho más fácil de leer y comprender de un vistazo.

Para los componentes nulos y predeterminados, Rider 2023.2 mostrará consejos sobre sus tipos de destino incluso si el componente de destino no tiene un nombre explícito. Hará una excepción con los tipos cadena y objeto, ya que estos no suelen ser muy informativos.

Otra situación común en la que los nombres pueden mejorar la legibilidad son los patrones de deconstrucción en los que se conoce un nombre explícito, ya sea por el método Deconstruct o por los componentes de la tupla fuente. Estos consejos se han desarrollado para proporcionarle un contexto adicional cuando un patrón en sí no contiene suficientes datos para entender qué coincide, como value is ({ }, true, null).

Compatibilidad con las directivas #pragma warning mejorada

Compatibilidad con las directivas #pragma warning mejorada

Las directivas «pragma» permiten deshabilitar o restaurar fácilmente las advertencias del compilador mediante sus ID. Sin embargo, aunque estos ID son una buena forma de comunicarse con el compilador, es posible que a los desarrolladores humanos les cueste entenderlos. Sin conocimientos avanzados, puede no estar claro a qué se refiere un ID como CS0168 o CS0618, o qué requiere atención.

UX/UI

Con esta versión, la renovada interfaz del IDE presentada por primera vez en Rider 2022.3 se convierte por fin en la predeterminada para todos los nuevos usuarios. Si aún no se ha pasado a la nueva, le animamos a que la pruebe accediendo a Settings / Preferences | Appearance & Behavior | New UI | Enable new UI.

Zoom completo en el IDE

Menú de barras rediseñado en la barra de herramientas principal en Windows y Linux Nueva interfaz de usuario

Hemos perfeccionado el comportamiento del menú de barras de la barra de herramientas principal de la nueva IU para Windows y Linux. Ahora, al hacer clic en el icono del menú, los elementos aparecen de forma horizontal sobre la barra de herramientas.

Configuraciones de ejecución ancladas

Fijar configuraciones de ejecución en el widget Run Nueva interfaz de usuario

Para facilitar la gestión de varias configuraciones de ejecución, hemos implementado la opción de anclar las configuraciones preferidas en el widget Run. Para añadir una configuración de ejecución a la sección Pinned, abra el menú desde el icono de los tres puntos que verá junto a su nombre y seleccione Pin. Si tiene varias configuraciones ancladas, puede reorganizarlas fácilmente arrastrándolas y soltándolas dentro de la lista.

Zoom completo en el IDE

Mejora de la personalización de la barra de herramientas principal Nueva interfaz de usuario

Hemos ampliado las opciones de personalización de la barra de herramientas principal de la nueva interfaz de usuario. Ahora puede utilizar un menú desplegable para elegir rápidamente las acciones que desea añadir a la barra de herramientas. Para ello, haga clic con el botón derecho en cualquier widget, seleccione Add to Main Toolbar y explore las opciones disponibles.

Tema claro con encabezado claro

Tema Light con encabezado claro Nueva interfaz de usuario

En la versión 2023.2 de Rider, hemos perfeccionado el tema Light gracias a la opción alternativa Light with Light Header, que presenta colores claros a juego para las cabeceras de las ventanas, las descripciones emergentes y los globos de notificación.

Navegación con un solo clic entre los directorios del proyecto

Navegación con un solo clic entre los directorios del proyecto

En la ventana de herramientas de Solution Explorer, encontrará la nueva opción Open Directories with Single Click que permite expandir y contraer las carpetas del proyecto de forma más rápida y ágil. La opción está disponible en el icono de los tres puntos.

Ordenación de archivos por hora de modificación en Solution Explorer

Ordenación de archivos por hora de modificación en Solution Explorer

Rider 2023.2 incorpora la tan esperada opción de ordenar los archivos en Solution Explorer según la hora de modificación de estos. Esta nueva funcionalidad reordena los archivos de forma automática cada vez que se guardan los cambios en el proyecto. Para activar esta función, abra el menú desde el icono de los tres puntos en Solution Explorer y, a continuación, seleccione Tree Appearance | Sort by Modification Time.

AI Assistant Acceso limitado

Las versiones 2023.2 de los IDE basados en IntelliJ y las herramientas .NET introducen una nueva funcionalidad importante: AI Assistant. Aún se encuentra en las primeras fases de desarrollo, pero ya puede probar a integrar la asistencia de la IA en los flujos de trabajo principales del usuario del IDE, e integrar funcionalidades de IA con un comprensión profunda del código. Más información en nuestra ayuda web.

AI Assistant no se incluye actualmente con las versiones estables de los IDE de JetBrains y puede instalarse como un complemento independiente disponible para las versiones 2023.2.x. Por el momento, existe una lista de espera para acceder a la funcionalidad de AI Assistant.

Chatee con AI Assistant

Chatee con AI Assistant

Utilice la ventana de herramientas AI Assistant para mantener una conversación con el LLM, formular preguntas o repetir una tarea. El IDE le proporcionará un contexto específico del proyecto, como los lenguajes y las tecnologías utilizados en su proyecto. Una vez que le satisfaga el resultado, utilice la función Insert Snippet at Caret para colocar el código generado por la IA en el editor, o simplemente cópielo.

Menú AI Actions...

Menú AI Actions...

Seleccione un fragmento de código específico en el editor e invoque una acción desde el menú contextual AI Actions....

AI Assistant puede ayudarle a:

  • Explicar el código seleccionado.
  • Buscar posibles problemas y opciones de refactorización.
  • Iniciar un nuevo chat de IA sobre el código seleccionado.

Generación y explicación de mensajes de confirmación

El cuadro de diálogo del mensaje de confirmación ahora tiene el botón Generate Commit Message with AI Assistant. Haga clic en él para enviar los diffs de sus cambios al LLM, que generará un mensaje de confirmación describiendo sus cambios. También puede pedir a AI Assistant que le explique las confirmaciones realizadas por sus compañeros.

AI-Assisted Unity F

Generación de archivos Unity asistida por IA

AI Assistant también puede ayudarle a generar un archivo para una solución Unity escrita según sus especificaciones. Haga clic con el botón derecho del ratón en un proyecto de Solution Explorer, seleccione Create with AI Assistant en el menú contextual y, a continuación, escriba lo que desee. Una vez que la IA haya generado el contenido del archivo, haga clic en Create New File, y se añadirá automáticamente a su proyecto.

Rendimiento

Con Rider 2023.2, hemos revisado nuestro enfoque del almacenamiento en caché de los datos que necesita el IDE para que funcionen sus sistemas. Esta revisión, respaldada por innumerables pruebas de rendimiento, se tradujo en una notable reducción del consumo de espacio en disco por cada solución que abre. En términos prácticos, significa en general menos tiempo dedicado a la entrada/salida de disco y tiempos de carga más rápidos para las soluciones.

Navegación y búsqueda

Find Usages Advanced

Find Usages Advanced

En Rider 2023.2, hemos actualizado la funcionalidad Find Usages a nivel funcional. Ahora, si invoca Find Usages Advanced en un símbolo (como un método, una clase o una variable), el IDE mostrará una ventana en la que podrá especificar criterios de búsqueda adicionales.

Consulte este artículo de nuestro blog para saber más.

Opciones de navegación

Para mejorar su experiencia de navegación por la base de código, hemos añadido una serie de opciones útiles en la página dedicada Search and Navigation, en Settings / Preferences | Editor.

SDK .NET

Analizadores y generadores de fuentes Roslyn

Rider 2023.2 introduce una serie de mejoras para trabajar con los analizadores Roslyn y los generadores de fuentes. He aquí solo algunas:

  • Hemos añadido el botón Reboot Source Generators, para que no tenga que reiniciar todo el IDE si un generador de código fuente personalizado provoca que se cuelgue.
  • Rider muestra ahora las excepciones del generador de fuentes en la vista Problems, lo que le permite centrarse en problemas que antes habrían pasado desapercibidos o quedado sin explicación.
  • El IDE proporciona ahora las trazas de pila completas de las excepciones en la vista Problems, lo que le permite localizar las causas raíz de los errores con mayor facilidad.
  • Ahora puede modificar el nivel de gravedad de las inspecciones de Roslyn en Solution Explorer, lo que permite una mayor personalización y control sobre la configuración del análisis de código.
  • Por último, pero no por ello menos importante, incluimos dos nuevas plantillas de proyecto para crear analizadores Roslyn y proyectos de generador de fuentes en Rider.

Docker

Ejecución de Docker en WSL

Ejecución de Docker en WSL

Nuestra última versión introdujo la opción de ejecutar Docker en modo rápido. A partir de Rider 2023.2, también se podrá utilizar Docker en modo rápido en WSL. Para ejecutar contenedores Docker en una máquina Windows sin Docker Desktop, primero deberá instalar WSL e instalar Docker en la distribución Linux y, a continuación, añadir WSL a los ajustes/propiedades de Rider en la sección Build, Execution, Deployment | Docker. En ese momento, ya podrá ejecutar y depurar contenedores Docker en WSL (con o sin modo rápido).

Etiquetas de configuración de ejecución de Docker Compose

Etiquetas de configuración de ejecución de Docker Compose

Rider 2023.2 le facilitará el ajuste de la configuración de ejecución de Docker Compose mediante la introducción de etiquetas. Al añadir estos fragmentos de código al archivo docker-compose.yml, podrá especificar si desea ejecutar y depurar sus aplicaciones, y cómo desea hacerlo.

Por ejemplo, si desea deshabilitar el modo rápido para algunos de sus servicios, puede asignarles la etiqueta com.jetbrains.rider.fast.mode: "false". Si desea deshabilitar el modo de depuración, utilice la etiqueta com.jetbrains.rider.debug: "false".

Recarga activa de XAML para MAUI

Por fin está disponible la recarga activa para soluciones orientadas a .NET MAUI. Con la recarga activa de XAML en Rider, los desarrolladores móviles pueden realizar cambios en la interfaz de usuario y en el código de sus aplicaciones MAUI mientras se ejecutan, sin tener que volver a compilarlas e implementarlas. Los cambios actualizados se aplican de inmediato, lo que proporciona una experiencia de desarrollo más rápida e iterativa.

Desarrollo de juegos

Unity

Esta es otra versión cargada de funcionalidades para el desarrollo de Unity, con muchas mejoras en la experiencia de edición de archivos ShaderLab, actualizaciones adicionales de la funcionalidad DOTS y una mejor compatibilidad con los archivos USS.

AI Assistant para Unity

El nuevo AI Assistant es una herramienta para resolver problemas y aprender, y estamos ansiosos por verlo en acción ayudando a los desarrolladores de Unity. Rider indicará a AI Assistant cuándo está trabajando con un proyecto de Unity, de modo que, si formula una pregunta del tipo «¿Cómo creo una ventana del editor?» o «¿Cómo añado un elemento de menú?», AI Assistant sabrá que se refiere a una ventana o un elemento de menú del editor Unity y le sugerirá las API de Unity para ayudarle a lograr su objetivo.

El contexto de Unity también ofrece una gran oportunidad para crear prototipos de comportamientos adicionales. Cuando le pida que cree un archivo, AI Assistant incluirá un botón que creará de forma automática el archivo con el contenido que sugiera. Ampliaremos esta función a otras acciones y más contextos a medida que evolucione la funcionalidad de AI Assistant.

Compatibilidad con ShaderLab

En esta versión se ha mejorado enormemente la compatibilidad de Rider con los archivos ShaderLab, con una nueva asistencia a la escritura, plantillas activas, generación de rutas de navegación y de la ventana de herramientas Structure, y navegación Ctrl+clic hasta la declaración del nombre de un shader o pass.

¡Hay tantas actualizaciones que les hemos dedicado su propio artículo en el blog! Consúltelo para conocer más detalles.

Unity DOTS

Hemos introducido algunas mejoras útiles en la generación de código para la pila tecnológica orientada a datos (Data Oriented Tech Stack, DOTS) basándonos en algunos comentarios estupendos de la comunidad de Unity. También hemos introducido nuevas plantillas de archivos y activas, además de ampliar el análisis de contexto Burst a más partes de su código.

El depurador también está empezando a aprender sobre DOTS. La presentación mejorada de los tipos RefRO y RefRW hace que ahora resulte mucho más fácil ver el valor que hay detrás de los contenedores de referencia. No obstante, siempre puede ampliar el nodo Raw Value para ver la representación original.

Compatibilidad con hojas de estilo Unity

Esta versión supone una importante actualización para los archivos de hojas de estilo de Unity (USS), ya que Rider es ahora compatible con la función var, además de añadir resaltado y completado para una amplia gama de propiedades añadidas en las últimas versiones de Unity.

Otras actualizaciones

También hemos añadido la finalización de las rutas utilizadas en las API de bases de datos de activos. Simplemente empiece a escribir y Rider le sugerirá rutas de su proyecto.

Y, por supuesto, hay numerosas actualizaciones y correcciones menores. Por ejemplo, hemos solucionado el problema que ocasionalmente provocaba que las pruebas de unidad se quedaran atascadas en el estado Canceling, los archivos .meta ya no se crean incorrectamente para las carpetas ocultas, y los iconos específicos de Unity ahora coinciden con la nueva interfaz de usuario.

Unreal Engine

Rider 2023.2 es otra gran actualización para la compatibilidad con Unreal Engine, con muchas actualizaciones de C++, así como la introducción de la compatibilidad con Hot Reload y Live Coding, mejoras de rendimiento para la indexación de Blueprint, y correcciones y actualizaciones de compatibilidad con Perforce.

Indexación de Blueprint optimizada

Indexación de Blueprint optimizada

Esta versión mejora el rendimiento del IDE al indexar Blueprints. La primera vez que abra un proyecto, Rider indexará todos sus activos Blueprint, lo que le permitirá encontrar usos de clases en Blueprints y mostrar los valores de los datos serializados directamente en el editor de texto, almacenar en caché esos datos y mantenerlos actualizados de forma incremental mientras usted trabaja.

Las versiones anteriores de Rider indexaban estos activos al mismo tiempo que su código C++, lo que significaba que pasaba más tiempo antes de que Rider estuviera listo para ponerse en marcha.

En 2023.2, Rider indexará los activos como tarea en segundo plano después de indexar todo su código C++. Podrá disfrutar de las ventajas del resaltado de código mientras edita, y navegar por su código mientras Rider sigue indexando los activos.

Compatibilidad con Live Coding y Hot Reload

Compatibilidad con Live Coding y Hot Reload

Rider admite ahora la invocación de Hot Reload o Live Coding desde el IDE, y le permite actualizar su aplicación Unreal mientras el editor está en ejecución. Una vez habilitada una de estas funciones en el editor de Unreal, Rider mostrará un botón de la barra de herramientas Build and Reload que compilará sus cambios mientras Unreal carga las actualizaciones.

Trabajar con Perforce

Hemos mejorado la integración con Perforce, disminuyendo notablemente el tiempo que tarda en actualizarse el estado de los archivos locales, entre otras correcciones y actualizaciones. Rider detectará ahora automáticamente un espacio de trabajo Perforce al abrir una solución, y también obtendrá el valor de P4CONFIG y otros ajustes del registro, y no solo de las variables de entorno.

Otras actualizaciones

Rider 2023.2 incluye muchas otras actualizaciones y correcciones útiles para el desarrollo de juegos en C++. Hemos mejorado un escenario especialmente complicado en el que Rider se colgaba al trabajar con archivos de proyecto increíblemente grandes. Rider facilita ahora la limitación del alcance de Find in Files a los directorios de complementos cuando se trabaja con soluciones basadas en .uproject. Y presenta varias correcciones para el complemento RiderLink, para que se pueda compilar con la última cadena de herramientas VC++.

Desarrollo web

Formato de errores mejorado

Formato de errores mejorado

En Rider 2023.2, hemos estado estudiando cómo mejorar la presentación de los errores de tipo en JavaScript y TypeScript. Sus errores y advertencias mostrarán ahora un formato más legible, lo que facilitará la detección de problemas en su código. Esto es así en todos los errores de TypeScript y algunos de los errores más populares de JavaScript. Es más, ¡también funciona con errores localizados!

Compatibilidad con anidado CSS

Rider now supports the CSS Nesting Module feature. Hemos implementado compatibilidad sintáctica y una inspección para garantizar que el selector anidado no comienza con un identificador o una notación funcional.

Compatibilidad con la finalización de código Tailwind

El complemento de finalización de código Tailwind para Rider ofrece ahora compatibilidad con archivos Razor.

Compatibilidad con Vue Language Server

Compatibilidad con Vue Language Server

¡Tenemos grandes noticias para todos los usuarios de Vue! La compatibilidad inicial con Volar ha llegado a Rider para que pueda detectar los errores de forma más precisa. Volar se utilizará de forma predeterminada para TypeScript v5.0 y versiones más recientes, con nuestra propia implementación utilizada para versiones anteriores. Puede configurar el servicio Vue para que utilice la integración Volar en todas las versiones de TypeScript, en Settings | Languages & Frameworks | TypeScript | Vue.

Más información: Novedades de WebStorm 2023.2

Control de versiones

Comprobaciones de confirmación en segundo plano

Comprobaciones de confirmación en segundo plano

Hemos reelaborado el comportamiento de las comprobaciones a la confirmación de Git y Mercurial con el fin de acelerar el proceso general de confirmación. Las comprobaciones se realizan ahora en segundo plano después de confirmar pero antes de enviar.

Opción de confirmar líneas específicas de código

Opción de confirmar líneas específicas de código

Rider 2023.2 introduce una funcionalidad muy esperada que permite a los usuarios confirmar selectivamente partes específicas de trozos de código. Para realizar una confirmación parcial, seleccione las líneas dentro de un fragmento y seleccione Include these lines into commit en el menú contextual. El fragmento se dividirá en líneas individuales con las seleccionadas resaltadas. Puede añadir o excluir líneas de la selección mediante casillas de verificación o el menú contextual.

Generación de perfiles de rendimiento y memoria

Análisis de instantáneas dotMemory dotUltimate

Antes de 2023.2, podía utilizar dotMemory en Rider solo para el análisis de la asignación de memoria. En 2023.2, puede recopilar instantáneas de memoria y analizarlas en Rider como en la versión independiente de dotMemory.

  • El análisis de instantáneas está disponible en Windows, Linux y macOS.
  • En Windows, también puede importar y analizar volcados de procesos.
  • Algunas funcionalidades y vistas no están disponibles, por ejemplo, las inspecciones automáticas de instantáneas y las vistas de trazas de pila de creación.
Agrupación por un hilo para muestreo, rastreo e instantáneas línea por línea

Agrupación por hilos para muestreo, rastreo e instantáneas línea a línea dotTrace dotUltimate

Ahora, la vista Call Tree le permite agrupar las pilas de llamadas por hilos individuales, lo que ofrece una visión más profunda de los problemas de rendimiento específicos de cada hilo.

Dynamic Program Analysis

  • Anteriormente, DPA podía contabilizar erróneamente el tiempo de depuración en pausa como tiempo de ejecución de código, lo que provocaba falsos positivos en la base de datos. Este problema se ha solucionado en la versión 2023.2.
  • Además, anteriormente DPA resaltaba grandes bloques de código si la pila de llamadas correspondiente contenía asignaciones de memoria por funciones lambda. Ahora, el resaltado es más específico.

Flujo de trabajo de calidad del código

Integración de la plataforma de calidad del código Qodana

Las herramientas de análisis estático son notoriamente complicadas de configurar. Sin embargo, con la versión Rider 2023.2, hemos eliminado este problema integrando completamente Qodana, el motor de análisis estático inteligente diseñado para adaptarse a cualquier proceso de CI/CD.

Esta integración le aporta dos importantes ventajas. En primer lugar, está la facilidad de configuración. Puede activar un análisis con solo unos clics, ver la lista de problemas en todo su proyecto y, a continuación, configurar Qodana en su sistema de CI/CD preferido para establecer la puerta de calidad. La segunda ventaja es la mejora del flujo de trabajo de calidad del código. Una vez que Qodana esté configurado en el sistema de CI/CD, podrá ver los resultados del análisis del lado del servidor sin salir de su IDE, nada más instalarlo.

Por cierto, Qodana se acaba de lanzar para su vista previa. Consulte este artículo del blog para obtener más información sobre el lanzamiento y obtener instrucciones sobre cómo utilizar Qodana en Rider.

Trabajo con bases de datos

Trabajo con bases de datos

Hemos reelaborado el cuadro de diálogo de conexión a la base de datos en Rider 2023.2 para eliminar algunas de las opciones no esenciales que confundían a los usuarios y para agilizar el flujo de trabajo de conexión. Una de las mejoras más interesantes es que Rider ahora analiza su solución abierta en busca de cadenas de conexión y las sugiere dentro del cuadro de diálogo.

Estos son otros cambios notables dentro de Rider 2023.2:

  • Compatibilidad con Redis Cluster.
  • Nueva interfaz de usuario para el cuadro de diálogo de migración de esquemas.
  • Ajuste de las zonas horarias en Data Editor.
  • Compatibilidad con bases de datos externas y datashares [Redshift].

Para obtener más información sobre las mejoras para trabajar con bases de datos, consulte esta página.

Compatibilidad con F#

Referencias en memoria de F# a C#

Referencias en memoria de F# a C#

Hemos habilitado las referencias en memoria de F# a C#, para que no tenga que crear proyectos C# para referenciar código F# y ver los cambios. Este cambio conduce a una mejor refactorización y navegación entre lenguajes, ya que ahora el servicio de compilador de F# siempre consulta las fuentes reales de C#, además de las referencias en memoria de C# a F# que ya funcionan.

Compatibilidad con inyecciones de lenguaje de IntelliJ Platform

Hemos añadido compatibilidad con las inyecciones de lenguaje de IntelliJ Platform, para que pueda utilizar varios lenguajes de frontend dentro de los literales de F#, así como acceder a bases de datos, abrir enlaces web o incidencias, y mucho más.

Go to File Member

Go to File Member

La nueva ventana emergente Go to File Member ya está disponible para F#, lo que facilita ver la estructura del archivo y navegar hasta los miembros desde los tipos base.

Actualizaciones para patrones de casos de unión

Actualizaciones para patrones de casos de unión

Hemos introducido algunas mejoras interesantes que le facilitarán el trabajo con patrones de casos de unión:

  • Una nueva acción contextual para convertir patrones de casos de unión en patrones de campos con nombre.
  • Nuevas reglas para el uso de patrones de campos con nombre para casos de unión.
  • Se han mejorado las reglas para los patrones de casos de unión, para que la ventana emergente de deconstrucción no le impida escribir el patrón manualmente.

We also want to thank Florian Verdonck for contributing to this improvement.

Generación de anulaciones

Hemos solucionado muchos problemas que redundarán en una generación más precisa de las anulaciones. Por ejemplo, los miembros generados ahora se colocan siempre en los lugares correctos, y los tipos ahora se reformatean si es necesario para los miembros generados. A huge thanks goes to David Schaefer for contributing to this improvement.

You can find the full list of F# updates and fixes available in Rider 2023.2 here.

Complementos

Complemento Settings Sync

Complemento Settings Sync

Durante un tiempo, existían dos complementos en paralelo que tenían funcionalidades entrecruzadas: IDE Settings Sync y Settings Repository.

Para evitar la confusión por tener dos complementos similares, hemos fusionado sus conjuntos de características en una sola solución: el nuevo complemento Settings Sync.

Compatibilidad con LSP para desarrolladores de complementos

Rider 2023.2 es compatible con la API LSP para desarrolladores de complementos. La API LSP está dirigida principalmente a los desarrolladores de complementos que deseen utilizar un servidor LSP específico para la asistencia a la codificación en el IDE. Si ha creado su propio lenguaje de programación o marco de trabajo, puede hacerlo compatible con el IDE mediante un servidor LSP y un complemento.

Actualmente, la compatibilidad con LSP incluye resaltado de errores y advertencias, arreglos rápidos, finalización de código y navegación a declaraciones. Para obtener más información, consulte este artículo del blog del equipo de IntelliJ IDEA.

Feature Trainer para Rider

Rider 2023.2 incluye Feature Trainer, una herramienta nueva e interactiva diseñada para familiarizar a los usuarios, nuevos o experimentados, con todas las funcionalidades y flujos de trabajo que ofrece el IDE. Feature Trainer adopta un enfoque de aprendizaje práctico, con instrucciones paso a paso y ejemplos de código para practicar. Pruébelo desde Help | Learn IDE Features. Feature Trainer solo está disponible en la nueva interfaz de usuario.

Mejoras de accesibilidad

En JetBrains queremos que nuestros productos sean inclusivos y accesibles para todo el mundo. Con esta versión, hemos introducido una serie de mejoras en la accesibilidad de Rider para que todos los usuarios, incluidas las personas ciegas o con problemas de visión, puedan utilizar nuestro producto en su totalidad. Las mejoras incluyen:

  • Etiquetado y descripción adecuados de los elementos de la interfaz de usuario.
  • Mejora de la navegación y el control del teclado en Settings / Preferences.
  • Mayor compatibilidad con lectores de pantalla, como NVDA, especialmente en la pestaña Run.
  • Mejora de la accesibilidad de la documentación, los recursos de ayuda y la gestión de paquetes NuGet.
  • Mejora de la accesibilidad en el diseñador Windows Forms.

Miscelánea

Compatibilidad con ARM32 en el depurador remoto

Además de la compatibilidad existente con ARM64, Rider 2023.2 también es compatible con herramientas de depuración remota cargadas en una máquina remota que se ejecuta en ARM32, como Raspberry Pi. Para iniciar un proceso remoto de este tipo, utilice el cuadro de diálogo Attach to Process.

Migración del terminal a ConPTY en Windows

JetBrains Rider incluye un emulador de terminal integrado para trabajar con un shell de línea de comandos desde el IDE. Las versiones anteriores de Rider dependían de una biblioteca WinPTY de terceros como capa de emulación de terminal en Windows. Para Rider 2023.2, vamos a cambiar a ConPTY, que viene con el sistema operativo, para las versiones de Windows compatibles. Aunque no se esperan cambios visibles, esta modificación abre la puerta a nuevas mejoras en el terminal y la consola de ejecución.