 |
We are added 2 new community contributions to our Tutorials page. Paulo Morgado posted a great template for CodeIt.Right Code File Header correction action that automatically generates file header compliant with StyleCop Rules. You can find the template source in Paulo's blog post CodeIt.Right Code File Header Template For StyleCop Rules Craig Sutherland has done a great job integrating CodeIt.Right with CruiseControl.NET. Here is CodeIt.Right violations report in CC.NET - great to see Craig took advantage of the Severity Threshold feature and implemented filtering to reduce "noise" in the report very much like we have it in CodeIt.Right: CC.NET CodeIt.Right Analysis Summary report screenshot: Thank you, Paulo and Craig! Great work!
As announced earlier today we just closed the acquisition of the popular unit testing and code coverage product TestMatrix, as well as CodeSpell and StudioTools. We, SubMain, will continue to maintain and enhance these products. TestMatrix adds support for unit testing, code coverage analysis, and test profiling to Visual Studio, seamlessly incorporating these critical development practices directly into the coding process itself; CodeSpell adds real-time, intelligent detection and correction of misspellings to Visual Studio; and StudioTools is a rich collection of Visual Studio enhancements. We are also announcing today the availability of the new version for all three products - TestMatrix, CodeSpell and StudioTools - v2.1.10055 which adds support for Visual Studio 2010 RC. We are very excited about taking over the future of such great products! TestMatrix complements CodeIt.Right into a Code Quality Suite which will be be complete with the addition of the new product codenamed Project Anelare in the following months. For more on the agreement, please see the press release.
Today we released update for CodeIt.Right Standard and Enterprise Editions - v1.9.10053. As part of our 2010 Product Roadmap, this version changes include significantly improved performance, support for GlobalSuppressions, new rules and bug fixes.
New in CodeIt.Right v1.9.10053:
- Major performance improvements throughout the rule base
- Added support for GlobalSuppressions - syntax is the same as the VSTS GlobalSuppressions file. This new feature is supported in both Standard and Enterprise editions.
- SuppressMessage attribute for class now applied to all member of the class (see example at the bottom of the post)
- New Rules:
- Avoid the Page.DataBind method (AspNet)
- Avoid the DataBinder.Eval method (AspNet)
- Do not use SaveAs method to store uploaded files (AspNet)
- Always define a global error handler (AspNet)
- Do not disable custom errors (AspNet)
- Avoid setting the AutoPostBack property to True (AspNet)
- Interface methods should be callable by child types (Design)
- Remove unused parameters (Usage)
- Corrected download redirect link in the Enterprise Edition when new version is available. In the past versions it would incorrectly open the Standard Edition download page
- Fixed Encapsulate Field refactoring issue
- Other fixes for the reported issues
The following code sample on how class level SuppressMessage attribute excludes TypesAndMembersShouldHaveXmlComments rule for the class and all its members (bullet #3 above):
[SuppressMessage("SubMain.CodeItRight.Rules.General", "GE00005:TypesAndMembersShouldHaveXmlComments")] public class MyUndocumentedClass { public void MyUndocumentedMethod1{} public void MyUndocumentedMethod2{} }
This update is free for all users who are current on their Software Assurance and Support Subscription
Code Quality developer tools is the direction we've been following since the introduction of CodeIt.Right and we are taking this commitment to the next level in 2010 with two new products and new features for our existing products. One of the new products to be released in 2010 will assist in unit testing, code coverage and test code profiling; the second new product will be complementary to CodeIt.Right. All three products together will comprise our new Code Quality Suite. Additionally, we will continue to keep up with the Visual Studio 2010 release schedule and have all of our products 2010 compatible when VS2010 is RTM. Here is what we are planning for 2010: - New product!
- Coming March 2010: we are adding to our product line by offering a unit test runner and code coverage product.
- New product!
- Project Anelare (code name) - we will provide details on this project as we get closer to a public preview. At this point we can share that this will be product complementary to CodeIt.Right - together they will encompass our code quality package.
- VS2010 support
- For all products - most of our products are compatible with VS2010 RC, and we will be VS2010 RTM compatible by the time it RTMs.
- CodeIt.Right
- Optimized rule library performance: the new version will be released the first week in March!
- Community Rule Valuation & Review: we are pioneering "social" in code analysis by enabling the community to rate rules and provide feedback; as well as leverage the community feedback, best uses and best practices for each rule.
- NEW Rules - with emphasis on security, FxCop/StyleCop parity, SharePoint, WPF & Silverlight rules.
- (EE) Trend Analysis: monitor code quality improvements over time.
- (EE) Integration with manual code review tools.
- Global Suppressions: adding support for GlobalSuppressions and extending syntax of the SuppressMessage attribute for more flexible in-code exclusions.
- Multi-select in the violations list.
- Copy Rule feature: clone and change rule instance configuration
- Command line enhancements: open command line/build violations output in Visual Studio for correction
- Annotation: for excludes and corrections
- XAML support: enables building Silverlight and WPF specific rules
- Profile Wizard: quick start no-brainer user/project profile based on the project type, importance, community valuation, favorite food, etc
- GhostDoc
- We are currently prioritizing the feature set for the new version of GhostDoc. If you have a feature request that you have not submitted yet, share them with us in the GhostDoc forum.
Stay tuned to our blog for more details about our progress!
New version of CodeIt.Right Enterprise Edition - build 1.9.09355 - is available for download now. This version introduces new feature Merge Profiles that allows to compare and merge user configured profiles, enhances VSTS integration with the new "Add WorkItem" feature, adds command line version parameters and ability to load/unload CodeIt.Right in the menu and Add-In Manager. This update is free for all users who are current on their Software Assurance and Gold Support Subscription New in CodeIt.Right Enterprise v1.9:
- New Merge Profiles feature allows to compare and merge user configured profiles
- New "Add WorkItem" feature - create TFS WorkItem from a violation
- Added /metrics parameter to the command line utility to generate XML output for three metrics reports – "Member", "Type" and "Code"
- Added /sendto parameter to the command line utility - send the violation/metrics output via email
- CodeIt.Right can now be loaded/unloaded in the menu and Add-In Manager
- Build server setup doesn't require Visual Studio on the build machine anymore
- "Built-in profile" option now is not selectable in the Analysis Module when one or more custom profiles deployed via Team Configuration Module
- New Rules:
- Specify CultureInfo (Globalization)
- Specify IFormatProvider (Globalization)
- Specify StringComparison (Globalization)
- Avoid excessive complexity (Maintainability)
- Avoid excessive inheritance (Maintainability)
- Do not use deprecated properties of Response object (AspNet)
- Fixed a number of bugs in the application and the rules...
Today we are releasing new version of CodeIt.Right - build 1.8.09300. This version features complete ASP.NET support, it is compatible with VS2010 Beta 2 (in addition to VS2008, VS2005, VS2003), Add Rule dialog improvements - "Hide Rules in the Profile" and "Quick Search", 10+ new rules including new category "CodingStyle". Those of you who are using CodeIt.Right with very large solutions may know of the memory limitation issue for the tools that live in the Visual Studio address space, aka "Out of Memory" exceptions. You will be excited to know we have addressed the issue in this version by introducing new "Memory Optimization" mode. The "Performance mode" is still on by default since it offers a little faster analysis but CodeIt.Right will offer to switch to the "Memory Optimization" option when you open a large solution or get the dreaded "Out of Memory" exception. You also are free to switch between the options manually. Another change we made - we removed Sealed modifier for all built-in rules. This gives you even easier way to extend and customize existing rules by simply overriding just the methods you wanted changed. See Tutorial: Extending Existing Rules for a sample. This update is free for all users who are current on their Software Assurance and Gold Support Subscription New in CodeIt.Right v1.8:
- Now compatible with VS2010 Beta 2, VS2008, VS2005 and VS2003
- Finally complete ASP.NET support including refactorings in HTML markup.
- Added Memory Optimization mode – allows to minimize the memory use at slightly lower reduces performance. This allows to solve the “Out of Memory” issue on large solutions.
- Added Performance tab to the Options window – Best Performance/Memory Optimization.
- Added new Exclude tab and moved all exclude tabs there
- All Exclude tabs now support multi-select
- New option to Exclude a Project
- Added new “Add” button in Exclude Rule, Exclude File and Exclude Project tabs – the dialogs support multi-select.
- Profile Editor -> Add Rule dialog has new option Hide Rules in the Profile which removes from the selection the rules that already exist in the selected profile.
- Profile Editor -> Add Rule dialog has new Quick Search that filters the list for the rules that contain entered substring
- Added RuleID to rule help documentation.
- Product license codes when entered are now activated on the SubMain server.
- Auto Update wizard now shows Software Assurance & Gold Support subscription expiration date.
- About window now shows Software Assurance & Gold Support subscription expiration date.
- All web services – Auto Update, Error Reporting, Statistics and Activation – are now accessed over SSL protected HTTPS connection.
- Removed Sealed modifier for all built-in rules. This allows for new easier way to extend and customize existing rules by simply overriding specific methods. See Tutorial: Extending Existing Rules for a sample.
- Addressed issues related to incorrect source file encoding when Byte Order Mark (BOM) attribute was missing.
- New Rules:
- Abstract class should have at least one derive class (Design)
- Interface should have at least one implementation (Design)
- Project should have AssemblyInfo file (Design)
- Do not place assembly attributes outside of AssemblyInfo file (Design)
- Do not include multiple statements on a single line (CodingStyle)
- Avoid single line If statement (CodingStyle)
- Do not check for empty strings using Equals (Performance)
- XML Comments should be spelled correctly (Spelling)
- Avoid non-public fields in ComVisible value types (Interoperability)
- Avoid static members in ComVisible types (Interoperability)
- PInvokes should not be visible (Interoperability)
- Fixed a number of bugs in the application and the rules...
Download
Download version 1.8.09300 here - http://submain.com/download/codeit.right Technorati Tags: CodeIt.Right, Coding Guidelines, Naming Conventions, Best Practices, .NET, NET
As announced earlier today we just closed the acquisition of the popular XML Comment helper tool GhostDoc. We, SubMain, will continue to evolve the tool and distribute it as a free product.
We are also announcing today the availability of the new version of GhostDoc v2.5.09150 which improves the user setup experience, adds support for Visual Studio 2010 Beta 1 and full support for Visual Basic. Additionally, today we are making available a new version of CodeIt.Right (v1.6.09151) that adds the IntelliComment feature based on the GhostDoc algorithm and offers improved and automated generation of XML Comments. We are very excited about taking over the future of an excellent tool such as GhostDoc! We are committed to maintaining this wonderful free tool and we welcome the community feedback and suggestions.
For more on the agreement, please see the press release and interview with Serge Baranovsky and Roland Weigelt - What's in the shop for GhostDoc?
New in GhostDoc v2.5:
- Compatible with VS2010
- Support for VB - GhostDoc now has full support for VB
- Removed "Enable experimental support for VB" option in Settings.
- Improved product setup experience
- Single setup for all supported versions of Visual Studio - VS2005, VS2008 and VS2010.
- Setup will detect older version installed and automatically uninstall it.
- Converted from VS Add-In to VS Package
- Resolved installation issues related to the VS Add-In model - by converting to VS Package
DownloadDownload GhostDoc v2.5.09150 here - http://submain.com/download/ghostdoc
Download CodeIt.Right v1.6.09151 here - http://submain.com/download/codeit.right
by Serge Baranovsky
This CodeIt.Right rule update includes fixes as well as 3 new security rules.
New rules:
- Do not declare read only mutable reference types (Security)
- Seal methods that satisfy private interfaces (Security)
- Secure GetObjectData overrides (Security)
These rules are included with the default profile and you will only need to follow the wizard to merge them into your custom profiles.
Fixes:
- Rule "Do not override operator equals on reference types" incorrectly triggered violation for the "Equals" method. Now this rules only reports violation for the operator "==" override.
- Fixed "If the type is a generic type, CIR adds the apostrophe-count string to the class name for the deserialization constructor"
- Fixed "If there is no explicit default parameterless constructor, adding the deserialization constructor causes errors in all derived classes that called the parameterless constructor"
As a reminder, this set of rules is distributed using the Rule AutoUpdate feature which triggers 15 minutes after you start Visual Studio. If you turned the feature off, you can manually start the update wizard from the CodeIt.Right/Help & Support/Update Rules menu.
Technorati Tags: CodeIt.Right, Coding Guidelines, Naming Conventions, Best Practices, .NET, NET
by Serge Baranovsky
We obtained exclusive distribution rights to the latest version of Steve Sartain's C#/VB .NET Coding Guidelines 100+ page ebook, and are offering free download from our website. From now on we will be maintaining the guidelines along with the author.
Topics covered in C#/VB .NET Coding Guidelines include:
- Naming Guidelines
- Class Member Usage Guidelines
- Guidelines for Exposing Functionality to COM
- Error Raising & Handling Guidelines
- Array Usage Guidelines
- Operator Overloading Usage Guidelines
- Guidelines for Casting Types
- Common Design Patterns
- Callback Function Usage
- Time-Out Usage
- Security in Class Libraries
- Threading Design Guidelines
- Formatting Standards
- Commenting Code
- Code Reviews
- Additional Notes for VB .NET Developers
Here is what Andrew Sutton says about the ebook at vbCity: "Steve Sartain has come up with a very readable document that offers comprehensive guidelines for structuring code writing."
Better hurry up to download this excellent whitepaper on coding guidelines and best practices while supplies last! (Just kidding, our supplies of this electronic downloadable book are unlimited )
Technorati Tags: CodeIt.Right, Coding Guidelines, Naming Conventions, Best Practices, .NET, NET
|
|
|
|