As we approach the release date, there’s always an urge to get more bugs fixed and new features polished. Obviously, we couldn’t resist and decided to publish an additional pre-release build. Download ReSharper Ultimate 2017.1 EAP 7 and check some nice new features and improvements we have introduced.
Throughout this Early Access Program, we’ve been working on improving the design and usability of ReSharper’s Code Cleanup. This feature is useful when you need to apply a number of code cleanup tasks in a bulk mode. You can create various code cleanup profiles to apply in different scenarios.
In previous ReSharper versions, you had to go to Code Editing | Code Cleanup to configure the profiles. Now you can create and edit your custom task-specific profiles right in the Code Cleanup dialog box, simply by pressing Ctrl+E,C.
We’ve also expanded the list of C++ code cleanup tasks with ReSharper’s 14 most commonly used code style features.
In the previous EAP build, we introduced an option to filter the results in the Go to Everything popup. EAP 7 adds a similar option to the Go to Text popup. Type ‘/’ and some designated chars to use the filter:
Apart from these features, we’ve fixed several bugs in ReSharper and ReSharper C++.
The 2017.1 release is just around the corner, so please stay tuned for the news!
Join us Thursday, April 6, 16:00 – 17:00 CEST (check other timezones) for our free live webinar, Exploring .NET’s Memory Management, with Maarten Balliauw.
In this webinar, we’ll take a trip down memory lane and look into how .NET memory management works. We’ll start off with the .NET Garbage Collector (GC) is really cool and look at how it helps providing our applications with virtually unlimited memory, so we can focus on writing code instead of manually freeing up memory. But how does .NET manage that memory? What are hidden allocations? Are strings evil? It still matters to understand when and where memory is allocated. In this talk, we’ll go over the base concepts of .NET memory management and explore how .NET helps us and how we can help .NET – making our apps better. Expect profiling using dotMemory, Intermediate Language (IL), and using ClrMD to mimic some inspections dotMemory provides.
To attend this webinar, register here.
About the presenter:
Maarten Balliauw is Developer Advocate at JetBrains and loves building web and cloud apps. His main interests are in ASP.NET MVC, C#, Microsoft Azure, PHP and application performance. He is a frequent speaker at various national and international events and organizes Azure User Group events in Belgium. In his free time, he likes brewing his own beer. Maarten’s blog can be found at http://blog.maartenballiauw.be.
Today we welcome you to download our last pre-release build of ReSharper Ultimate 2017.1 and check out all new features and improvements that we’ve been working on since the beginning of this year. In the previous builds we fixed important bugs and added new features that mostly relate to perfecting support for Visual Studio 2017 RTM and C# 7. Today’s EAP build includes noticeable updates to dotMemory, dotPeek and a few other improvements that we are going to cover in this post.
Here’s a monthly dose of good news: you can now download a new Rider EAP build.
Below is a quick summary of what’s inside Rider EAP 19. Note that the build contains major improvements that we’re hoping to describe in more detail next week.
Note: In this blog post, we’ll look at some of the basics of language injections. They work similar in both Rider and ReSharper – check this deep-dive post on language injections in ReSharper to learn more.
Mark as injected language
Like all good things in Rider, Alt+Enter is where it starts. In the editor, we can place the caret on a string literal and mark it as an injected language.
We are getting closer to the release date and working hard towards providing the finest coding experience to Visual Studio 2017 RTM users. If you are already using the latest release of Visual Studio, make sure to download ReSharper Ultimate 2017.1 EAP 5 to get the best support for its new features.
We have introduced quite a lot of improvements during this EAP, and today we’ll take a look at updates in our two latest EAP builds.
Today, I’d like to introduce you to Smart Paste, a “little big feature” in Rider (as well as in ReSharper). It ensures the right escaping in string literals that are copy/pasted. For example, consider pasting
The "Name" field is required into
var error = "". We would paste the string, then move to both
" characters and escape them with
\", making sure there are no syntax errors. Rider helps us out here with a quick-fix that can escape illegal characters for us!
Here’s a story on how I once used dotPeek to provide debugger symbols and (decompiled) source code for a crashed application for which we had nothing but the application assemblies available. Namespaces have been altered to protect the innocent.
Nothing better than a good cup of coffee in the morning! Opening up the issue tracker, “the folks from IT” logged an issue about an application server crashing over night. They automatically captured a crash dump of the IIS worker process and attached it to the issue – this should help in diagnosing the root cause of that crash. One more coffee refill, and then let’s dive in!
We already mentioned numerous times that Rider is built on top of ReSharper, analyzing our code in the background, and the IntelliJ platform, providing the front end and editor capabilities for our cross-platform IDE for .NET.
Doing so lets us ship the best of both worlds: both products have been evolving over years, and Rider profits. So when IntelliJ IDEA 2016.3 was released, we merged all of the improvements to language-independent features such as version control and the database editor into Rider. Let’s go over some of these improvements!
One cool thing about Rider is that we can tap into the rich plugin ecosystem the IntelliJ platform brings. There are community plugins, and several JetBrains plugins as well. One of those was recently made available to work with Rider EAP: the File Watchers plugin, which executes tasks on file modifications.