Early Access to ReSharper 9.2, ReSharper C++ 1.1, dotTrace 6.2

Following our plan to deliver ReSharper Ultimate updates every 3-4 months, we are today opening an Early Access Program for ReSharper 9.2 and other ReSharper Ultimate tools. Specifically, this EAP encompasses ReSharper 9.2, ReSharper C++ 1.1, dotTrace 6.2, dotCover 3.2, dotMemory 4.4 and dotPeek 1.5.

Below is a quick overview of what this update has to offer today.

ReSharper 9.2 EAP

The initial build of ReSharper 9.2 EAP is mostly about bug fixes in TypeScript support, IntelliSense and C# code analysis.

  • TypeScript support has received a respectable bunch of fixes. For example, renaming and moving TypeScript code is now expected to be faster in most cases as search for dynamic references is disabled by default (RSRP-427718, RSRP-432856). In other news, ReSharper now draws the line between user code and included libraries/modules, which should positively impact code analysis, navigation and refactorings in multiple scenarios (RSRP-428775). More bug fixes cover the way how features such as Go to Type Declaration and Generate Missing Members handle TypeScript code. In addition to bug fixing, there’s an ongoing effort to provide final support for TypeScript 1.5, and the initial ReSharper 9.2 EAP build comes with support for TypeScript decorators (RSRP-435162).
  • In terms of code analysis, a set of false positives related to PCL usage with .NET Framework 4.5, with or without Xamarin, has been removed (RSRP-394695, RSRP-427743), in addition to several memory usage and performance optimizations (RSRP-437348, RSRP-436891, RSRP-428652). A number of fixes improve code analysis of string interpolation in C# 6 (RSRP-437019), as well as regular expressions (RSRP-440290, RSRP-439698, RSRP-441299).
  • Code completion is now properly case-sensitive again (RSRP-428005) and works a lot faster on extension methods (RSRP-434561)
  • Another notable set of changes is a usability boost to Go to Usages: a non-modal version of Find Usages. The Go to Usages pop-up now includes context of discovered usages, as well as a progress bar, which is handy when you’re looking at heavily used symbols (RSRP-420796).

See the entire list of fixes included in ReSharper 9.2 EAP build 1.

ReSharper C++ 1.1 EAP

ReSharper C++ 1.1 EAP is definitely more feature-packed than ReSharper 9.2.

First and foremost, it introduces a unit test runner for Google Test. This lets you invoke tests and test cases contextually from the text editor:
Invoke tests or test cases from a ReSharper C++ context menu
Similar to how the mainline ReSharper supports other unit testing frameworks, you have Unit Test Explorer and Unit Test Sessions tool windows to view, group, filter and run unit tests, as well as to create and manage unit test sessions.
ReSharper C++ 1.1 can run unit tests based on Google Test framework

At this point you can’t debug unit tests with ReSharper C++ but expect this to change soon.

In other news, ReSharper C++ 1.1 introduces a new refactoring, Introduce namespace alias, available via its Refactor This menu:

Introduce namespace alias refactoring

As soon as you invoke the refactoring, it suggests defining a scope that you want to introduce a namespace alias for:

Defining a scope to introduce a namespace alias

Rounding up a feature set for ReSharper C++ 1.1 is a new hierarchy view called Includes Hierarchy which, quite naturally, helps you visualize and figure out your #include dependencies:

Includes Hierarchy in ReSharper C++

Finally, ReSharper C++ 1.1 brings a whole set of bug and performance fixes in numerous subsystems, from code inspections to formatting, from quick-fixes to live templates: here’s the entire list of fixes included in ReSharper C++ 1.1 EAP build 1.

dotTrace 6.2 EAP

dotTrace 6.2 EAP introduces a new Incoming HTTP Requests event in Timeline mode that helps you indicate time intervals where your web application processes incoming HTTP requests. This includes the time between receiving a request by the server and sending a response. When the Incoming HTTP Requests event is selected, the Filters window contains two sub-filters: URL to determine how much time does a request to a particular URL take, and Method to check the distribution of time between requests with particular methods. You are encouraged to provide your feedback on this feature right here on the blog or in comments under feature request DTRC-10192.
Incoming HTTP Requests

See the entire list of fixes included in dotTrace 6.2 EAP build 1.

dotMemory, dotCover, dotPeek and SDK

EAP builds of dotMemory, dotCover and dotPeek haven’t received any notable updates so far but we expect this to change as the EAP progresses.

ReSharper SDK will be published later, along with one of the upcoming ReSharper EAP builds.

Download them!

Feel free to download EAP builds and let us know how this update is working for you.

Early Access is a great time for you to provide your feedback, so please feel free to submit any issues with EAP builds to issue trackers for ReSharper, ReSharper C++ and dotTrace.

What’s next?

Stay tuned for more EAP builds in coming weeks. Considering that Microsoft has just set Visual Studio 2015 release date to July 20th, we’ll be looking to wrap up this Early Access Program within a month and come up with ReSharper 9.2 RTM in August, as announced earlier.

Comments below can no longer be edited.

10 Responses to Early Access to ReSharper 9.2, ReSharper C++ 1.1, dotTrace 6.2

  1. Avatar

    Anton Lobov says:

    June 29, 2015

    JavaScript users, also don’t forget to check one of the interesting highlights of 9.2: support for regular expressions in JavaScript. Syntax highlighting and code completion are here for them. And ECMAScript 6 classes are now fully supported. (Support for ES6 modules is still on the way, though.)

    TypeScript users are welcome to try import-completion and “go to type of symbol” features. And those risky who already try TypeScript 1.6 now will find support for generators, type predicates and generic type aliases already in 9.2. 🙂

  2. Avatar

    HamRusTal says:

    June 29, 2015

    From the R# C++ POV, the 9.2 EAP1 installer is totally broken:
    1. The R# C++ version is labelled as “1.0.1 EAP1” which is supposed to be earlier than the current stock “1.0.1”.
    2. Once I install R# C++ *only* (chosen “Skip” for regular R# in the installer, as usual), I get NO R# features in MSVC 2013 at all.
    As a result, I’ve downgraded to the RTM 1.0.1.

    • Avatar

      Jura Gorohovsky says:

      June 29, 2015

      Thanks for noticing and sorry for the silly bug (RSCPP-14255). Will fix ASAP.

    • Avatar

      Jura Gorohovsky says:

      June 30, 2015

      BTW for those reading about this bug, please note that it only displays when only ReSharper C++ 1.1 EAP is installed. A workaround is to install ReSharper 9.2 EAP as well.

      Anyway, this will be fixed in the next EAP build.

  3. Avatar

    Laurence says:

    June 30, 2015

    Yay all the false errors from my PCL usage are gone! 🙂

  4. Avatar

    Øystein Krog says:

    June 30, 2015

    I wish you had a more stable API for extensions, as it is now every release means every extension has to be updated, which does not always happen or it takes a while:/

  5. Avatar

    Richard says:

    June 30, 2015

    No sign of a fix for RSRP-437980? 🙁

    • Avatar

      Jura Gorohovsky says:

      June 30, 2015

      Not yet, apologies. Hoping to fix this in the scope of 9.2 though.

  6. Avatar

    IzzyCoding says:

    July 16, 2015

    ReSharper c++ 1.1 sounds awesome.
    Just one question about the test runners…
    Does it support the Catch testing framework?
    Is it possible to add my own custom runners?

    • Avatar

      Jura Gorohovsky says:

      July 16, 2015

      As of 1.1, the unit test runner only supports Google Test. In future versions, we might support more frameworks although we’re yet to sort out which of them have the largest user base and outreach. For now, we have feature requests to support Catch and boost::unit. Everyone is encouraged to vote up their frameworks of choice to help us prioritize.

      As to adding custom runners, this would require extending ReSharper C++, which is in principle possible with the ReSharper SDK but frankly, the SDK hasn’t been polished and tested enough to support extending ReSharper C++. That said, provided there’s a strong interest in writing a particular extension, the product team can advise on safest ways to proceed.

Discover more