.NET Tools News Releases Rider

The Rider 2022.2 Early Access Program Has Started!

The first EAP build comes with updates to the main toolbar, an early preview of MAUI support, and the long-awaited move to .NET 6 runtime for the Rider backend on Windows. You can now download Rider 2022.2 EAP1 directly from www.jetbrains.com or install it via the JetBrains Toolbox App or from snapcraft.io.

.NET 6 runtime for the backend on Windows

We’ve finally migrated the Rider backend to the .NET 6 runtime on Windows! Rider now uses the .NET 6 runtime to run the backend service on all supported operating systems: Windows, macOS, and Linux.

In light of this change, we’ve also replaced NGen with the CrossGen utility to create native images on Windows after installing Rider because it works with the .NET runtime and is cross-platform.

UI/UX

Resizable Run/Debug widget

In response to your feedback, we’ve made it possible to change the width of the Run/Debug widget on the main toolbar. If there is space available on the toolbar to extend the Run/Debug widget, you can drag the left corner and resize it. Now you can create more space for the widget when you want or need it.

Hiding the Solution Configuration list on the toolbar

To reduce clutter on the main toolbar, we’ve moved the solution configuration list to the build icon’s dropdown menu (green hammer). From the feedback and statistics we collected, we determined that users don’t change their solution configurations often enough to justify keeping a separate widget on the toolbar at all times. However, if ever you need the configurations, they are still available with one click on the triangle next to the green hummer icon. This opens the same list that you are used to.

If you want to move solution configurations back to the toolbar, just select Show Configuration on Toolbar from the list:

C# 11

We’ve added support for one more C# 11 feature – checked user-defined operators. This helps developers create user-defined operators that operate on types where arithmetic overflow is a valid concept. Rider shows all compiler errors and warnings:

  • CS9023: User-defined operator ‘+’/’!’/’~’ cannot be declared checked.
  • CS9024: An ‘implicit’ user-defined conversion operator cannot be declared checked.
  • CS9025: The operator ‘…’ requires a matching non-checked version of the operator to also be defined.

To fully support checked user-defined operators, Rider has a couple more inspections and a context action:

  • We’ve updated the “Unchecked/checked context is redundant” inspection to take into account checked operators when they are used inside this context.
  • If you have a set of user-defined operators and some of them already have their checked version, Rider will help you propagate checked operators to the whole set. A new inspection called “The operator does not have a matching checked operator while other operators do” will notify you regarding which operators don’t have a checked operator yet and suggest a quick-fix to generate the checked versions automatically.  
  • If you haven’t used checked operators in your codebase yet, but want to start adding them, a new context action called “Create matching checked operator” will come in quite handy. It is available on every user-defined operator and generates a checked version of an operator right from the Alt+Enter menu in one click. 

Better support for solution filters

Rider 2022.2 EAP1 makes working with filtered solutions much easier. You can now filter a project, a set of projects, a solution folder, or even all projects out of the result solution. Use the Solution Filter | Remove project action in the context menu on a project, a solution folder, or the root solution node in the Solution Explorer view. To show the projects that were filtered out, enable “Show All Files” mode in the Solution Explorer view and use the Solution Filter | Add Project action in the context menu. 

Apart from adding these basic operations, we added the more advanced and useful Load Direct Project Dependencies and Load Entire Project Dependency Tree actions. Rider will check all of the dependencies for the target project and load the required set of projects. You can then quickly start working on the filtered solution. 

Early preview of MAUI support

We’ve introduced an early preview of our .NET Multi-platform App UI (.NET MAUI) support. In this build we support only projects that target the Android and iOS platforms. You can use run configurations to run and debug your project, as well as to deploy your application to a target device. We would appreciate any feedback you have about this feature.

Please note that neither WinUI nor macOS is supported yet.

Solution Explorer

  • The Solution Explorer view now shows source files generated by source generators. You can find them under the Dependencies | <Target framework name> | Source Generators node. 

  • Projects are now sorted in true alphabetical order in the Solution Explorer, File System, and Unity Explorer views.

Unreal Engine support

We are continuing to improve our Unreal Engine support:

  • Rider now supports Spec tests from the Unreal Engine automation testing framework. If you have a set of tests defined in the Define method after the DEFINE_SPEC macro or the  BEGIN_DEFINE_SPEC / END_DEFINE_SPEC macros, Rider will successfully discover them, so you can run and observe them in the Unit Tests view. 

  • We’ve replaced the Build solution button with a Build startup project button on the main toolbar for Unreal Engine projects.

Assembly Explorer

  • The way ReadyToRun (R2R) and NGen assemblies are presented in the Assembly Explorer has been improved. A small processor symbol icon and ngen or R2R labels are now displayed next to each assembly’s name.
  • The Metadata tree has the ReadyToRun header.
image description