Welcome to MSDN Blogs Sign in | Join | Help

FxCop 1.36 Beta Released!

I'm pleased to announce that we've released a beta of the next version of FxCop. This release has a number of changes since FxCop 1.35, including, but not limited to, the following:

  • 200+ bug fixes that reduce noise, missing analysis and rule crashes
  • Support for analyzing anonymous methods and lambda expressions
  • New option for skipping analysis over tool generated code
    • Turn this on in the UI via Project -> Options -> Spelling & Analysis -> Suppress analysis results against generated code
    • Turn this on in the command-line via /ignoregeneratedcode switch.
  • Better support for C++/CLI and the Compact Framework
  • Language 'friendly' API names in the UI and resolutions (ie Visual Basic syntax if running over a Visual Basic binary)
  • New globalization, design and usage rules
  • Performance improvements that cut analysis by 2x and use half as much memory
  • Documentation that is now available on MSDN

There are also some other underlying changes that I will talk about in some future posts.

Download it, and tell us what you think. If you have any feedback, bug reports or any questions, feel free to head over to the Code Analysis forum and ask away.

Published Wednesday, October 10, 2007 1:09 PM by David M. Kean

Comments

Wednesday, October 10, 2007 5:22 PM by MSDN Blog Postings » FxCop 1.36 Beta Released!

# MSDN Blog Postings » FxCop 1.36 Beta Released!

Thursday, October 11, 2007 3:37 AM by Jorge Serrano - MVP Visual Developer - Visual Basic

# FxCop sigue vivo... ¡viva FxCop!

Microsoft ha publicado una nueva versión de FxCop en versión Beta 2, se trata de FxCop 1.36 Beta 2. La

Thursday, October 11, 2007 4:09 AM by Franck Jeannin

# Multithreading rules

Can we expect anything on race condition detection in the future? What happened to the work on RaceTrack done by Microsoft Research back in 2004?! Can Spec# help?

Thursday, October 11, 2007 10:32 AM by Jan Schreuder on .Net

# FxCop 1.36 Beta available for download

The Visual Studio Code Analysis Team Blog announces the release of FxCop 1.36 Beta.This new version contains

Friday, October 12, 2007 12:55 AM by From the software development trenches

# Izindaba #13

It is time for another weekly roundup of news that focuses on .NET, agile and general development related

Friday, October 12, 2007 5:14 PM by CoqBlog

# FxCop 1.36 Beta 2 disponible

Une version beta du prochain FxCop (la version standalone) est disponible . Il supporte l'analyse d'assemblies

Saturday, October 13, 2007 7:53 AM by Joe K

# re: FxCop 1.36 Beta Released!

Does Code Analysis in Visual Studio 2008 have these improvements as well? I remember reading that Code Analysis got spell checking but not sure how directly FxCop and Visual Studio Code Analysis are related.

Monday, October 15, 2007 4:39 PM by Scott Jones

# re: FxCop 1.36 Beta Released!

How about some documentation on the diffs in the fxcop sdk between 1.35 & 1.36, for us custom rule authors?  It appears that a lot of functionality in RuleUtilities was farmed out to other classes.  In some cases, it's easy to find the new functionality.  In other cases, not so much.

Monday, October 15, 2007 7:50 PM by Scott Jones

# re: FxCop 1.36 Beta Released!

I might also add that David Kean's custom rules no longer build with FxCop 1.36, due to all the breaking sdk changes.

Tuesday, October 23, 2007 3:26 PM by .NET slave

# New FxCop 1.36 beta 2 released

New FxCop 1.36 beta 2 released

Thursday, October 25, 2007 8:41 AM by Franck Jeannin

# re: FxCop 1.36 Beta Released!

If you wonder why SuppressMessage works in FxCop 1.36/VS2008 and not in FxCop 1.35, notice the subtle difference in the syntax.

FxCop1.36/VS2008

[assembly: SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode", Scope = "member", Target = "MyNamespace.MyClass.#MyMethod()")]

FxCop1.35

[assembly: SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode", Scope = "member", Target = "MyNamespace.MyClass.MyMethod():System.Void")]

When in doubt, you can use the right click/Copy As->SuppressMessage command in FxCop to place the correct syntax in the clipboard.

Monday, October 29, 2007 8:30 AM by MikeGH

# re: FxCop 1.36 Beta Released!

Is there any plans to add support for drop it-in over the fxcopcmd that VS2005 Code Analysis uses...

There appears to be an issue with parsing the rules path atm...

Thursday, November 01, 2007 3:35 AM by Manu

# re: FxCop 1.36 Beta Released!

Is there any way to suppress the same FXCop warning that is being reported multiple times with a SuppressMessage attribute?

Wednesday, November 07, 2007 7:45 PM by Eugenez

# re: FxCop 1.36 Beta Released!

Dear team,

Thank you for the release; but could you provide list of deprecated rules?

I have found that the following at least are different:

- Performance rules, DisposeMethodsShouldCallSuppressFinalize missing

- Performance rules, DoNotConcatenateStringsInsideLoops missing

- Usage rules, DoNotMarkEnumsWithFlags does not seem to work anymore

- Usage rules, NonConstantFieldsShouldNotBeVisible does not seem to work anymore

Am wating for the answer as I kinda hated ploughing through the rules trying to figure out what works and what does not.

Thanks, Eugene

Thursday, November 08, 2007 12:27 PM by Colin Bowern

# re: FxCop 1.36 Beta Released!

How does this related to the pending VS2008 release?  Can we upgrade the out-of-the-box code analysis in VS2005/2008 with the latest fxcop?

Thursday, November 08, 2007 12:39 PM by David M. Kean

# re: FxCop 1.36 Beta Released!

Mike: There will be no support to drop it over the version of FxCop in Visual Studio 2005. There have been changes to the output format that make it incompatible.

Manu: Typically no. SuppressMessage only suppresses an instance of 1 warning. If you want to suppress it multiple times, consider turning the rule off.

Eugenez: DisposeMethodsShouldCallSuppressFinalize has been moved and renamed to Usage\CallGCSuppressFinalizeCorrectly.

The following rules have been removed (most of them were part of our data flow engine that has been discontinued - we will be replacing them in a future version):

ValidateArgumentsOfPublicMethods

DoNotPassLiteralsAsLocalizedParameters

AvoidUnnecessaryStringCreation

DoNotCallPropertiesThatCloneValuesInLoops

DoNotConcatenateStringsInsideLoops

ReviewSqlQueriesForSecurityVulnerabilities

AssembliesShouldDeclareMinimumSecurity

DisposeMethodsShouldCallBaseClassDispose

ProvideCorrectArgumentsToFormattingMethods

The following rules have been renamed/merged into other rules:

LongAcronymsShouldBePascalCased

ShortAcronymsShouldBeUppercase

AvoidTypeNamesInParameters

AvoidLanguageSpecificTypeNamesInParameters

AvoidTypeNamesInParameters

SecureGetObjectDataOverrides

DoNotRaiseExceptionsInFilterBlocks

With regards to the two rules that don't work, can you head over the FxCop forum and provide us a repro?

Colin: You will not be able to update 2005 with the latest version and will we have made changes to allow 2008 to be updated - there is no need, it comes with the latest analysis (and actually has more analysis than FxCop).

Monday, December 10, 2007 2:15 PM by Eli Allen

# re: FxCop 1.36 Beta Released!

While 2008 may at present be up to date with fxcop rules I'm going to guess that new rules will be made in the future so it will still be useful to be able to update the fxcop rules.

Tuesday, December 11, 2007 3:01 PM by David M. Kean

# re: FxCop 1.36 Beta Released!

Eli: Rules that are in Visual Studio 2008 and not in FxCop 1.36 will never make it into later in a future version. Visual Studio will always remain superset of what is available in the free FxCop.

Tuesday, December 11, 2007 4:40 PM by Denis

# re: FxCop 1.36 Beta Released!

What is most likely time of production release of FxCop 1.36?

Tuesday, December 11, 2007 4:43 PM by David M. Kean

# re: FxCop 1.36 Beta Released!

Denis: We haven't announced the exact date, however, it will likely be at the start of next year.

Wednesday, December 19, 2007 2:28 PM by Paraesthesia

# FxCop 1.35 Spell Checking Uses Office 2003

FxCop 1.35 Spell Checking Uses Office 2003

Thursday, April 17, 2008 2:06 PM by Driven by Development

# How to: Setup a solution for developing FXCop/Code Analysis custom rules.

This post is not about creating custom rules for FxCop because there are already some resources on the

New Comments to this post are disabled
 
Page view tracker