Author Archive

ReSharper Personal and Academic Licensing Changes

Monday, June 3rd, 2013

Last year, we asked for your input in order to decide whether to make a transition to upgrade subscription-based licensing for ReSharper. Upon reading through your feedback and undertaking internal research, we introduced a commercial license including 1-year upgrade subscription.

Further on we thought that it would be appropriate to do something similar for personal and academic licenses. What we did was just drop the traditional, per-major-version personal and academic licenses and replace them with licenses empowered with 1-year subscription. This is exactly how most of our products (such as PhpStorm, RubyMine, AppCode or WebStorm) are licensed: when buying a license, you can upgrade to any major and minor releases during 1 year.

Starting June 1, whenever you buy a new personal or academic license or upgrade your existing one, you get 1 year of free upgrades, effectively meaning that you receive the upcoming ReSharper 8 for free.

Unlike the commercial license that can be purchased both with or without 1-year upgrade subscription, personal and academic licenses default to the subscription model, and do so without price increase. As a result, if you’re a personal or academic customer, there’s no more pain of buying a license and finding out in several months that you need to pay again in order to get the latest update.

ReSharper 7.1.3 is Available for Visual Studio 2012 Update 2

Friday, April 12th, 2013

Have you upgraded Visual Studio 2012 to Update 2 RTM? If you have, please download ReSharper 7.1.3, which is mostly about compatibility with this new Visual Studio update.

Specifically, ReSharper can now successfully run MSTest fixtures in VS2012 Update 2 (this was the most important problem that has prevented usage of ReSharper 7.1.2 with VS2012 Update 2); adds support for Windows Phone 8 unit test projects; and becomes compatible with the final release of LightSwitch HTML Client as part of VS2012 Update 2.

To make things clearer, here are some easy rules specifying whether you need ReSharper 7.1.3 depending on the version of Visual Studio that you’re using:

  • Visual Studio 2005, 2008, or 2010: you don’t need ReSharper 7.1.3, skipping this update is a safe bet.
  • Visual Studio 2012 prior to Update 2: you should NOT install ReSharper 7.1.3 if you’re using MSTest.
  • Visual Studio 2012 Update 2: ReSharper 7.1.3 is primarily for you, so go ahead and download it.

Meet ReSharper 7.1.2, dotTrace 5.3.1 Performance

Wednesday, February 20th, 2013

Two quick maintenance releases to our .NET tools become available today: please download ReSharper 7.1.2 and dotTrace 5.3.1 Performance.

ReSharper 7.1.2 contains fixes to Find Usages (RSRP-336714) and auto-completion in XAML (RSRP-337050), brings a pack of unit testing improvements related to running MSTest fixtures in Visual Studio 2012 (here’s the list of fixes), and adds more updates to the installer.

dotTrace 5.3.1 Performance fixes fetching PDB files required for code preview (DTRC-8228), and improves installation in certain scenarios.

If you’re experiencing any of the issues mentioned above, please try out these new updates. However, if previous releases are working fine for you, it’s probably best to just stick with them.

ReSharper 7.1 is Available

Tuesday, November 13th, 2012

ReSharper 7.1 is released
You knew ReSharper 7.1 had been underway for some time, and now, the day has come: ReSharper 7.1 is officially released and available for download. You’re welcome to grab the new ReSharper update.

Some of the reasons why you would want to do this include:

  • Performance and bug fixes: since releasing version 7.0, we have fixed over 300 performance problems and bugs! Special notice goes to performance fixes for SharePoint and ASP.NET MVC projects, as well as those for resource files.
  • Improved code formatter: considering that code formatting is a very sensitive area of functionality, we have implemented some of the most demanded code formatter improvements so far. For example, ReSharper 7.1 is able to format XML doc comments and chained method calls. We’ve recently blogged in detail about code formatter improvements.
  • Reviewing code and sharing ReSharper code inspection results with team mates is now easier, thanks to improved export functionality, as well as a way to copy code inspection items and convert them to work items. To learn more about this, see Easy sharing of ReSharper inspection results in the 7.1 EAP launch blog post.
  • Support for Windows Phone 8: if you’re already using Windows Phone 8 SDK to develop applications, ReSharper 7.1 is here to help you. How exactly? Read a recent blog post about Windows Phone 8 support
  • Support for VB.NET has been refined with Extract Class refactoring, new quick-fixes and improved IntelliSense.
  • XAML support is now considerably smoother in terms of code completion, typing assistance, naming style control, and code generation. The guy who’s in charge of XAML support has recently blogged about this.
  • INotifyPropertyChanged support pack now covers more usage scenarios relevant to Windows Forms, WPF and Silverlight application developers.
  • Other improvements include fixes in multiple refactorings; improved support for Entity Framework 5, ASP.NET, ASP.NET MVC, and JavaScript.

ReSharper 7.1 is a free upgrade for everyone who owns a ReSharper 7 license or a ReSharper 6 license purchased since June 1, 2012.

If you’re using ReSharper with plug-ins, they’re being tested for 7.1 compatibility. Most of them should be available for download in the coming days.

Please download ReSharper 7.1 and let us know how it works for you!

ReSharper 7.1 Early Access is Open

Friday, September 28th, 2012

Say hello to ReSharper 7.1 EAP! Starting today, you can download early builds of the new ReSharper update.

In this release, we’re trying to focus on little things: removing minor but irritating flaws as well as introducing small improvements that go a long way towards better usability. The everlasting battle for smooth performance and light memory usage is also in full force. Anyway, read on to learn what we have in store as of EAP launch.

Code formatter revitalized

We know that code formatting is a very sensitive set of IDE functionality — to the extent of donating kingdoms in return for fixing formatting issues. Seeing a set of these issues that have accumulated over the years, we decided it was time for action.

Specifically, following enormous demand, ReSharper now provides versatile settings to format chained method calls. For example, you can chop chained calls while giving preference to wrap after delimiter dots:

In conjunction with a new option to align chained method calls, this gives you the following formatting setup:

Second, facing the region controversy, Code Cleanup doesn’t introduce regions by default anymore. Too many people consider regions a code smell, and we had to do something about it.

In other formatting news, code formatter now indents with tabs only if using spaces is not allowed in a specific coding standard; there’s now a new options page which actually makes formatting XML doc comments a feasible task; and if you’re an ASP.NET developer, look for a new option to always use Kernighan & Ritchie style brace layout in markup pages regardless of whatever style you’re using in code-behind. There are even more formatting and cleanup fixes — here’s the full list in case you’re interested.

Fewer annoyances all around

If fixing some of the weirdness in code formatting behavior wasn’t enough, we handled quite a bit of other annoying bugs. For instance, configured JavaScript abbreviations are now respected by JavaScript naming inspections; moving types or files no longer changes their encoding; and importing types for pasted code doesn’t bring up an ugly dotted box.

Easy sharing of ReSharper inspection results

Following insightful feedback from John Papa and other long-time users, we’ve revised the experience of working with Inspection Results and Errors in Solution tool windows, primarily in order to streamline sharing ReSharper inspections with non-ReSharper users (amazing but there are some) as well as creating work items based on inspection results.

Specifically, you can now copy individual entries or custom selections of entries from both Inspection Results and Errors in Solution:

This is handy if you’re working in a team environment and assigning work items based on ReSharper inspections to different developers: copy an issue or a group of issues, submit the copy to an issue tracker, and there you go into the wonderful world of delegation!

However, copying an entry or a selection gives you a plain text copy of the issues that ReSharper has detected. If you’re a fan of HTML- or XML-based issue reports, be informed that entries can now be exported from Errors in Solution (this was previously only available from Inspection Results):

Speaking of XML reports, that was the only export format that included line numbers in previous ReSharper versions. In 7.1, we’ve put an end to this inexplicable injustice: HTML and plain text exports now include line numbers, too:

INotifyPropertyChanged tooling now supports Caller Info

ReSharper 7.1 takes advantage of Caller Info attributes when it implements INotifyPropertyChanged in .NET Framework 4.5 projects. Needless to say, if your project is targeting .NET Framework 4.0 or below, ReSharper still uses the traditional syntax.

The new version also facilitates migration to CallerMemberName-based implementations by highlighting redundant arguments. If you happen to have, say, an OnPropertyChanged implementation that includes a parameter annotated with CallerMemberName, any calls passing explicit arguments will be marked as redundant:

There’s more in store regarding INPC support in ReSharper 7.1, so stay tuned for a separate blog post.

A different treatment of the Preview tab

We’ve received complaints stating that we were taking advantage of the Preview tab in Visual Studio 2012 in more cases than it made sense.

In 7.1, all contextual (such as Go to Declaration or Go to Implementation) and context-insensitive (Go to File or Go to Symbol) navigation actions are reverted to open files in standard text editor tabs. The Preview tab is still used to open files that you’re selecting via Enter from tool windows such as Find Results.

Do you think this is a better way to use the Preview tab? Please let us know!

Refactoring coverage and quality assault

Many refactorings have received a level or two up in terms of stability and functionality. For example, Extract Class is now working with VB.NET in addition to C# code, plus the C# implementation has received a substantial share of bug fixes. (You’ve watched the video on using Extract Class, haven’t you?)

Change Signature now works correctly with default parameter values and handles usages of named arguments just fine. Other fixes cover Extract/Inline Method, Rename, Extract Superclass, Introduce Variable, Pull Members Up and quite a few more refactorings — here’s the full list of fixes.

Entity Framework 5-specific fixes

A couple of code analysis false positives are now gone, and extension methods should now be resolved without extra manipulations with ReSharper caches.

Various improvements in VB.NET support

For example, VB.NET quick-fixes for WinRT have been added to pair those available for C#; VB.NET inspections can finally be suppressed with comments; IntelliSense has been fixed for enums and LINQ-to-SQL joins. On top of that, as mentioned above, Extract Class refactoring is now functional in VB.NET code.

ASP.NET and ASP.NET MVC refined

ReSharper now consents with the exotic case of wrapping asp:placeholders with styles in ASP.NET markup files. ASP.NET MVC developers should be happier as ReSharper 7.1 handles cases where file names of views are not derived from action names and resolves relative view paths much better. For details on more web dev fixes, see this list.

Performance and memory consumption improvements

These traditionally cover all kinds of technologies but most importantly SharePoint, ASP.NET MVC and resource files. On another note, if you’re a fan of typing in web.config files, this should now be a much smoother task.

Unit testing: JavaScript and usability

First off, nested references are now supported for JavaScript testing frameworks (both QUnit and Jasmine).

Another improvement is relevant to a broader scope of unit testing practitioners however. If you have a great load of unit tests in your session, there’s now an easy way to filter the session to specific tests — just use quick search that is now available in Unit Test Sessions:

In other news

If you’ve read through to this point, you just owe it to yourself to download a ReSharper 7.1 EAP build.

Questions? Bug reports or improvement requests? We’re all listening.

Winners of JetBrains marketing study raffle announced!

Saturday, September 15th, 2012

JetBrains recently ran a marketing study, asking .NET professionals about their IDE preferences. The study lasted one month, attracting 320 respondents and gathering very useful information.

We’ve randomly selected 11 winners, 10 of whom will receive $50 Amazon certificates, and one will receive the top prize — a $150 certificate.

So, the results are in!

  • The top prize, a 150 USD Amazon certificate, goes to Ufuk Hacıoğulları
  • The 10 runner-up prizes, all 50 USD Amazon certificates, go to Gideon, Kiana, AshRj, Jim, Ben, Svick, Brian, Nick, Timrau, Mark.

If you’re one of the winners, the certificates should already be in your inbox!

Thank you again for participating in our study. Your responses help us make our tools even better, to meet the needs of professionals like yourself.

Huge discounts on personal licenses for .NET tools

Monday, September 3rd, 2012

Starting today and all the way through September 14, as part of the traditional Back to School promotion, we’re offering discounted new personal licenses for ReSharper, dotCover, and dotTrace Performance.

For example, you can now buy personal licenses for:

Note that more JetBrains tools are being sold out during this limited-time offer, including IntelliJ IDEA, RubyMine, PyCharm, PhpStorm, WebStorm, and AppCode.

Think fast, you only have 2 weeks to decide!

ReSharper 7.0.1: Bugfix Update Available

Tuesday, August 28th, 2012

We’ve just released ReSharper 7.0.1: a minor update that fixes many of the issues that users have encountered with the initial 7.0 release. Please download ReSharper 7.0.1 if you feel that any of the following improvements are relevant to you:

  • Memory consumption and performance fixes in SharePoint projects. Thanks to timely reports that we were receiving on high memory usage and freezes with SharePoint projects, we’ve made quite a bit of SharePoint-targeted memory and performance optimizations. There’s another SharePoint related fix which is for an incorrectly working path mapping feature in SharePoint apps (RSRP-328782.)
  • In fact, there are more memory and performance optimizations in ReSharper 7.0.1 such as fixing OutOfMemory exceptions with advanced usage search in libraries (RSRP-328767), reducing overall memory traffic (RSRP-328636), accelerating code completion in JavaScript (RSRP-328940) and removing a memory leak in Unit Test Explorer (RSRP-328626.)
  • “Close All Documents” is back. There was an unfortunate regression in 7.0 that a lot of users were unhappy with — that is, a missing action for closing all documents in Visual Studio 2010 and below (RSRP-328720.) The action is safely back now.
  • An annoying usability problem that’s been bothering those who take advantage of ReSharper’s naming style quick-fixes has been finally fixed: ReSharper 7.0.1 introduces a more natural order of actions that fix inconsistent naming issues (RSRP-273952.)
  • A couple of rare but serious issues with ReSharper caches has been fixed: specifically, ReSharper 7.0.1 shouldn’t clutter your hard drive with its cache files (RSRP-324162, RSRP-328956); nor should it block the initialization of solution-wide analysis (RSRP-329295.)
  • A bunch of issues in high-contrast theme has been fixed, including those related to underlining warnings and suggestions (RSRP-328990), highlighting usages (RSRP-328988), inadequate colors in Templates Explorer (RSRP-328987), and poorly visible text (RSRP-328979.)

For the entire list of fixes for 7.0.1, please see ReSharper 7.0.1 Release Notes.

Everyone who have had issues with version 7.0, please download ReSharper 7.0.1 and let us know if the update is working better for you.

ReSharper 7.0 is Released

Thursday, July 26th, 2012

Ladies and gentlemen, a fresh official ReSharper release has finally arrived! Download ReSharper 7.0, the new major version of the awesome Visual Studio productivity tool.

ReSharper 7.0 is an important update for all .NET developers, bringing more ways to refactor, inspect, and generate code. Early MS technology adopters should also appreciate support for Microsoft Visual Studio 2012, as well as support for Metro style application development for Windows 8.

We announced what’s inside version 7, before but as a reminder, ReSharper 7.0 highlights include:

  • Full integration with Visual Studio 2012 while maintaining support for Visual Studio 2005, 2008, and 2010. For obvious reasons, we’ve been testing on Visual Studio 2012 RC and we haven’t had a chance to verify smooth integration with Visual Studio 2012 RTM. However, as soon as RTM is available to us, we’ll see if it contains any breaking changes, and if we find anything, we’ll be quick to roll out a minor update. (See How Exactly ReSharper 7 Supports Visual Studio 2012.)
  • An extensive pack of functionality for developers looking to create WinRT-based Metro style applications. (See Windows Runtime Support in ReSharper 7.)
  • New code inspections and contract annotations for a more robust .NET code quality analysis.
  • New automated code refactorings, including the top requested Extract Class to decrease code coupling.
  • Additional code exploration features helping visualize hierarchies of polymorphic members and CSS styles.
  • An extended and fine-tuned code generation toolset. (See Code Generation Improvements in ReSharper 7.)
  • INotifyPropertyChanged interface support pack to improve productivity of Windows Forms, WPF and Silverlight application developers. (See INotifyPropertyChanged Support in ReSharper 7.)
  • Removing unused assembly references across the entire solution.
  • Extended web development toolset, including improvements to JavaScript support, and initial support for ASP.NET 4.5 and ASP.NET MVC 4.
  • Addition of two previously unsupported Microsoft development technologies: LightSwitch and SharePoint.

For a more detailed overview of these and other improvements, see What’s New in ReSharper 7.0. To keep getting insight on ReSharper 7 highlights, make sure to watch ReSharper 7 posts here on the .NET tools blog.

A quick note on plug-in compatibility. Right now, five plug-ins provide releases compatible with 7.0: xUnit.net Contrib, Agent Mulder, Agent Smith, and ActiveMesa R2P and MSpec Test Runner. We’ll be assisting the community in updating other popular plug-ins, such as StyleCop and AgUnit, for 7.0 compatibility in coming weeks.

A final quick note is for buyers and upgraders: if you have purchased a ReSharper 6 license on or after June 1, 2012, you qualify for a free upgrade to ReSharper 7.0. All you have to do is download ReSharper 7.0 and enjoy.

Get ReSharper 7.0 Beta!

Wednesday, July 11th, 2012

The new ReSharper major release feels so much closer now as we’re making available ReSharper 7.0 Beta that you’re all invited to download and try.

As announced previously, ReSharper 7.0 adds support for Visual Studio 2012, an extensive WinRT development toolset, new code hierarchy views and refactorings, an improved Generate menu, fresh code inspections and quick-fixes. It also introduces or improves support for a variety of languages and technologies, such as JavaScript, XAML, ASP.NET and ASP.NET MVC, LightSwitch, and SharePoint.

As you play with the Beta, please let us know if anything feels wrong or slow. You can contact ReSharper support, file a bug report, fill out this feedback form, or simply add comments to this blog post. There’s also the “ReSharper Misbehaves” icon in Visual Studio to help you quickly submit feedback without getting too far from the IDE.

Enjoy the Beta, and get ready for the final release!