ReSharper 8.1 Early Builds Available for Download
It’s that time of the year again when we open up the covers on what’s been cooking in ReSharper since the release of 8.0 a few months back! And while today we’re opening ReSharper 8.1 Early Access Program, there’s nothing minor about the new features that we’ve got in store for you.
Here are some of them that you can check out right now.
The key focus for this release is the support for the TypeScript programming language. Support for TypeScript includes the following:
- Refactorings such as Rename and Introduce Variable, with detection of identifiers in strings as well as detecting of structurally compatible members.
- Navigation support including support for Go to Everything and smart usage search (an ability to search for structurally similar constructs). Note that both Rename and the navigation features work in dynamically typed parts of code, too!
- Code completion support.
- Support for rearranging code, including the greedy brace mechanic.
- Code inspections such as an ability to detect unused parameters, detect invalid CSS references, and many others.
Stay tuned for an in-depth post on TypeScript coming very soon!
Support for Visual Studio 2013
ReSharper has included support for Visual Studio 2013 since version 8, but version 8.1 enjoys better integration with two new supported features. The first feature is Peek Definition. ReSharper integrates transparently into this feature, providing a lot more functionality than Visual Studio. For example, ReSharper can show decompiled method definitions, whereas Visual Studio can only show method stubs:
ReSharper’s contextual navigation is also available in this mode, and any element navigated to shows in this same window.
Also, features such as Find Usages or Find Inheritors and many others that return large result sets now show them using the Peek Definition API in the list on the right:
Another feature that ReSharper supports is the enhanced scroll bar — a feature very similar to ReSharper’s own marker bar. ReSharper places its markers alongside this bar, together with tooltips and an ability to click to navigate to a particular issue:
And don’t worry, if you prefer to use the old marker bar, we give you this option as well — you can find it in ReSharper’s Options under Environment | Editor | Editor Appearance.
One of the major pain points we’re addressing in 8.1 is infinite loop detection – for those embarrassing times where you inadvertently made an infinite loop by failing to change the loop condition anywhere within the loop.
Another complaint that’s been addressed relates to ReSharper complaining about values possibly being
null in LINQ even when an explicit check has already been made. We’ve updated our LINQ nullness analysis so that the following code no longer triggers any complaints from ReSharper:
Yet another inspection issues a warning in downcast in foreach statement, another potential source of bugs:
- Completion improvements, including double completion for resource references and command name completion (see this blog post for info on the double completion mechanic).
- An update to the usage inspection mechanism, including WPF 4.5 static property notification support.
- A mechanic to import types on paste, just like the one we currently have in C#.
- ThemeDictionary support for WinRT 8.1.
- Various typing assistance mechanisms, including smart handling and deletion of XAML braces, smart deletion of XML attribute quotes, as well as a mechanic to convert an attribute to an element on the press of the Enter key.
Our latest creation, the Architecture tools, are getting some love as well. Latest improvements include:
- Better overall performance of analysis and rendering.
- Improvements in UI fluidity and smoothness, including smooth repositioning animations when graph elements are added or removed.
- Undo/redo support.
- A new option for drawing edges called Possible Path. Shows up as green dashed reference lines and implies that even though there are no direct references between currently selected projects, there is a path between them consisting of one or several projects. These reference lines also have a Show Path context menu item.
- Many improvements were made in response to user requests – for example, we made more convenient context actions to get desired graph selection:
Odds & Ends
The tool windows that ReSharper uses have been redone using WPF. New tab items now show up on the left, they look better, you can pin them, and if you open more than five tabs, old tabs unload themselves, saving memory — but you can always restore them if you need to.
Things to Come
Here are some of the things we’re still working on, which will appear as part of the 8.1 release:
- Various improvements to TypeScript support beyond those mentioned above.
- Improved support for High-DPI monitors, so those of you with Retina displays have a more pleasant experience.
While we’re preparing for final release, feel free to download ReSharper 8.1 EAP builds and let us know how this new update is working out for you!
Subscribe to Blog updates
Thanks, we've got you!
Another Look into the Future with Rider’s Predictive Debugger
In the 2023.2 release cycle, we’ve introduced the Predictive Debugger in ReSharper, which gives you predictions about code paths and variables beyond the current execution pointer. We’ve written extensively about its advantages compared to alternative debugging strategies like thorough thinking, log…
Visualize Entity Framework Relationships and Additional Query Analysis in ReSharper 2023.3
A lot of teams are using Entity Framework or EF Core to work with their database. As an Object-Relational Mapper (ORM), it bridges objects in code to a relational database model, so that as a developer you don’t have to worry too much about the actual database. We all know: that’s not entirely tr…
Automatically Analyze ASP.NET Core Performance With Dynamic Program Analysis
Slow web pages may make your users or customers abandon your web application, even before they’ve had a proper look at it. You’ve likely also been frustrated working with a web application that is slow to load. The good news is that the latest versions of ReSharper and JetBrains Rider’s Dynamic P…
OSS Power-Ups: MassTransit – Webinar Recording
The recording of our webinar, OSS Power-Ups: MassTransit, with Chris Patterson, is available. This was the thirteenth 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 webinars.…