.NET Tools
Essential productivity kit for .NET and game developers
Rider 2020.2: Localization Manager, Debugger Updates, and Major Updates to Unity Support
Rider 2020.2 is now available! To mark this great news we’ve put together a full list of the new features and under the hood improvements that are in store for you. Let’s dive in!
Debugger
The new release brings significant changes to the debugger API. They allow us to perform super-lazy value calculations with better interruption and custom value representation. We’ve also added data breakpoints.
Finally, the Pin to Frame feature lets you pin local variables to the frame.
Localization Manager
We’re proud to introduce a new tool for working with resources. With the Localization Manager, you can view the content of any specified set of .resx files in your project, including all of them at once, in a single grid.
The Localization Manager allows you to easily perform the whole set of operations on resources: add, edit, rename, safely delete, find unused, find the resources missing localized values, find usages, export to and import from CSV, and add comments.
Unity
Unity support has received a major boost. Cg and HLSL shaders are now supported in syntax highlighting, code completion, navigation (including macros), refactorings, and more.
Pausepoints, which pause the Unity Editor when the debugger hits them, are now available. Rider now works with the Burst compiler, which means it highlights code that doesn’t match Burst constraints. For the whole list of improvements, check out this list.
VCS support
The main attraction here is the enhanced support for GitHub pull requests, which includes browsing, assigning, and merging pull requests, as well as submitting comments and reviews, accepting changes, and more. For more details, please check out this blog post.
Additionally, Git in WSL 2 is now supported, Compare branches are presented more conveniently, and you can squash commits selected in the Log tab of the Git tool window.
Unit testing
Our unit test runner has been rebuilt from scratch for both .NET Framework and .NET Core. This has helped us solve a lot of known problems with discovering, running, and debugging unit tests. The new runner includes built-in support for MSFakes for NUnit, xUnit and MSTest v2, along with the ability to run MSTest v2 tests without Visual Studio installed. There are also UI improvements for better presentation and filtering.
NuGet
The NuGet tool window has received a considerable feature boost. It now displays a solution’s transitive packages, provides a context menu with all the relevant actions for a single package, and indicates invalid feeds and deprecated packages.
Code analysis
C# 8 support has been enhanced with a number of new inspections and quick-fixes, most notably for nullable reference types. For instance, code analysis now takes into account JetBrains.Annotations attributes (both NotNull
and CanBeNull
) for API declared in code where nullable reference types are disabled (#nullable disable
).
Also, nullability code analysis is now aware of more cases and can trace incorrect nullability through deconstruction and the foreach
cycle, and it provides a corresponding quick-fix.
Refactorings
The Introduce Parameter and Introduce Field refactorings now ask which part of the expression you want the refactoring to be applied to.
The Conflicts dialog has received a makeover: we’ve turned the plain list into a tree grouped by file.
Plugins
The Markdown plugin is now bundled in Rider. It recognizes Markdown files in your solution, provides a dedicated editor for them, and shows the rendered HTML in a live preview.
With Azure Toolkit and Azurite, you can now start, stop, and clear the storage emulator in the Azurite node of the Services tool window. Also, code completion and validation is now available when editing NCrontab expressions.
The dotCover plugin offers export of coverage reports, quick search in Unit Tests Coverage window, and navigation from code to the coverage tree.
The dotTrace plugin can profile the native parts of Mono/Unity applications on Windows.
Godot run configurations have been reworked to make it easier to launch run, debug, and run with profiling.
Other updates
- We have a new installer for all the products covered by the dotUltimate license; to learn more about the updates to the licensing, please refer to the blog post.
- Support for compiled bindings with x:Bind is available with inspections and quick-fixes.
- File templates are now available in both Mac and iOS Xamarin projects. Xcode synchronization has been improved. If there is no .Designer.cs file, Rider now generates one instead of displaying an error.
- Dynamic Program Analysis now has include and exclude filters.
- New analyzers, highlighters, and quick-fixes have been added to the F# plugin. We’ve also taught Rider to rename the wildcard pattern and to apply the Introduce Variable refactoring to variables.
- We’ve made some improvements to database support, such as a separate editor for huge cell values, a new UI for boolean values, and a DML preview in the data editor.
- For web developers, we have new smart intentions in JavaScript code, in-text rendering of documentation comments, support for the Prettier plugin, and more updates to Vue support.
- We now support attaching the debugger to .NET core runtime hosting configurations and running them with debug.
- Run configurations are generated for all runnable projects.
- Project references for website projects are now supported.
- Search results in Search Everywhere have a new look.
See the full list of fixes completed in the 2020.2 release cycle on YouTrack.
That’s it for today! If you’re interested in learning more about these changes, please refer to the What’s New in Rider page. We appreciate your feedback, so please let us know what you think of Rider 2020.2 in the comments below, in our issue tracker, or on social media.
You can use any of these options to get Rider 2020.2:
- Download and install it from www.jetbrains.com.
- Update right inside Rider: Help | Check for updates.
- Use our Toolbox App.
- Use this snap package from the SnapCraft store if you are using a compatible Linux distro.