ReSharper Ultimate 2016.1 is released

We’ve just finalized an update to ReSharper Ultimate and welcome you to download Resharper Ultimate 2016.1 RTM!

Watch the following video for a summary of what is new in ReSharper Ultimate 2016.1, or read on for the main highlights of this release:

ReSharper

Along with 950+ fixes, major highlights of ReSharper 2016.1 are the following:

  • A variety of new context actions: ReSharper 2016.1 brings a set of new Alt+Enter actions to check method input parameters, manipulate strings, convert strings to objects, comment and uncomment code selections, and many more!
  • A new Invert Boolean Member refactoring. The refactoring can be invoked on a method, property, local variable or a parameter to invert the boolean value it returns and update other members that receive values from it.
    Invert Boolean Member refactoring
  • Smart Paste feature that ensures the right escaping in string literals that you copy/paste around your code. It works in C#, VB.NET, JavaScript, XML, XAML and HTML files. Smart Paste
    Two new context actions, “Convert XML string to a LINQ to XML object” and “Convert JSON string to a Newtonsoft JSON.NET object”, complete the workflow of transferring existing XML or JSON into C# code.
  • Asynchronous Find Code Issues. Starting with version 2016.1, Find Code Issues works in the background both in ReSharper and ReSharper C++. This lets you keep editing or navigating your code while ReSharper runs its analysis.
  • New WCF-specific code inspections, quick-fixes and context actions.
  • Initial support for Node.js. All ReSharper goodies you are well familiar with, like completion, code inspections, quick-fixes, and navigation features are now available for Node.js.
    Node.js support
  • ReSharper 2016.1 is way better at understanding VB.NET 14, introducing support for string interpolation, multi-line strings, null-conditional operators, partial modules and interfaces, year-first date literals and XML documentation comments.
  • Out-of-the-box xUnit.net support. ReSharper 2016.1 provides built-in support for xUnit.net and doesn’t require a separate extension to be installed anymore. This means ReSharper will discover your xUnit.net tests and allow you to run and debug them right from the editor.
  • Support for JSON files and schemas includes the File Structure view, a “Convert JSON string to a Newtonsoft JSON.NET object” context action, JSON schema-aware code completion, inspections and quick-fixes.
    JSON file structure
  • JavaScript and TypeScript support enhancements include a reworked Rename refactoring (which can now rename files corresponding to TypeScript types), granular formatter settings, and full support for TypeScript 1.8. In addition, ReSharper starts to properly handle some bits of TypeScript 2.0: readonly properties, implicit indexers, private and protected constructors, abstract properties, and nullable types. Please expect a separate blog post describing TypeScript and JavaScript support in ReSharper 2016.1 shortly.
  • JSDoc improvements. ReSharper can now parse generics, HTML markup, and parameters with properties in your JSDoc comments. Everything that ReSharper infers from JSDoc becomes immediately available in code completion suggestions.
  • Code style features keep improving. Code styles can now be applied with a single command, ReSharper | Edit | Apply Code Style (Ctrl+Alt+S). Reformat Code, Apply Code Style and Run Code Cleanup commands are now accessible from Alt+Enter menu when you make a selection in the editor. In addition, a dedicated action for reformatting code is back, and it can be invoked from the main menu (ReSharper | Edit | Reformat Code) to reformat code depending on the context. Another improvement covers the use of braces, which ReSharper now helps you make consistent across your code base. Preferences for each kind of code block can be configured separately in a code style options page, and ReSharper makes sure to respect these preferences:
    Quick-fix to add missing braces
  • Intermediate Language viewer is now built into ReSharper. The IL Viewer, which first appeared in dotPeek 10, is now available for drilling down library code right in Visual Studio. To check how it works, navigate to any library symbol (which can be as easy as Ctrl-clicking it), and then choose ReSharper | Windows | IL Viewer in the menu.
  • Optimize References learns to handle NuGet references, and Remove Unused References starts to support NuGet references as well.
    Analyze NuGet references

ReSharper C++

ReSharper C++ 2016.1 comes with 270+ fixes and a set of larger improvements:

  • To-do Explorer: ReSharper C++ 2016.1 introduces the long-awaited navigation view, which lets you view, group and filter comments that contain one of the 3 default to-do patterns (Bug, Todo and Not Implemented) and any custom patterns that you might want to set up.
    To-do explorer in ReSharper C++ 2016.1
  • New context actions and quick-fixes. ReSharper C++ 2016.1 comes with quick-fixes to change variable type, function return type, type of unmatched out of class definition or declaration. Another new quick-fix lets you create a field from constructor parameter.
    Quick-fix to create field from constructor parameter
    We also added a set of new context actions and quick-fixes for working with #include directives; quick-fixes to change type of unmatched out-of-class function definition; to make a data member mutable or a member function non-const; to make a base class or a function non-final; to move all function definitions inside a selection.
  • The list of supported C++ language features is extended with generalized lambda captures, exception specifications, user defined literals and delegating constructors.
  • ReSharper C++ 2016.1 enhances Rename refactoring, which can now automatically rename corresponding files (both source and header) along with code symbols, and to update usages in include directives.
  • ReSharper C++ 2016.1 adds support for the Boost.Test framework to its Unit Test Runner. Please note that only Boost version 1.60 is supported.
    Boost.Test support in ReSharper C++
  • Code generation improvements. The Generate stream operations action available via Alt+Ins can now generate stubs for Boost.Serialization functions: save(), load() and serialize(). In addition, formatting options are now taken into account when generating code.
  • All ReSharper C++ actions are now banned from changing library headers.

Other tools within the ReSharper Ultimate family have received their shares of improvement as well.

dotCover

  • Test execution in Continuous Testing for MSTest and xUnit test becomes faster with dotCover 2016.1 thanks to pre-loading test runners.
  • Coverage filters are now supported in Continuous Testing.
  • Quick search results are now highlighted in the coverage tree.
  • We added a button to explore the stack trace of the selected test in Stack Trace Explorer:
    Improved Continuous Testing tool window
  • Another improvement applies to the relationship between dotCover console runner and TeamCity. TeamCity is now tuned to understand the output of the console runner and can highlight its errors and warnings in the build log.

dotTrace

  • dotTrace 2016.1 adds its Threads diagram into Visual Studio. Now, the integrated Timeline Viewer gets exactly the same diagram, which you can use to select threads, time range, and of course, view thread activity and filtered time intervals.
  • Moreover, the Threads diagram in both standalone and Visual Studio viewers gets smart tooltips. Hold the mouse over a specific time point on the timeline and a tooltip containing current thread state, executed method, and other info will appear. Tooltips are context-sensitive. This means that if some filter is applied, the tooltip will contain additional data on the filtered event. For example, when the File I/O filter is selected, the tooltip additionally shows info about file operation, file name, and data size.
    Threads diagram in Visual Studio with smart tooltips

dotMemory

dotMemory 2016.1 adds browser-style Back and Forward buttons to navigate across different views in profiling results.
Back and Forward navigation in dotMemory

dotMemory Unit

dotMemory Unit 2.2 gets a number of improvements:

  • Object selection queries now support open generic types, which is useful if you want to get all substitutions of your generic type.
  • The GetNewObjects, GetSurvivedObjects, and GetDeadObjects methods get overloads that accept query as a parameter. This allows to avoid one more GetObjects call and simplify assertions.
  • You can select objects by wildcards using the Like and NotLike queries on types, interfaces, and namespaces.
  • You can use three constants when specifying a directory for saving workspaces in the DotMemoryUnit attribute. The constants are written in angle brackets: <User>, <LocalAppData>, <CommonAppData> and stand for, correspondingly, %USERPROFILE%, %APPDATA%, and %LOCALAPPDATA% directories.
  • Improved performance of key queries: Type.Is, Interface.Is and Namespace.Like.
  • Tests that execute queries from child processes are now handled correctly.

Improvements in dotMemory Unit 2.2

dotPeek

  • dotPeek 2016.1 learns to handle extension methods as instance methods and automatically highlights usages of the symbol under the caret.
  • With dotPeek 2016.1 you can load NuGet packages and their dependencies from any online package source, or load packages listed in a packages.config file in your Visual Studio project.

Licensing

If you have an active license to ReSharper, ReSharper C++ or ReSharper Ultimate, we encourage you to start using 2016.1 straight away.

As we have just recently switched to subscription licensing, some of you may still use older, pre-subscription licenses. If you are not sure whether your licenses are eligible to use with 2016.1, or if you need a formal quote or any other assistance, please get in touch with JetBrains sales anytime.


Get ReSharper Ultimate 2016.1

This entry was posted in How-To's and tagged , , , , , , , , , , , , , . Bookmark the permalink.

43 Responses to ReSharper Ultimate 2016.1 is released

  1. Mike-EEE says:

    AWESOMEEEEEEEEEEEE!!!!!!!!!!!!!!!!!!!!!

    That is all. :) :) :)

  2. JamesT says:

    Superb! – great to see native xUnit.Net support amongst all the other goodies. Nice one Jetbrains!

  3. trailmax says:

    Was this rushed like the previous release and hence full of defects? Or was it released when it was ready to be released?

  4. Shaun says:

    I don’t see any reference to DNX/.NET Core support. I thought that was supposed to land in 2016.1?

    • Sergey Coox says:

      Shaun, any particular feature you have in mind?
      For instance, we’ve got JSON support that is applicable to DNX projects. We have decided not to invest in unit testing support for DNX projects in this release as DNX may change significantly quite soon.

  5. Pingback: ReSharper Ultimate 2016.1 リリース | OPC Diary

  6. Robin says:

    Hi, I have just installed 10.1 update I am using it on a project with typescript.
    Does ReSharper typescript support the tsconfig.json file ?

    I have it setup to pickup all types with the “exclude” feature.

    “exclude”: [
    “node_modules”,
    “typings/main”,
    “typings/main.d.ts”
    ]

    Which works fine for Visual Studio 2015 native, and in atom with atom-typescript extensions.

    As it appears ReSharper can’t find any of the type definitions.

    • Robin says:

      By adding “/// <reference path=”../typings/browser.d.ts” />” to just one file in my solution it appears ReSharper starts picking up types everywhere. I posted this again cause of the formatting of previousy

      • Anton Lobov says:

        Thanks for your report, the “exclude” lists will be supported in the bugfix update for 2016.1, altogether with bugfix for resolving NPM items with “index.d.ts”, so hopefully it will solve your issue. Stay tuned.

  7. Pingback: ReSharper Ultimate 2016.1 ist da - entwickler.de

  8. Mikhail says:

    Hi! Thanks for great update!!!

    Any information about C++/Cli support?

  9. Stuart says:

    Seems to me that 2016.1 RTM has a problem with keeping up with the fact that I’ve changed branches. Visual Studio indicates that projects/files have changed, so I ‘Reload All’, and then R# seems to hang on processing assemblies and VS stops responding.

    Anyone else seeing this?

  10. Pingback: Dew Drop – April 15, 2016 (#2231) | Morning Dew

  11. David Peden says:

    Still waiting on proper xUnit support in .NET Core projects…

    https://github.com/xunit/resharper-xunit/issues/38

    Hurry up RC2!

  12. Andrew Male says:

    Last time I tried using the C++ tools, it also installed the .NET side as well, which ultimately led me to not use Resharper for any language. Is this still a feature/problem, or have the two been separated properly?

    • Daria Dovzhikova says:

      Andrew,

      If you used ReSharper Ultimate installer, all the tools are pre-selected by default and if you didn’t want them to be installed you could have selected “Skip” option for all but ReSharper C++. ReSharper C++ installer has only ReSharper C++ pre-selected and all other tools are not being installed, but can be upgraded if previous versions are already installed on the same machine due to compatibility issues.

      • Andrew Male says:

        The problem is that if you skip the C# tools and install the C++ tools, you still end up with the C# tools installed and operating. I’ve confirmed this now on 2016.1.1 as well, and it’s absolutely infuriating.

  13. Pingback: Dew Drop – April 15, 2016 (#2231) | Tech News

  14. Jonas says:

    This is VERY exciting! :-)… Thanks for being awesome!

  15. Jeff Chen says:

    ‘Asynchronous Find Code Issues. Starting with version 2016.1, Find Code Issues works in the background both in ReSharper and ReSharper C++. This lets you keep editing or navigating your code while ReSharper runs its analysis.’

    Question:
    Does it means that the solution-wide analysis and in-page code analysis are both running Asynchronous ?

    • Daria Dovzhikova says:

      Jeff,

      Perhaps the wording is misleading, sorry for that. No, this means that previously Find Code Issues was modal and prevented one from typing or navigating through out the code until it’s finished. Now it runs it the background and doesn’t interfere. Solution-wide analysis runs in the background as well.

  16. Kori says:

    Any comments about performance improvements? My machine is an absolute beast and the last version was just making my system crawl (was fine before) to the point that I formatted just to get it off the system.

    • Jura Gorohovsky says:

      Kori, performance improvement is a continuous effort. Based on the issue tracker alone, 50+ performance issues have been fixed, and I’m sure there were multiple fixes not reflected in the tracker.

      Unfortunately since we don’t know what your specific performance problem was caused by (we have to have a performance snapshot to know), there’s no way to tell if the root cause has been fixed. Which means the only way for you to see whether or not 2016.1 is any better is to install and try.

  17. Ant Meehan says:

    I’ve just installed the 2016.1 update and now it takes ~10 seconds to open a JSON file. Any suggestions?

    I’m working on Azure Resource Group templates (which are all JSON) so very frustrating.

    Thanks

  18. Great! Love the braces refactoring, already applied a team shared rule for it and use it on all solution. Finally the continuous testing feature is now working well on my project. Lot’s of other intersting features. Great job

  19. Duncan Faulkner says:

    Just installed Resharper 2016.1 and Visual Studio keeps hanging with this version running. I’m using a typescript project, and had to disable it as it’s not working correctly. I will reboot PC tomorrow and re-enable to see if this has any affect.

    Has anybody else had this issue?

    • Duncan Faulkner says:

      Update:
      Rebooted pc and as soon as Resharper is enabled it crashes Visual Studio.

    • Anton Lobov says:

      >I’m using a typescript project, and had to disable it as it’s not working correctly.

      Could you please provide any more details about what’s not working correctly?

      About the crash – it would be nice if you provided some crash details. If you have windbg installed, please do the following:

      1. start “windbg x86”
      2. hit F6 to attach to Visual Studio
      3. enter the following command: sxd av
      4. hit F5 so Visual Studio will be running again
      5. execute the repro steps
      6. after it crashes, please enter the following commands one by one:

      .loadby sos clr
      !PrintException
      !ClrStack
      ~* e !ClrStack
      ~* k

      Then select all the text, paste to a new text file and it to us.

      Thanks for any further information and for any further help with the investigation!

      • Duncan Faulkner says:

        It occurs when processing the files in a project (progress bar in status bar, bottom right), I have tried other solutions and it all seems to be working ok, just seems to be with a type script project running angular2.

        I will try you steps above but need to find more information on how to start windbg

  20. Pingback: .NET Digest #10: Build 2016, Bash on Windows, Evolve 2016, bla-bla microservices : IT лента новостей ⋆ iAMX - Развлекательно-информационный портал

  21. Francis Kim says:

    Need $$$ to get the All Products Pack… 😐

Leave a Reply

Your email address will not be published. Required fields are marked *