Dotnet logo

.NET Tools

Essential productivity kit for .NET and game developers

.NET Tools Early Access Program Rider

Rider 2024.3 Early Access Program Is Here! 

Let’s start the last Early Access Program for JetBrains Rider this year! Rider 2024.3 EAP brings the following updates:

Support for hot reloading C++ with Live++

We’ve been working with the folks at Live++ to bring seamless C++ hot reloading support to Rider! 

There’s no new UI, but the user experience will be a lot smoother. Rider will automatically refresh the debugger when your application is updated by Hot-Reload, and if there are any compilation errors, double-clicking the error message in the Live++ output will open the file in Rider. If you are debugging your application when you invoke Hot-Restart, Rider will automatically reattach the debugger to the new process afterward. 

Finally, the Hot-Deoptimize global shortcut key will automatically toggle the optimization state of the compiland relating to the file that’s currently open in Rider, meaning you no longer have to switch to the Live++ UI and find the file first. Please see this website for more details on Live++ features and availability. 

We’ll have more details in a blog post shortly.

Other features and improvements

Code cleanup

Now you can substitute a default Code Cleanup profile with another one for particular files via .editorconfig files as well as specify files you want to omit from code cleanup.

[fullToReformat.cs]
resharper_substitution_for_cleanup_profile.icanwriteanythinghere=Built-in: Full Cleanup => Built-in: Reformat Code

[anyToReformat.cs]
resharper_substitution_for_cleanup_profile=* => Built-in: Reformat Code

[fullToSkip.cs]
resharper_substitution_for_cleanup_profile=Built-in: Full Cleanup => skip

[anyToSkip.cs]
resharper_substitution_for_cleanup_profile=* => Skip
Copy to clipboard

Naming styles 

We’ve added a couple of new options to adjust naming rules more precisely. 

  • Local functions now have Local functions with ‘async’ and Task-returning local functions (not ‘async’) options to choose from. 
  • Methods got a new Task-returning method (not ‘async’) option to support methods with an Async suffix in the name that aren’t marked with an async modifier but return a Task-like type. This is helpful when you declare a method in an interface where you aren’t allowed to use an async modifier, but which will return a Task type in implementation.

Another new option is Warn about using prefixes and suffixes from this rule in unrelated identifiers. In previous versions, if you specified an Async suffix in a Methods rule, and if no Properties rule had this as a suffix, Rider would complain about a property with an Async in the name. In other words, Rider prohibited you from using this suffix in entities other than methods. Starting from the 2024.3 EAP, you can disable this option in the Methods rule, and Rider stops complaining about property names with these kinds of suffixes.

C# formatting

There are new formatting options to give you even more flexibility:

  • A new option to control wrapping around an equal = operator (RSRP-491099).
  • A new option Indent ‘break’ from ‘case‘ (RSRP-478502).
  • A new option Treat ‘case’ statements with ‘break’ as simple (RSRP-469180).

Unreal Engine support 

Rider 2024.3 EAP provides built-in live templates to generate UE_LOG and UE_LOGFMT logging statements in Unreal Engine solutions. These live templates let you quickly choose the desired log category and the verbosity level from a list of available values. You can further customize these templates in Templates Explorer.

That’s it for the first installment of the Early Access Program for Rider 2024.3! For the full list of changes introduced in this build, please refer to our issue tracker.

image description