.NET Tools Roadmap

Rider 2022.3 Roadmap

With the start of a new release cycle of our Early Access Program (EAP) just around the corner, we think it’s time to share our plans for Rider 2022.3. 

Keep in mind that plans are always subject to change, and some features and fixes may have to be postponed to a later release.

Also, you may want to check out the ReSharper 2022.3 roadmap, as some of those features will be coming to Rider as well.

Now let’s get started! 

Code Analysis

C# 11

We’re currently finalizing the implementation of support for raw strings. In particular, we’re working on supporting language injections in such strings as well as adding actions to convert regular strings to raw ones. 

Support for Default Interface Methods (DIM) of static members will be extended to include virtual static members with the default implementation. 

C# 11 includes many other features, such as list patterns, UTF-8 strings, ref-fields, and file-local types. As always, we’re committed to delivering full support for all of them. 

Entity Framework and EF Core

We’re continuing our work on the N + 1 problem. With our next release we’re aiming for Rider to be able to use information present in classes inherited from DbContext and entity classes to detect queries in Entity Framework and EF Core projects that have the potential to result in the N + 1 problem or lead to potentially returning incomplete data. 

Performance

We’re continuing with our work to improve Rider’s startup performance. In particular, we would like to get the project tree to load immediately upon opening a solution and code highlighting to appear much more quickly on repeat startup. 

Localization

We’re on track to deliver localized versions of Rider with the 2022.3 release. It will be possible to switch the language of the IDE’s UI into Simplified Chinese, Japanese, and Korean by installing language pack plugins, similar to the ones currently used for IntelliJ IDEA

User experience

One of the longest-awaited upgrades we’ve been working on for Rider’s user experience is improved docking and multiple monitor support. We’ve fixed a number of bugs with multi-monitor support for floating editor windows in Windows, especially for monitors with different DPIs, so dragging an editor to dock with other floating editors on another monitor should be more reliable.

We’ve also added the ability to dock tool windows to the sides and bottom of floating editor windows, just like you can do with the main IDE window.

What we’re mostly working on now is an easy system for docking tool windows together in a single floating window. Rider has supported dragging tool windows out of the main one for a while, but this can leave you with many floating windows. For Rider 2022.3, we’re planning to allow you to join these windows together into a single floating one with a simple layout.

There are also a number of UI improvements planned for bringing Rider into alignment with the changes coming to the IntelliJ IDEA platform’s interface in the near future. 

We’re also aiming to improve the user experience when using the Attach to process dialog, in particular when attaching to a process via SSH. Our goal is to help you find and select the correct process faster, as well as to make the IDE remember the chosen debugger. 

WSL support

We’re working on implementing support for WSL (Windows Subsystem for Linux) through remote development, which means you should soon be able to use Rider on a WSL2 instance to browse your solutions and sources as well as build, debug, and run apps as if they were stored locally. 

Profilers

A couple of months ago we announced the introduction of dotMemory as a built-in memory profiling tool within Rider. So far, the functionality has only been available on Windows. We’re planning to change that with our upcoming release. Linux and MacOS versions of the plugin will be arriving shortly. 

ARM64 support

While still in the early stages, we are working on support for running Rider on the ARM64 architecture on Linux. 

MAUI support

We’re continuing to keep in step with the development of Microsoft’s new cross-platform framework for mobile and desktop apps. For this release, we’re preparing Rider to open, run, modify, and debug WinUI 3 projects

SQL Server Project support

We’re hard at work implementing support for SQL Server projects. With Rider 2022.3, you should have the ability to perform a schema comparison to compare two database definitions. 

С++ and Unreal Engine

We’re working on extending support for Unreal Engine’s Core Redirects. Currently our support is limited to UCLASS and UPROPERY, but we’re hoping to add UFUNCTION, USTRUCT, and UENUM by the next major release. In practice this would mean that the Rename refactoring will generate redirects to the correct .ini files and Blueprints usages will account for those redirects. 

The Problems view will soon include a Blueprints tab, where you’ll be able to trace back problematic Blueprints and either report the offending ones or exclude them from indexing. 

Building on the work we’ve done for the previous release, we’re now ready to implement support for C++20 modules and typename rules

The latest version of Rider will also benefit from the Safe Delete refactoring for C++.  

And last but certainly not least, we’re working to improve СlangFormat support by running a ClangFormat binary directly instead of mimicking it via Rider’s own formatter engine.

Unity

We’re working on implementing new Unity Input System support that would enable you to use any kind of input device to control your Unity content. 

Razor / Blazor

Support for the .NET6 Hot Reload feature for Blazor Server & Blazor WebAssembly apps is in the final stages of testing. Hot Reload for WebAssembly is also a work in progress, although we can’t guarantee that it will be ready in time for the 2022.3 release. 

A reworked version of the Razor formatter with improved performance is coming. We can’t wait to hear your feedback!  

IL Viewer

The next version of Rider is also set to inherit dotPeek 2022.2’s option to view decompiled high-level and low-level C# code in the IL Viewer tool window. 

Conclusion

Thanks for reading! We hope you found this information useful and you’re pleased with the scope of changes we’ve got in store for Rider. Make sure to let us know which of the items you’re most excited about in the comments.

Another excellent way to provide feedback and help us build a better product is to join the Early Access Program (EAP). Keep an eye out for the 2022.3 EAP builds and subscribe to our blog or newsletter for the latest updates.

image description

Discover more