ReSharper 2023.3 ofrece compatibilidad con las últimas funcionalidades de C# 12. También se incluyen nuevos diagramas de relación entre entidades e inspecciones de incidencias relacionadas con las entidades. Esta actualización aporta varias mejoras importantes en el rendimiento, como el análisis optimizado del código en segundo plano y la posibilidad de controlar la cantidad de recursos asignados al análisis del código. El lanzamiento de ReSharper 2023.3 también se ve reforzado por una importante actualización de AI Assistant.
Prueba gratuita de 30 días disponible
JetBrains AI Assistant ya está disponible para todos con una serie de funcionalidades nuevas y mejoradas para aumentar su productividad. El último conjunto de mejoras para ReSharper incluye lo siguiente:
Utilice AI Assistant en ReSharper como función complementaria con una suscripción a JetBrains AI Service.
Con su última versión, ReSharper amplía la lista de funcionalidades de C# 12 que admite constructores primarios, directivas alias para referenciar cualquier tipo, expresiones de colección e interceptores, entre otras.
Consulte este artículo del blog para profundizar en las últimas actualizaciones de la compatibilidad con C# introducidas en Rider y ReSharper 2023.3.
ReSharper 2023.3 ahora puede reconocer y facilitar más escenarios en los que los servicios de análisis de código pueden funcionar de forma incremental cuando se interrumpen por la escritura. Esta mejora resulta especialmente práctica para la gestión de archivos de gran tamaño.
La última actualización también le permite controlar la cantidad de recursos que se asignarán al análisis de código de toda la solución. Ahora puede elegir entre los modos Low, Moderate y High de utilización de recursos.
A pesar de su nombre, el modo High está diseñado para no interferir con la escritura en el editor y no degrada la capacidad de respuesta del IDE. Comienza a aumentar gradualmente el uso de la CPU solo cuando la interrupción del análisis del código por la escritura de código ha finalizado, manteniendo una escritura fluida, todo ello mientras el análisis de la solución completa está procesando el código fuente en segundo plano.
Encontrar usos de tipos y constructores es ahora más rápido para soluciones con numerosas creaciones de objetos con tipos de destino, por ejemplo SomeType _field = new()
. Esta mejora también afecta positivamente a la velocidad de refactorización.
También hemos solucionado algunos problemas relacionados con el manejo de idiomas inyectados, que solían provocar un mayor uso de la CPU.
Hemos renovado la experiencia del usuario para la refactorización Extract local function. Antes, seleccionar un lugar para la nueva función de entre la lista de opciones disponibles era todo un reto, y no estaba claro qué se vería afectado por esa elección.
Con la experiencia de usuario actualizada, ahora verá una vista previa de la firma de la nueva función directamente en el editor de código. Esto facilita la comprensión precisa de dónde se insertará y cómo afectará su elección a la función introducida. También puede ver qué variables se transformarán en parámetros en lugar de cierres y qué otras funciones se reubicarán para permitir llamadas en la nueva ubicación.
Las acciones rápidas de Visual Studio y ReSharper pueden complementarse bien cuando se utilizan con criterio. Con ReSharper 2023.3, podrá aprovechar fácilmente la potencia de ambos sistemas. Ahora puede ajustar la configuración para utilizar exclusivamente las acciones rápidas de ReSharper, mostrar iconos de sugerencia para ambas o invocar todas las acciones rápidas desde un único punto de acceso: el menú de la bombilla de ReSharper.
ReSharper 2023.3 introduce claves de acceso para la acción Copy Code Reference. Ahora, cada tipo de referencia de código del menú contextual puede seleccionarse con solo pulsar una tecla.
En ReSharper C++ 2023.3, trabajar con código inactivo es ahora mucho más fácil. La finalización de código en bloques de código actualmente inactivos dentro de ramas condicionales del preprocesador sugiere ahora símbolos del ámbito global. Find Usages también se ha actualizado y ahora muestra los posibles usos en el código inactivo y los cuerpos de las macros en las secciones de resultados dedicadas.
Obtenga más información sobre las actualizaciones de C++: Novedades de ReSharper C++ 2023.3
ReSharper 2023.3 incorpora un nuevo motor de formateo para Razor. Es compatible con el actual formateador de C# de ReSharper, por lo que admite las construcciones del lenguaje C# introducidas en los últimos años y la mayoría de las nuevas opciones de formateo de ReSharper para C#. El nuevo formateador también funciona más rápido y se espera que tenga menos problemas. Sin embargo, modifica el formato predeterminado de algunos códigos. Por ello, hemos introducido una opción para volver al antiguo motor de formateo de Razor. Puede encontrarlo en ReSharper en Options, en Code Editing | Razor | Code Style.
ReSharper 2023.3 incorpora nuevas inspecciones para usos de métodos en código relacionado con Entity Framework que potencialmente podrían producir excepciones en tiempo de ejecución.
Los dos casos que abarcan estas nuevas inspecciones son:
Esta versión introduce los diagramas de relación entre entidades (ERD). Los ERD en ReSharper presentan una representación gráfica del modelo de base de datos, las relaciones entre entidades, así como perspectivas de análisis del modelo de base de datos.
Los análisis específicos de Entity Framework en ReSharper 2023.3 inspeccionarán su código en busca de posibles problemas en el modelo EF, como la longitud ilimitada de las propiedades de cadena y los bucles de dependencia. Si a continuación invoca un menú contextual en dicha inspección y selecciona Show Entity Relationship Diagram, podrá investigar el problema visualmente.
Consulte este artículo del blog para obtener más información sobre la visualización de las relaciones de Entity Framework y las nuevas inspecciones.
Nuestra versión anterior introdujo la posibilidad de crear fácilmente pruebas de unidad. La última actualización de AI Assistant dentro de ReSharper 2023.3 le ofrece la opción de generar el código dentro de las pruebas de unidad, aprovechando la potencia de los LLM.
JetBrains Grazie se ha convertido en el nuevo corrector gramatical y ortográfico integrado de ReSharper. Grazie admite más de 20 idiomas y detecta errores del lenguaje natural dentro de los lenguajes de programación admitidos por ReSharper (C#, C++, VB.NET), lenguajes de marcado (HTML, XML, XAML) y comentarios. Para añadir otros idiomas naturales a Grazie, vaya a Options | Grammar and Spelling | General en ReSharper.
Durante mucho tiempo, si quería ejecutar ReSharper Code Analysis fuera de un IDE en su servidor de CI/CD, solo tenía una opción: la herramienta InspectCode de las herramientas de línea de comando de ReSharper. Recientemente, Qodana ha dado sus primeros pasos en nuestra línea de herramientas .NET y ha lanzado el programa de acceso anticipado para el linter Qodana Community para .NET.
Aunque Qodana se basa en el mismo motor de análisis estático de código que ReSharper, ofrece varias ventajas adicionales:
Además, los linters de Qodana de pago para .NET permitirán ejecutar auditorías de licencias de terceros, analizar la cobertura del código y detectar dependencias vulnerables.
No dejaremos de utilizar las ReSharper Command Line Tools, pero a partir de ahora, el linter Qodana Community para .NET será la forma preferida de ejecutar los análisis de ReSharper fuera del IDE.
La funcionalidad Assembly diff introducida con la versión anterior es ahora capaz de comparar paquetes NuGet, carpetas y archivos .zip
.
La posibilidad de comparar agrupaciones dispone ahora de más opciones de comparación. Puede elegir entre varios modos de diff (Show all, Show only differences, Show only signature differences, Show only public API differences). Además, puede especificar si desea que el diff ignore las diferencias de orden de los miembros/atributos, así como las diferencias en las anotaciones de los tipos de referencias que aceptan valores null.
#nullable disable
aparecen en las fuentes descompiladas. Dynamic Program Analysis ha recibido tres nuevas inspecciones para aplicaciones dirigidas al marco ASP.NET Core. Estas inspecciones le alertan de posibles problemas de rendimiento del backend que podrían hacer que su aplicación no respondiese a la perfección.
Rider 2023.3 incorpora una nueva funcionalidad de inspección de seguridad diseñada para que las vulnerabilidades publicadas sean más evidentes y fáciles de comprender.
Las nuevas inspecciones identifican los paquetes NuGet vulnerables en su proyecto y destacan los casos en los que se utilizan métodos vulnerables de estas bibliotecas en su código. Si se detecta una vulnerabilidad, el sistema resalta el código problemático y ofrece acciones rápidas para remediarlo. Estas acciones incluyen recomendar una actualización a una versión más reciente del paquete y ofrecer información detallada sobre las vulnerabilidades detectadas.
Prueba gratuita de 30 días disponible