CodeRush for Roslyn 16.1.6 - Official Release

It’s Here

Team CodeRush has worked for over a year building CodeRush for Roslyn, and we’ve dedicated ourselves to creating the fastest, lightest, most powerful add-in for Roslyn. Here are a few of our accomplishments:

  • CodeRush loads in about three seconds or less.
  • CodeRush consumes significantly less memory than competing tools with similar functionality (about 200MB less for most projects).
  • CodeRush still appears to have the world’s fastest test runner.
  • We continue to approach a maximally efficient code writing experience.

This past year the team obsessed over performance, working to create a tool that maximizes productivity without getting in your way. I think we did that, and I’m interested to see if you agree.

Killer Features that made it into this release:

Differences Between CodeRush for Roslyn and CodeRush Classic

Here’s an overview of the major differences between CodeRush for Roslyn and CodeRush Classic:

CRR vs CRC

So if you’re working in C# or VB in Visual Studio 2015 or higher, then CodeRush for Roslyn will make sense for you.

If you’re working in older versions of Visual Studio, or if most of your work is in JS, HTML, or XAML, CodeRush Classic may right be for you.

Pricing

There are two ways to purchase CodeRush for Roslyn. If you need first-class DevExpress support, or if you also need CodeRush classic, then you’ll want to purchase CodeRush Ultimate.

If support from the community is all you need and you’re working in VS 2015 and up, then get CodeRush for Roslyn, Community Support Edition.

Both options are summarized below:

CRR vs CRU

Note that regardless of which option you purchase, that purchase price entitles you to one year’s worth of free product updates. And speaking of updates…

Release Schedule

If you followed the CodeRush for Roslyn pre-release, you know that Team CodeRush pushed out updates every 45 days. And we plan to continue that 45-day sprint cycle, so you can expect to get the latest features, refactorings, updates, and every 45 days. Eight times a year.

What’s New

Here’s what’s new in the 16.1.6 release:

Code Analysis

  • You can now run Code Analysis for the active project or file separately.
  • The Code Analysis report now includes information about source files.
  • You can now reconfigure Code Analysis without restarting Visual Studio.
  • We have added the ability to check naming conventions continuously in background.
  • Performance has been improved.

Navigation

  • ‘The new Jump to Everything navigation provider allows you to jump to any file and symbol in the solution.

JumpToEverything

Refactorings and Code Providers

  • Convert to System Type/Built-in Type lets you easily switch between CLR types and their keyword aliases.
  • Split String divides a string into two at the caret position. You can also divide one string into three concatenated strings - just select the portion you want to break out before applying this refactoring.
  • Reorder Parameters changes method parameter order, without any dialogs to slow you down. The method signature and all references are updated. This is the fastest, most effortless way to reorder parameters.
  • Visual Studio's Rename refactoring is now accessible from the refactoring menu. 
  • We have added the ability to sort Light Bulb menu items (refactorings and code providers) based on their most recent usage in the given context.
  • You can now optionally hide redundant Light Bulb menu items provided by Visual Studio if these features overlap more efficient CodeRush functionality. For example, if this option is selected, when CodeRush's "Declare Method" is available, Visual Studio's "Generate method stub" menu item will be hidden.

Test Runner

In this release, we are introducing beta support for .NET Core tests. Now you can run and debug .NET Core tests, created with NUnit, xUnit or MSTest frameworks.

  • Test Runner output in Visual Studio's Output window now shows the filter applied to the test run:
    TestFilter
  • You can now optionally show or hide the Test Runner and Code Coverage items appearing in Visual Studio context menus.
  • Visual Studio's status bar now displays the currently running test.
  • Testing results in Visual Studio's Output window are now grouped by project.
  • Tests can now be grouped by file path.
  • A number of minor usability issues were corrected/improved.

Other Improvements

  • If you have new and old versions of CodeRush for Roslyn installed, the Extension Cleaner will detect this and offer to clean up the older versions.
  • The Code Cleanup options page has been redesigned, showing before & after code samples, so you can more easily see what each option performs.
  • Member Icons are now in vector format, so they look sharp and clear regardless of the color scheme, display resolution or editor window scale.

    VectorMemborIcons

Give It a Try

Download the CodeRush for Roslyn from the Visual Studio Gallery and let us know what you think.

Did the I disposable refactor make it in?

11 August, 2016

Not sure where to look but it appears the "fmt" expansion is not yet implemented for string.Format(...)?

12 August, 2016

Hi Neal,

I see the "fmt" template is in the Text folder on the Templates options page.

Its expansion is:

«?SimpleStaticTypeName(System.String)».Format("«Field(,Message)»«Caret»", «Field(,arguments to String.Format)»)

And its context is:

[InCodeBlock]

12 August, 2016

Thank you, I ran the setup wizard again and it seems each time the screen with the numeric keypad options doesn't remember I checked that option last. I wanted to turn the keypad options off as it seems I do in fact use it more than I thought, I'll figure it out but not sure if you wanted to know that the setup wizard isn't remember that option from the last run.

As to the fmt I tried several times and it finally started working, triggered with the spacebar.

I also open the Options panel and nothing was selected on the bottom left, I changed it to C# to find the fmt expansion.

All is good, thank you.

12 August, 2016

Great stuff, congrats on the release.

Now if I can just change Jump to Everything's Red text on the Blue highlighted row ! I hurts my eyes... :-(

29 August, 2016

Congrats guys! CRR is a nice alternative if you don't need the full set of CRC (especially if you have a bunch of colleagues that also want one, and you can't really convince the CFO to approve the purchase request ;) ). The price advantage over CRC and other comparable products is simply huge.

Some things are still missing that I'm eagerly awaiting in CRR:

- Match namespace to folder structure (and vice-versa; right now it only has "Move type to file")

- Promote to field (only has "Widen scope" within a method atm)

- All Wizard options exposed in the Options page (or did I simply miss the checkbox to enable "Collect marker using ESC, even when a selection is active" in there?)

- ...something else I think I just forgot about...is highlighting of unused members/locals in there yet?

8 September, 2016

Hi Emanuel,

> did I simply miss the checkbox to enable "Collect

> marker using ESC, even when a selection is active"

> in there?

You didn't miss it. This is a special option that simplifies context changes to a particular keybinding. You can still make the equivalent change inside the options dialog, but the steps are more complex. But the wizard and options dialogs are interchangeable. If you find it easier to change an option with the wizard, you can use it (and navigate only to the page you want to change) without worrying about messing with your other settings.

9 September, 2016

Is there a page dedicated to tracking the differences between Classic and Roslyn?  I just downgraded yesterday as I realized too many refactorings weren't there.  I'd like to know when Roslyn catches up.  Also, is classic still supported or is it EOL?

18 November, 2016

Please login or register to post comments.