Das ist neu in Rider

Rider 2023.3 unterstützt das .NET 8 SDK, einschließlich der neuen Sprachmerkmale von C# 12. Dieses Update bietet auch Verbesserungen beim Ausführen mehrerer Projekte, einen prädiktiven Debugging-Modus und unkomplizierte Erstellungs- und Navigationsmöglichkeiten für Unit-Tests. Rider 2023.3 profitiert außerdem von einem großen Update des AI Assistant.

Wichtige Updates

AI Assistant

Vorschauphase von AI Assistant abgeschlossen Allgemein verfügbar

JetBrains AI Assistant ist jetzt allgemein verfügbar und bietet eine Reihe von neuen und verbesserten Funktionen, die Ihre Produktivität bei der Arbeit mit JetBrains-IDEs steigern. Zu den neuesten Verbesserungen für Rider gehören:

  • Kontextspezifischer KI-Chat
  • Ein stärkerer Projektbezug von KI-Aktionen
  • Mehrzeilige Code-Completion
  • Codegenerierung im Editor
  • Generierung von Unit-Tests
  • Generierung von Dokumentation
  • Diff-Ansicht für KI-Refactoringvorschläge
  • Bibliothek für benutzerdefinierte Prompts

Sie können AI Assistant in Rider als Zusatzfunktion mit einem Abonnement für den JetBrains AI Service verwenden.

Sehen Sie sich die Demo an!

Unterstützung für .NET 8 SDK

Unterstützung für .NET 8 SDK

Rider 2023.3 bietet offizielle Unterstützung für das .NET-8-SDK, einschließlich:

  • Aktualisierte Projektvorlagen.
  • Erstellen, Ausführen und Debuggen von Projekten, die das neue SDK verwenden.
  • Neuerungen aus C# 12, inkl. Primärkonstruktoren, Interceptor-Methoden und Alias-Direktiven zur Referenzierung beliebiger Typen.
  • Unterstützung für F#-8-Features: Lambda-Ausdrücke, verschachtelte Record-Updates, statische Interface-Member, statische let-Bindungen und mehr.
  • Unterstützung für @-Variablen.
  • Support for Identity API endpoints.

Mehrere Projekte ausführen

Mit Rider 2023.3 können Sie mehrere Projekte gleichzeitig ausführen oder debuggen, wobei Sie die Reihenfolge der Task-Ausführung und die Bedingungen genau bestimmen können.

Erfahren Sie in der Rider-Dokumentation mehr dazu.

Sehen Sie sich die Demo an!

Typabhängigkeitsdiagramme

In Rider 2023.3 können Sie mit Typabhängigkeitsdiagrammen die Beziehungen und Abhängigkeiten zwischen den Klassen, Structs, Schnittstellen und Modulen Ihrer Projektmappe erkunden.

Erfahren Sie in der Rider-Dokumentation mehr dazu.

Sehen Sie sich die Demo an!

Prädiktives Debugging

Prädiktives Debugging

Prädiktives Debugging ist ein neuer, fortschrittlicher Debugging-Modus in Rider, der mögliche Probleme in Ihrem Code im Voraus erkennt und Sie vor ihnen warnt, ohne dass Sie den Code ausführen müssen.

Erfahren Sie in der Rider-Dokumentation mehr dazu.

Sehen Sie sich die Demo an!

Unit-Tests – Erstellung und Navigation

Mit Rider können Sie jetzt unkompliziert Tests für Ihren Produktionscode erstellen und durch Ihre Tests navigieren. Neu in dieser Version ist außerdem die Möglichkeit, Tests vom AI Assistant generieren zu lassen.

Erfahren Sie in der Rider-Dokumentation mehr dazu.

Sehen Sie sich die Demo an!

С#-Unterstützung

С#12-Updates

Mit dem neuesten Release erweitert Rider die Liste der unterstützten C#-12-Sprachmerkmale unter anderem auf Primärkonstruktoren, Alias-Direktiven zur Referenzierung beliebiger Typen, Collection-Ausdrücke und Interceptor-Methoden.

In diesem Blogartikel erfahren Sie mehr über die neuesten Updates der C#-Unterstützung in Rider und ReSharper 2023.3.

Sehen Sie sich die Demo an!

Inspektionen für Probleme mit dem Entity-Framework

Rider 2023.3 enthält eine Reihe von neuen Inspektionen für die Verwendung von Methoden in Entity-Framework-bezogenem Code, die zu Laufzeitausnahmen führen können.

In diesem Blogartikel stellen wir Ihnen die neuen Inspektionen im Detail vor.

Performance

Rider 2023.3 erkennt und beherrscht jetzt mehr Szenarien, in denen Codeanalysen bei Unterbrechungen durch Texteingaben inkrementell durchgeführt werden können. Diese Verbesserung ist vor allem bei der Bearbeitung großer Dateien von Vorteil.

Ressourcenverteilung für die projektmappenweite Codeanalyse

Seit dem neuesten Update können Sie auch den Ressourcenumfang steuern, der für die projektmappenweite Codeanalyse bereitgestellt wird. Sie haben jetzt die Möglichkeit, die Ressourcennutzung in mehreren Stufen einzustellen: Low, Moderate und High.

Trotz seines Namens ist auch der High-Modus so konzipiert, dass er die Texteingabe im Editor nicht behindert und die Reaktionsschnelligkeit der IDE nicht beeinträchtigt. Die CPU-Auslastung wird nur dann allmählich erhöht, wenn die Codeanalyse durch Codeeingabe unterbrochen wird. Dabei wird eine flüssige Eingabe gewährleistet, während die projektmappenweite Analyse des Quellcodes im Hintergrund fortgesetzt wird.

Andere Leistungsverbesserungen

In Projektmappen mit zahlreichen Zieltyp-basierten Objekterzeugungen – zum Beispiel MeinTyp _feld = new() – wurde die Suche nach Verwendungen von Typen und Konstruktoren beschleunigt. Auch die Refactoring-Geschwindigkeit wird dadurch positiv beeinflusst.

Wir haben auch einige Probleme behoben, die beim Umgang mit injizierten Sprachen eine erhöhte CPU-Auslastung verursachten.

Editor

Verbesserte Nutzungserfahrung für Inlay-Hinweise

Verbesserte Nutzungserfahrung für Inlay-Hinweise

In Rider 2023.3 können Sie mit einem Rechtsklick auf einen Inlay-Hinweis das Kontextmenü aufrufen. Außerdem können Sie mit Strg+Klick auf den Hinweis zu Deklarationen navigieren.

Automatische Code-Completion für URL-Pfadreferenzen

Automatische Code-Completion für URL-Pfadreferenzen

Wir haben die Code-Completion für den Umgang mit URLs verbessert. Wenn Sie nun an einer Stelle, wo ein URL-Pfad erwartet wird, / eingeben, bietet die IDE im Completion-Popup automatisch die URLs der Server-Endpunkte an. Dabei werden sowohl die in Ihrer Anwendung verfügbaren APIs als auch angefügte OpenAPI-Spezifikationen berücksichtigt, sodass Sie den benötigten URL-Pfad unkompliziert eingeben können.

UX/UI

Resume-Schaltfläche beim Debuggen

Resume-Schaltfläche beim Debuggen

Wie versprochen wird jetzt in der Hauptsymbolleiste beim Debuggen anstelle der Run-Schaltfläche die Schaltfläche Resume angezeigt.

Als Projektmappenfilter speichern

Als Projektmappenfilter speichern

Mit Rider 2023.3 können Sie unkompliziert Projektmappenfilter (.slnf-Dateien) erstellen. Durch Projektmappenfilter können Sie die Projektansicht der IDE an den jeweiligen Kontext anpassen und große, komplexe Projekte dadurch einfacher verwalten. Um einen Projektmappenfilter zu erstellen, klicken Sie im Solution Explorer mit der rechten Maustaste auf Ihre Projektmappe und wählen Sie Save as Solution Filter.

Ausblenden der Hauptsymbolleiste

Optionales Ausblenden der Hauptsymbolleiste im Standard-Anzeigemodus

Als Reaktion auf Ihr Feedback haben wir in der neuen Bedienoberfläche die Möglichkeit nachgerüstet, die Hauptsymbolleiste im Standard-Anzeigemodus der IDE auszublenden – genau wie in der alten Oberfläche.

Um Ihren Arbeitsbereich aufzuräumen und die Symbolleiste auszublenden, wählen Sie View | Appearance und deaktivieren Sie die Option Toolbar.

Tastenkürzel für die Schnellsuche

Tastenkürzel für Schnellsuche

Die Funktion Speed Search, mit der Sie mühelos in Toolfenstern und Dialogen navigieren können, ist jetzt über ein Tastenkürzel zugänglich. Sobald der Fokus auf einer Baumstruktur oder Liste liegt, können Sie die Suche unkompliziert über das Optionsmenü des Toolfensters aufrufen, indem Sie +F (macOS) bzw. Strg+F (Windows/Linux) drücken oder einfach mit der Eingabe Ihrer Anfrage beginnen.

Neues Produktsymbol unter macOS

Neues Produktsymbol unter macOS

Für Rider 2023.3 haben wir das Rider-Symbol in macOS überarbeitet, um es an die Stilrichtlinien des Betriebssystems anzupassen.

Versionsverwaltung

Unterstützung für GitLab-Snippets

Unterstützung für GitLab-Snippets

Wir erweitern die in Rider 2023.2 eingeführte GitLab-Integration um die Unterstützung von GitLab-Snippets. Sie können jetzt direkt in der IDE öffentliche oder private Snippets erstellen.

Um ein neues Snippet zu erstellen, markieren Sie ein Codefragment im Editor (oder eine Datei bzw. einen Ordner im Project-Toolfenster), klicken Sie mit der rechten Maustaste auf die Auswahl, um das Kontextmenü aufzurufen, und wählen Sie die Option Create Snippet. Ein Dialog erscheint, in dem Sie aufgefordert werden, allgemeine Informationen zu Ihrem Snippet einzugeben und seine Datenschutzeinstellungen zu definieren.

Universeller Diff-Betrachter

Rider 2023.3 führt eine überarbeitete Methode zur Überprüfung von Änderungen ein. Anstatt jede Datei einzeln durchzugehen, können Sie jetzt alle geänderten Dateien eines Changesets in einem einzigen, scrollbaren Rahmen betrachten. Dieser neue Diff-Betrachter ist mit GitLab-, GitHub- und JetBrains-Space-Reviews kompatibel.

Debugging

Modules-Ansicht

In der neuen Modules-Ansicht können Sie die in Ihrer Anwendung verwendeten DLL- und Programmdateien untersuchen. In dieser Ansicht finden Sie Informationen zu Modulnamen, Versionen, Anwendungsdomänen, Modulpfade und Pfade zu den Modulsymbolen.

Die Spalte Symbole enthält die Symbole, die der Debugger für ein bestimmtes Modul verwendet. Sie können Modulsymbole verwalten, indem Sie mit der rechten Maustaste auf eine Modulzeile klicken und Load Symbols wählen.

Anhängen an einen Prozess in einem Docker-Container

Anhängen an einen Prozess in einem Docker-Container

Ab Rider 2023.3 können Sie den Debugger an einen Prozess anhängen, der in einem Container ausgeführt wird. Rufen Sie dazu den Dialog Attach to Process auf, öffnen Sie den Tab Docker und wählen Sie den Zielcontainer aus. Diese neue Option kann sowohl in lokalen Umgebungen als auch mit SSH-Konfigurationen verwendet werden.

Game-Entwicklung

Unity

UI-Toolkit-Unterstützung

Ab sofort können Sie mit dem UI Toolkit um einiges produktiver arbeiten!

Mit Find Usages können Sie sehen, wo Ihre Bedienelemente in UXML-Dateien verwendet werden, und mit Strg+Klick können Sie von Elementen in UXML-Dateien zum entsprechenden C#-Code navigieren. Darüber hinaus bietet Rider in C#-Abfragen Completion-Vorschläge für Bedienelemente.

Diese Version unterstützt auch .tss-Theme-Dateien und bietet topaktuelle Informationen zu allen USS-Eigenschaften für die neueste Unity-Version 2022.3 LTS.

Unterstützung für Shader-Varianten

Unterstützung für Shader-Varianten

Eine neue, optionale Vorschaufunktion ermöglicht beim Bearbeiten einer Shader-Datei das Auswählen der aktiven Schlüsselwörter. Dadurch können unterschiedliche Präprozessorblöcke aktiviert werden, um in zuvor deaktivierten Dateibereichen die reichhaltigen Bearbeitungsfunktionen von Rider zu nutzen.

Debugger-Updates

Das Unity-Debugging wird durch ein hilfreiches Popup-Fenster, das Texturen anzeigt, erheblich vereinfacht. Pausenpunkte können jetzt über das Kontextmenü des Editors einfacher hinzugefügt werden, und bei Ablaufverfolgungspunkten erfolgt jetzt eine Ausgabe in der Unity-Konsole. Rider zeigt jetzt in Multiplayer-Settings virtuelle Spielerinstanzen im Dialog Attach to Unity Process korrekt an.

Sehen Sie sich die Demo an!

Weitere Updates

Darüber hinaus gibt es zahlreiche weitere kleinere Korrekturen und Funktionserweiterungen, z. B. Semantik-Completion in HLSL-Code, korrigierte URLs für die Online-Hilfe für Pakete und Beseitigung von falschen Warnungen in bestimmten DOTS-Szenarien. You can see the full list of changes in the changelog.

Unreal Engine

Optionales Ignorieren von PCH-Dateien bei der Analyse

Optionales Ignorieren von PCH-Dateien bei der Analyse

Eine wichtige neue Funktion ermöglicht es Rider, nur Symbole aus explizit inkludierten Dateien zu erkennen und alle Importe in vorkompilierten Headerdateien (PCH) zu ignorieren. Dadurch können lokale Builds PCH-Dateien verwenden, um die Kompilierungsgeschwindigkeit zu erhöhen und gleichzeitig die Korrektheit in Bezug auf CI-Buildserver zu gewährleisten.

Kleinere Updates

Dieses Release enthält auch Korrekturen und Updates für mehrere kleinere Probleme: Einige Dateinamen wurden in der Build-Ausgabe nicht als Links erkannt, UE 5.3 konnte nicht lokalisiert werden und beim Debuggen unter Linux wurden die Typen FString und TCHAR nicht korrekt angezeigt.

Wir haben auch einige Probleme mit dem populären Plugin Enhanced UE Documentation behoben, darunter die Formatierung und ein Problem, das die Einblendung des Tooltips für die Standarddokumentation verhinderte.

Webentwicklung

TypeScript-Verbesserungen

TypeScript-Verbesserungen

Rider 2023.3 löst einige frustrierende Unstimmigkeiten beim Hinzufügen von import type-Anweisungen und erleichtert die Arbeit mit verbatimModuleSyntax. Die Verwendung der TypeScript-Anweisung „import type“ bzw. des Spezifizierers „type“ beim Importieren eines Typs kann jetzt konfiguriert werden. Außerdem wird jetzt bei TypeScript-Dateien das Feld exports in package.json unterstützt.

Optimierte Angular-Unterstützung

Optimierte Angular-Unterstützung

Wir haben die Unterstützung für strictTemplate-Typprüfungen in Angular-Templates verbessert. Wir unterstützen auch die neue Kontrollfluss-Syntax aus v17 sowie Signale, einschließlich Live-Templates wie signal, computed und effect. Mit Alt+Enter können Sie außerdem auf neue Quick-Fixes zugreifen. Zum Beispiel können Sie @Input- und @Output-Eigenschaften aus einer Komponenten-Template erstellen.

HTTP-Client

Unterstützung für @-Variablen

Rider 2023.3 unterstützt die aus anderen IDEs bekannte Verwendung des Symbols @ zur Definition von Variablen.

Weitere Informationen zu den Verbesserungen für die Webentwicklung finden Sie auf dieser Seite.

F#-Unterstützung

F#-8-Unterstützung

Wir haben Unterstützung für die in F# 8 eingeführten Sprachmerkmale hinzugefügt. Es gibt einige neue Analyzer und Quick-Fixes, die die Verwendung einer neueren Syntax vorschlagen, z. B. verschachtelte Datensatzaktualisierungen oder verkürzte Lambda-Ausdrücke.

Erneuertes F#-Projektmodell

Wir haben die Synchronisierung des Projektmodells zwischen der ReSharper-Engine und dem F#-Compilerdienst überarbeitet, um verschiedene Probleme zu beheben, z. B. falsche Fehlerhinweise aufgrund fehlender Referenzen oder einfrierende Analysen. Auch die Analyseleistung wird dadurch in vielen Fällen verbessert, wenn F#-Projekte auf C#-Projekte verweisen.

Verschiedenes

Dank Ihrer Problemberichte konnten wir auch verschiedene kleinere Verbesserungen in bestehenden Analyzern und Quick-Fixes, in der Code-Completion und in anderen Bereichen vornehmen. Read the full notes on the F# plugin page.

Frameworks und Technologien

Code-Completion für Central Package Management

Code-Completion für Central Package Management

Diese Version erweitert die Unterstützung für CPM-Dateien um Code-Completion für NuGet-Paketnamen und -Versionen. Diese Dateien werden jetzt im gleichen Umfang unterstützt wie .csproj-Dateien. Durch diese Neuerung können Entwickler*innen Paketreferenzen einfacher und präziser verwalten. In unserem Blogartikel über Central Package Management finden Sie eine ausführliche Vorstellung dieser relativ neuen Funktion.

Unterstützung für Container ohne Root

.NET-Base-Images enthalten jetzt einen Nicht-Root-Benutzeraccount. Für Projekte, die auf .NET 8 abzielen, generiert Rider 2023.3 standardmäßig Dockerfiles mit diesem Account. Debug und Fast Mode werden ebenfalls unterstützt.

Bicep-Unterstützung

We’ve introduced initial support for Bicep, an Infrastructure as Code language tailored to Azure. Der Code wird in Azure-Resource-Manager-(ARM)-Templates übersetzt und ist für eine enge Integration mit Azure-Diensten konzipiert. Die IDE bietet jetzt Syntaxhervorhebung sowie eine auf das Bicep-Sprachserverprotokoll aufbauende Code-Completion.

Arbeiten mit Datenbanken

Rider 2023.3 bietet unter anderem folgende bemerkenswerte Verbesserungen für die Arbeit mit Datenbanken:

  • Überarbeitete Importfunktionalität
  • Unterstützung für den Import/Export von Tabellen über BCP SQL Server
  • Unterstützung für neue Objekte SQL Server

Weitere Informationen zu den Verbesserungen für die Arbeit mit Datenbanken finden Sie auf dieser Seite.

Plugins

Dynamische Programmanalyse

Neue ASP.NET-Core-Inspektionen

Neue ASP.NET-Core-Inspektionen

Die dynamische Programmanalyse enthält jetzt drei neue Inspektionen für Anwendungen, die auf das ASP.NET-Core-Framework abzielen. Diese Inspektionen weisen auf mögliche Backend-Leistungsprobleme hin, die die Reaktionsschnelligkeit Ihrer Anwendung beeinträchtigen könnten.

Mehr dazu erfahren Sie in diesem Blogbeitrag.

dotTrace dotUltimate

Verbesserte Konfigurationen

Verbesserte Konfiguration beim Timeline-Profiling

Dieses Release bietet erweiterte Optionen für den Profiling-Modus Timeline bei Verwendung des integrierten dotTrace-Profilers von Rider. Das sind die neuen Optionen:

  • Sampling rate – Damit können Sie eine optimale Balance zwischen der Datengenauigkeit und der Performance der profilierten Anwendung finden. Der schnelle Sampling-Modus wird jetzt ebenfalls unterstützt.
  • Sample allocations every ... KB für native Allokationen – Damit können Sie die Performance von Snapshot-Analysen verbessern, indem Sie die Menge der gesammelten Daten und dadurch die Snapshot-Größe reduzieren.
  • Download in background für native Symboldateien – Damit werden Symboldateien bereits während der Profiling-Sitzung heruntergeladen, um die Zeit für die Erstellung eines Snapshots zu reduzieren.

dotMemory dotUltimate

  • Sie können jetzt Prozessabbilder importieren und analysieren, wenn der Profiler unter Linux ausgeführt wird.
  • Sie können die eigenständige Version von dotMemory jetzt auch auf den Betriebssystemen Linux und macOS ausführen.

Entity Framework Core UI

Die Befehle für Entity Framework Core UI sind jetzt in JetBrains Rider verfügbar. Dies sind nur einige der Vorgänge, bei denen das integrierte Plugin Sie unterstützt:

  • Erstellung von Migrationen.
  • Aktualisierung von Datenbanken mit ausgewählten Migrationen, inkl. Auto-Completion von Migrationsnamen.
  • Erstellung von DbContext-Scaffolding aus vorhandenen Datenbanken.
  • Erstellung von SQL-Skripten aus dem Migrationsbereich.

Verschiedenes

Neue Inspektionen zur Identifizierung gefährdeter API-Nutzungen

Neue Inspektionen zur Identifizierung gefährdeter API-Nutzungen Sicherheit

Rider 2023.3 bietet eine neue Sicherheitslückeninspektion, die dazu dient, veröffentlichte Sicherheitslücken klarer zu erkennen und zu verstehen.

Die neuen Inspektionen identifizieren von Sicherheitslücken betroffene NuGet-Pakete in Ihrem Projekt und weisen auf die Verwendung betroffener Methoden aus diesen Bibliotheken in Ihrem Code hin. Wenn eine Sicherheitslücke entdeckt wird, färbt das System den problematischen Code ein und bietet schnell umsetzbare Maßnahmen zur Behebung an. Zu diesen Maßnahmen gehören die Empfehlung eines Updates auf eine neuere Paketversion und das Bereitstellen von detaillierten Informationen zu den erkannten Schwachstellen.