.NET Tools
Essential productivity kit for .NET and game developers
Rider 2023.2 Early Access Program Is Now Open
Hello everyone,
We hope that you checked out the roadmap blog post we published last week and you’re just as excited about Rider 2023.2 as we are. If so, you’re in luck! The first installment of Rider’s Early Access Program just went live, and you can try out some of the new features.
There are a few ways you can access preview builds:
- Download and install them from our website.
- Use the Toolbox App.
- Install this snap package from the SnapCraft store if you are using a compatible Linux distribution.
Let’s take a look at the feature highlights of Rider 2023.2 EAP 1.
C# inspections for #nullable
directives and NRT annotations
We’re kicking off the new cycle of C# language support development with the introduction of two new inspections that can counter the misuse of #nullable directives.
The new Redundant nullable directive inspection is designed to point out cases where the #nullable
directive does not change nullable context and can be safely removed. The Unused nullable directive inspection deals with cases where there is no code affected by the #nullable
directive. As always, both inspections come with corresponding quick-fixes for easy code cleanup.
Another C# inspection we’re introducing in EAP 1 is designed to alert you to cases where nullable reference type (NRT) annotations contradict JetBrains.Annotations
attributes on a base member.
NRT annotations alone can verify signature mismatches on inheritance only when both the base and derived types use nullable reference types. This leaves a dangerous gap in the nullability safety net when a project is only partially migrated to NRT or when it uses a third-party library that has only JetBrains.Annotations
or external JetBrains.Annotations
(for example, if its authors don’t want to migrate it to NRT). The new inspection will cover such cases, catching signature mismatches at the border of two different nullability annotation systems and making it harder for NullReferenceException
exceptions to creep into your code.
New inlay hints
Since code analysis is a shared functionality between ReSharper and Rider, you can find all of the details about the new inlay hints for Rider in this blog post.
Find Usages Advanced
In Rider 2023.2, the Find Usages functionality in Rider is receiving a functional upgrade. Now, if you invoke Find Usages Advanced on a symbol (such as a method, class, or variable), the IDE will display a window that will allow you to specify various additional search criteria.
For example, you can search for usages of the symbol in a particular scope or for usages that match a particular pattern (such as calls with specific arguments or types).
Being able to apply advanced search options allows you to quickly and precisely locate all of the usages of a symbol in your codebase that are relevant to your specific needs. This can give you better insight into your code, help to identify potential issues, and make more informed refactoring decisions.
Running Docker on WSL
Our latest release introduced fast mode running for Docker. Starting with Rider 2023.2 EAP 1, it’s possible to use Docker in fast mode on WSL. To run Docker containers on a Windows machine without Docker Desktop, you first need to install WSL, install Docker on your Linux distribution, and add WSL to your Rider Settings/Properties under Build, Execution, Deployment | Docker. Then you will be able to run and debug Docker containers on WSL (with or without Fast Mode).
UnrealHeaderTool code inspections fix for Unreal Engine
The first EAP build for Rider 2023.2 includes a fix for an issue that used to interfere with code analysis when using the UnrealHeaderTool on machines with no .NET 6 runtime installed. The fix circumvents the need to install any additional runtimes/SDK by using the one already bundled with Unreal Engine, allowing for the latest code inspections to be displayed in Rider correctly.
Improved code completion for Unity shader includes
We’ve added code completion support for packages when including files in shaders, so you will now see package names in the completion list when you start typing #include "Packages/…".
For the full list of resolved issues, please refer to our issue tracker.
That’s it for now! We hope that you’ll join us on the EAP journey over the next few weeks. As you continue to test the newest additions to Rider, please don’t hesitate to share your feedback with us here on the blog, on social media, or via our issue tracker.