ReSharper 2023.2 Roadmap
The upcoming Early Access Program (EAP) for ReSharper version 2023.2 is fast approaching, and we want to share the development roadmap we’ve set for the next release.
Before we get into it, this roadmap is tentative and subject to change based on our priorities, available resources, and developments in the .NET sphere. Some features may need to be postponed for a future release.
With that in mind, let’s take a look at what’s ahead!
Language support and improvements
ReSharper 2023.1 came with a set of inspections to optimize your work with various types of collections, as well as an inspection to extract common elements from several property patterns. With our next release, we’re looking at supporting the C# 12 feature preview.
As part of this plan, we’re currently working on introducing initial support for lambda default parameters and primary constructors. ReSharper already has feature-rich support for primary constructors for record declarations, and now that C# 12 allows it, this support will be extended for ordinary classes and structs.
C# 12 will also allow for using aliases for any type, enabling developers to introduce named aliases for tuple and pointer types. This can be helpful in situations where the original type name is long or complex. ReSharper 2023.2 is set to support this syntax.
Apart from that, one of our goals for the next release is to implement tuple component name hints – the inlay hints for tuple component names.
While some of our colleagues continue to work tirelessly on asynchronous typing, others are chipping away at performance issues such as a freeze at the opening stage of a solution.
One of our goals for the 2023.2 release is to load ReSharper components into Visual Studio asynchronously. Doing so will significantly reduce the number of UI freezes at the start of Visual Studio, speeding up its loading process, and hopefully avoiding the dreaded yellow bar.
One of the most exciting developments we’ve been working on for the last couple of releases is the predictive debugger. During regular debugging, once a breakpoint is hit, it’s only possible to observe the program’s current state. The problem is that executing a program causes side effects and changes its state, which may require debugging for all additional scenarios.
A predictive debugger is able to foresee all possible states triggered by executing a program without having to actually execute it, making it possible to:
- Show the expected values of the variables.
- Visually “mute” parts of the program that will not be executed.
- Warn you that further execution will end with an exception.
Introducing the predictive debugger to ReSharper will unlock a new level of insight into your program’s execution. It will enable you to experiment with different values and troubleshoot the code without the need to restart the debugging process for each change.
“Create Unit Test” action
For ReSharper 2023.2, we’re working on giving you the ability to create unit tests automatically. With the Create Unit Test context action, you will be able to easily generate unit tests for a method or class in your project. You can select the method or class you want to test and specify the type of test framework you want to use, such as MSTest, NUnit, or xUnit. ReSharper will then generate the necessary boilerplate for a test method or a class and add it to your project or create a separate test project if needed.
Massive improvements for ReSharper’s support for StyleCop.Analyzers are underway for version 2023.2. Currently, the experience of working with popular code analyzers like StyleCop in ReSharper is far from straightforward and requires a lot of manual fine-tuning. Our goal for the next release is to optimize the experience and make it more reliable.
First and foremost, the newest version of ReSharper will be able to automatically detect the proper StyleCop configuration format. Secondly, we’re going to add proper support for reading StyleCop rules from the
EditorConfig file. And lastly, we’re aiming to support StyleCop ordering rules.
To deliver on the plans laid out in our 2023.1 roadmap, the team is working hard on improving support for web development. In particular, we’re working on improving code analysis in Blazor projects and ReSharper’s handling of Tag Helpers in Razor.
The start of ReSharper version 2023.2’s Early Access Program (EAP) is just around the corner. Using the EAP builds is a great opportunity to get early access to the features in this post and other enhancements. Sharing your feedback on the EAP builds will also help us make ReSharper 2023.2 even better, so make sure to leave your comments, tweet at us, or report issues to our issue tracker.
We’re looking forward to hearing from you!
Subscribe to Blog updates
Thanks, we've got you!
The Developer Ecosystem in 2023: Key Trends for C#
We’ve captured insights from 26,348 developers worldwide in our annual Developer Ecosystem Survey 2023. This recap focuses on C# and .NET, but you can see what’s trending in other languages as well. Enjoy the results and commentary, and let us know what you think! Top Discoveries We know t…
The ReSharper 2023.3 Release Candidate Is Now Available
Get a preview of all the latest features and improvements set to be shipped with the next major ReSharper and .NET tools releases by downloading the Release Candidate builds that have just landed. Here are the major improvements in each of the new builds: The ReSharper 2023.3 Release Can…
The Rider 2023.3 Release Candidate Is Now Available
There’s only a few days left before the next major release for Rider! Don’t feel like waiting? Get a sneak peek of Rider 2023.3 now by downloading the Release Candidate build that has just landed on our website. The Release Candidate build contains all of the notable changes that we’ve introduc…
Primary Constructors – Using C# 12 in Rider and ReSharper
Welcome to our series, where we take a closer look at the C# 12 language features and how ReSharper and Rider make it easy for you to adopt them in your codebase. If you haven’t yet, download the latest .NET 8 SDK and update your project files! In this series, we are looking at: Primary …