Run static methods from gutter, IL Viewer, install SDKs and more improvements in Rider 2019.1
When we announced the latest Rider 2019.1 EAP build, we covered the highlights of this upcoming release. In this post, we’ll look at some smaller yet useful additions that we will ship in Rider 2019.1.
We can now run static methods from the gutter. It’s now possible to synchronize settings with your JetBrains Account. We’ve added ReSharper’s Intermediate Language (IL) viewer to Rider. A new Environment page in the settings helps us download and install additional components and SDKs. There is better theming support along with a couple of new theme plugins, and a bunch of other improvements. Curious? Read on!
Run static methods from the gutter
Sometimes it’s just handy to run a piece of code to validate a prototype works as expected, check how an API works, or run and debug that new method we just wrote. We can do this by creating a console application or a unit test that invokes the code, and then run it from there. While these are valid approaches, they are a bit cumbersome and go into the realm of yak shaving.
Rider 2019.1 makes it easy to run and debug a static method – either using the icon in the gutter, or by using Alt+Enter and picking the Run or Debug option.
Without breaking our coding flow, we can create a simple
public static void SomeMethod() where we are coding, and then launch and debug it. No matter if that static method is in a console application, a web application or a simple class library!
Note that run static method is only supported for projects targeting the full .NET Framework right now.
Settings synchronization with JetBrains Account
When working with Rider or other JetBrains IDEs on different computers, it’s often difficult to share settings such as keyboard shortcuts, syntax highlighting, appearance, plugins and other options between multiple IDE instances. In Rider 2019.1, we have added settings synchronization using your JetBrains Account.
We can use our JetBrains Account to log in to Rider, either using the Help | Register… menu or by using the Toolbox App (which is also handy to install stable and EAP versions of Rider side-by-side). Once logged in, the File | Sync Settings to JetBrains Account… menu enables settings sync.
In case you are experiencing trouble synchronizing settings, make sure to disable settings repository.
Intermediate Language (IL) viewer comes to Rider!
The code we write is typically not compiled into native code for the platform it will run on, but instead compiled into Intermediate Language (IL). This IL can then be executed on a variety of platforms and CPU types. We’re bringing ReSharper’s IL Viewer tool window to Rider, allowing us to explore our source code and the (decompiled) IL instructions.
We can open IL Viewer from the Tools | IL Viewer menu (or 2x Shift and search for IL Viewer).
After compiling our project, the IL Viewer displays decompiled IL for the class or method we currently have open in the editor. The editor and the IL Viewer are synchronized: placing the caret on a symbol in our code highlights the matching IL, and the other way around. When hovering an IL instruction, Rider shows a tooltip with its description, taken from MSDN and the ECMA-335 standard (Partition III: CIL Instruction Set).
Tip: check our post Exploring Intermediate Language (IL) for more examples.
Download and install additional components and SDKs
Don’t have .NET Core installed on your machine? Need a Xamarin SDK o develop in Xamarin on Windows or macOS? Find the new Environment page in the settings, where these components can be installed with one click!
Speaking of the Xamarin SDK: the version that can be downloaded from Microsoft’s servers requires a Visual Studio license for your machine. The Xamarin SDK available in Rider is built from source by JetBrains, overcoming that license restriction.
Better theming support
You may have noticed the screenshots in this post are using a different “light” theme. In Rider 2019.1 (and other IntelliJ IDEA-based IDE’s), we have improved theming support and made it more flexible to build your own!
Want to start personalizing Rider? Search for these themes in the Rider settings (under Plugins) or search theme plugins online.
Want more? Good, because there is more! Many performance improvements were made to startup performance, for example opening a solution in an already running Rider should be much faster. Windows users will be happy that Rider now uses native file dialogs to open and save files and folders.
When multiple versions of .NET Core are installed on our machine, we can now pick the framework to target when creating a new project, including .NET Core 3.0.
Give Rider 2019.1 EAP a try! We’d love to hear your feedback!
Subscribe to Blog updates
Thanks, we've got you!
Eager, Lazy and Explicit Loading with Entity Framework Core
Entity Framework Core (EF Core) supports a number of ways to load related data. There’s eager loading, lazy loading, and explicit loading. Each of these approaches have their own advantages and drawbacks. In this post, let’s have a quick look at each of these ways to load data for navigational prope…
OSS Power-Ups: bUnit – Webinar Recording
The recording of our webinar, OSS Power-Ups: bUnit, with Egil Hansen and Steven Giesel, is available. This was the twelfth episode of our OSS Power-Ups series, where we put a spotlight on open-source .NET projects. Subscribe to our community newsletter to receive notifications about future webi…
Accelerating Your Testing Workflow with Unit Test Creation and Navigation
Unit tests play an important role in our daily development workflow. They help us ensure our codebase's correctness when writing new functionality or performing refactorings to improve readability and maintainability. In the process, we often create new test files that accompany the p…
Introducing Predictive Debugging: A Game-Changing Look into the Future
With the introduction of debugging tools, software developers were empowered to interactively investigate the control flow of software programs to find bugs in live environments. At JetBrains, we've always strived to improve the art of debugging. Besides the more standard things you expect from a de…