What's Included & New
CodeRush, DXCore and Refactor! - v3.0.8

New Features/Changes

CodeRush for Visual Studio .NET

  • S19046 - Add a new code provider - "Add Else Statement"
  • S19246 - Add an action to invoke the "Member icon" menu
  • S19465 - Add an action to move active members to the specified region
  • S19016 - New code provider request - Property -> Read Only Property (Remove setter)
  • S19017 - New code provider request - Read Only Property -> Property (Add Setter)
  • S19742 - New CodeProvider: Create Descendant
  • S19743 - New CodeProvider: Create Descendant (with virtual overrides)
  • S19744 - New CodeProvider: Create Implementor
  • S19739 - New CodeProvider: Declare Local (implicit)
  • S19740 - New CodeProvider: Remove Redundant Constructor
  • S19741 - New CodeProvider: Remove Redundant Destructor
  • S19738 - New CodeProvider: Remove Region Directives

Refactor! Pro

  • S18500 - Extract Method and Introduce Local need to be available on tags inside of XML literals
  • S18183 - Extract String to Resource - must allow setting the name of the created resource
  • S19437 - Introduce Format Item needs better selection after application
  • S19004 - Introduce Local and Extract Method should work with attributes and text inside VB xml literal expression
  • S18885 - Target Picker - Please improve its placement logic

Resolved Issues

CodeRush for Visual Studio .NET

  • B91367 - Static members in Global.asax.cs are treated as an "Undeclared element" by Code Issues
  • B20727 - "fe" template handles custom iterators not quite correct
  • B91224 - "Metrics Window" - Top buttons aren't resizable.
  • B92549 - "Open containing folder" not working anymore after installing coderush: "Class not registered"
  • B94016 - "Selections | Embedding" options page isn't available
  • B91338 - Auto-implemented properties give false positive Not Implemented Member Code Issue
  • B90691 - Code Issues - Declared code elements are marked as "Undeclared element"
  • B30280 - Code Issues - incorrect "Undeclared Element"
  • B91328 - Code Issues - Marks enums as "Undeclared element"
  • B91012 - Code Issues - Resources class is marked as undeclared
  • B91403 - Code! - "Create Method Stub" Incorrectly generates generic from interface
  • B19759 - CodeIssues - An imported method is marked as "Not Implemented Member"
  • B91351 - CodeIssues - dataview row is marked as "undeclared element"
  • B19740 - CodeIssues - WPF Application - The "InitializeComponent" method is marked as "Undeclared element"
  • B92003 - CodeRush Tool Window does not remain docked
  • B92270 - CodeRush TrainingWindowToggle doesn't work correctly
  • B50159 - CppParser - Incorrectly parses variable declarations within "if" statement conditions.
  • B92804 - CRLF inserted into the results of an If Template
  • B91151 - Embed Selection context menu item is not visible until the mouse is used to show the context menu
  • B91385 - Enum members with "[]" are not supported
  • B91491 - fe template works badly with a nested generic type
  • B93371 - Find Reference doesn't work when LINQ query is used with let expression
  • B92028 - ForEach text command creates System.Nullable instead of System.Nullable(Of Integer)
  • B92713 - Intelligent Paste method template for "Event Trigger" should be protected
  • B91239 - Links get corrupted after expanding a template in ASP
  • B90714 - Metrics - Value of the metrics disappears after clicking on it.
  • B92729 - Metrics Window - Incorrectly works, if placed on top of the screen.
  • CB57555 - Move to region does not work for nested classes within a region
  • B90899 - Optimize Usings doesn't alphabetize references inside of namespaces
  • B93330 - PasteReplaceWord command works incorrectly, when processing a Nullable data type
  • B92262 - Pasting readonly member variable does not invoke Paste Property template
  • B92011 - Performance problem after right-clicking on a large selected code block
  • B91947 - Performance problems when editing the code
  • B19709 - Position of the generated private declaration is wrong in a form
  • B93332 - Property generation template not always keeps the type of property and backend field synchronized
  • B90666 - References to elements of My.Settings are marked as undeclared
  • B20923 - Replacing a mnemonic with Use Type in Templates removes the last added mnemonic
  • B20312 - Smart Return template places semicolon after brace in property getter that is collapsed on one line
  • B91708 - Templates - The "." template must be expanded only on empty lines.
  • B18689 - Templates aren't working in the HttpHandler source file (*.ashx)
  • S90188 - Templates: "dt", "dr" expand in a variable declaration.
  • B91044 - The context Editor\Clipboard\Implements(System.Collections.IEnumerable) does not work with inferred variable
  • B91632 - Undeclared element is incorrectly reported because of an overloaded operator
  • B90747 - Unhandled exception in DX_XmlLanguage when processing a "script" tag
  • B90532 - Using the 'is' keyword in lambda in variable initialization disables CodeRush
  • B19070 - VB Templates - The "v/" template is incorrectly expanded inside methods.
  • B91068 - VS 2008 crashes with ASP .NET
  • CB51890 - VS team edition for database professionals, SQL not being recognized
  • B91405 - VS2008 100% CPU when selecting method containing xml-literal

DXCore for Visual Studio.NET

  • B30789 - CodeGen: VB - AddHandler/RemoveHandler statements are completely ignored
  • B30778 - CodeGen: VB - Code is generated incorrectly if there is a comment on the same line after a Catch statement
  • B30777 - CodeGen: VB - Code is generated incorrectly if there is a comment on the same line after a Select Case statement
  • B30780 - CodeGen: VB - Code is generated incorrectly if there is a comment on the same line after a Step statement in a For-loop
  • B30779 - CodeGen: VB - Code is generated incorrectly if there is a comment on the same line after an If-Then statement
  • B91342 - IsEventHandler function returns false if the method is handling an event by using AddHandler
  • B91524 - Lockup while opening MS AJAX JavaScript files
  • B30047 - MSVC2008 crashes probably due to Refactor
  • B91392 - Namespace alias causes Visual Studio to crash
  • B19194 - Query ident inside let expression doesn't have correct range set
  • B19793 - TextDocument.Format - "--" characters are added instead of the Caret command after template expansion
  • B92480 - VBCodeGen: Label and OnError statements are not generated.
  • B92374 - VBParser: Until keyword in expression declaration breaks ParseTree.
  • B30007 - VS 2008 crashes when a VB.NET code block with LINQ expressions is selected

Refactor! Free (ASP.NET)

  • B92535 - Move to Code Behind in User Control

Refactor! Free (C++)

  • B91544 - Parser - The source file is parsed incorrectly if it contains a marco that is defined without a semicolon

Refactor! Free (VB.NET)

  • B92787 - Availability - The "Encapsulate field" refactoring isn't available when a field is selected
  • B30143 - Collapsible properties nested inside of regions cause outer regions to be painted without the "+" icon when collapsed
  • B90716 - Extract Method does not declare a variable
  • B30142 - PropertyCollapse - A property isn't collapsed when pressing the Enter key after the "End Property" statement
  • B90058 - The Extract Method refactoring doesn't take into account ByRef argument calls in VB.

Refactor! Pro

  • B91074 - "Combine conditional" refactoring does not produce equivalent code when the block contains a goto statement
  • B91426 - "Inline Macro" - Refactoring doesn't preserve whitespace.
  • B91427 - "Inline Macro" - Refactoring isn't available in a macro with parameters.
  • B90304 - "Introduce Local" - Refactoring works incorrectly with const-pointer.
  • B90303 - "Introduce Local" - Refactoring works incorrectly with const-reference type.
  • B90434 - "Move Initialization" - Refactoring works incorrectly with template arguments.
  • B90214 - "Move Method" on destructor in C++ creates invalid code
  • AB16890 - "Remove Unused Parameters" - The corresponding header file isn't updated
  • B91540 - "Rename file to match type" - Refactoring triggers a checkout of the file that is under source control, before renaming it
  • B91236 - "Rename Local" - Refactoring has problem with repeated ImplicitVariable in For Each statement.
  • B91428 - "Rename" - Refactoring is not available on a macro call in C++.
  • B91429 - "Rename" - Refactoring is not available on a macro call in C++.
  • B90364 - C++, Create Method Stub - Refactoring is available on a call to macro.
  • B90247 - Can't apply the Create Overload refactoring to a constructor in C++
  • B90218 - Can't Rename local variable
  • B90222 - Can't rename member of anonymous union
  • B90219 - Can't rename static variable in namespace
  • B90223 - Can't rename use of union data member in union member function
  • B91558 - Can't Rename variable whose name is a managed keyword in native C++
  • B91515 - Combine Conditionals - code is lost when conditions are combined
  • B92851 - Compress to Ternary: should use method call "IF" instead "IFF" for VB90.
  • B91200 - Conditional To Case available on non-integral values
  • B91422 - Convert to System Type available in native C++
  • B91191 - Create Backing Store doesn't move field attribute
  • AB16894 - Create Method Stub - The Object type is used for a NULL parameter in a native C++ project
  • AB16908 - Create Method Stub - The refactoring isn't available for a function declared outside a class
  • B130024 - Create Method Stub creates function when stub is invoked via this-> pointer
  • B130023 - Create Method Stub creates function, rather than method
  • B130019 - Create Method Stub don't recognize a call to an existing c'tor
  • B91492 - Create Method Stub not available anymore
  • B130022 - Create Method Stub not available for methods on class imported from namespace
  • B90558 - Create Method Stub should not be available in function parameter list
  • B130027 - Create Method Stub: can't create stub for method invoked via object pointer
  • B90423 - Create Multi-variable Declaration corrupts function pointer
  • B90425 - Create Multi-variable Declaration corrupts pointer to member declaration
  • B19841 - Create overload - The managed code is inserted in a native C++ project
  • B91420 - Create Overload corrupts default argument values
  • B90248 - Create Overload inserts managed code
  • B90246 - Create Overload on pure virtual function inserts managed syntax
  • B90250 - Create Overload on union method doesn't allow arguments to be selected for removal
  • B90252 - Create Setter Method creates invalid setter when field is const
  • B90537 - Create Setter Method generates setter on anonymous union
  • B90519 - Create Setter Method not available for static member
  • B90254 - Create Setter Method on static field doesn't select assignments for replacement
  • B93050 - Declare Field - infers wrong type of method param when in assignment statement
  • B92935 - Declare Local fails when variable is on a single line IF statement in VB
  • B91955 - Declare Local not available on parameter named after type
  • B30354 - Decompose Initializer - Noncompilable code is generated after applying the refactoring within a "select" statement
  • B90268 - Decompose Parameter generates invalid code for fields accessed by a pointer
  • B90269 - Decompose Parameter not available when using const getter methods
  • B91251 - Documentation - Break Apart Parameters is a stub
  • B91252 - Documentation - Compress to Lambda Expression is a stub
  • B91253 - Documentation - Convert Color to HEX is a stub
  • B91254 - Documentation - Convert Color to Named Color is a stub
  • B91255 - Documentation - Convert Color to RGB is a stub
  • B91256 - Documentation - Convert to Auto-implemented Property is a stub
  • B91439 - Documentation - Convert to System Type not documented
  • B91257 - Documentation - Create Backing Store is a stub
  • B91258 - Documentation - Create Method Stub is a stub
  • B91259 - Documentation - Create With Statement is a stub
  • B91260 - Documentation - Decompose Parameter is a stub
  • B91261 - Documentation - Encapsulate Field (read-only) is a stub
  • B91262 - Documentation - Expand Ternary Expression is a stub
  • B91263 - Documentation - Extract Function is a stub
  • B91264 - Documentation - Extract Interface is a stub
  • B91265 - Documentation - Extract String to Resource is a stub
  • B91266 - Documentation - Extract XML Literal to Resource is a stub
  • B91267 - Documentation - Flatten Conditional is incomplete
  • B91269 - Documentation - For to ForEach is a stub
  • B91270 - Documentation - ForEach to For is a stub
  • B91271 - Documentation - Inline Constant is a stub
  • B91272 - Documentation - Inline Format Item is incomplete
  • B91273 - Documentation - Inline Recent Assignment is a stub
  • B91274 - Documentation - Inline Result is a stub
  • B91275 - Documentation - Inline With Statement is a stub
  • B91277 - Documentation - Introduce Alias (replace all) is a stub
  • B91276 - Documentation - Introduce Alias is a stub
  • B91278 - Documentation - Introduce Constant (local) is a stub
  • B91279 - Documentation - Introduce ForEach Action is a stub
  • B91280 - Documentation - Introduce Format Item is a stub
  • B91281 - Documentation - Introduce Parameter Object is a stub
  • B91282 - Documentation - Introduce Result Variable is a stub
  • B91284 - Documentation - Line-up Arguments is a stub
  • B91287 - Documentation - Make Explicit (and Name Anonymous Type) is a stub
  • B91288 - Documentation - Make Explicit is a stub
  • B91289 - Documentation - Make Implicit is a stub
  • B91290 - Documentation - Make Method Static is a stub
  • B91291 - Documentation - Method to Property is a stub
  • B91292 - Documentation - Move Type to File is a stub
  • B91293 - Documentation - Move Type to Namespace is a stub
  • B91294 - Documentation - Name Anonymous Method is a stub
  • B91295 - Documentation - Name Anonymous Type is a stub
  • B91296 - Documentation - Promote to Parameter is a stub
  • B91297 - Documentation - Property to Method is a stub
  • B91298 - Documentation - Reduce Visibility is a stub
  • B91299 - Documentation - Remove Empty Handler is a stub
  • B91300 - Documentation - Remove Parameter is a stub
  • B91301 - Documentation - Remove Private Setter is a stub
  • B91302 - Documentation - Remove Redundant Assignment is a stub
  • B91303 - Documentation - Remove Redundant Conditional is a stub
  • B91304 - Documentation - Remove Setter Guard Clause is a stub
  • B91305 - Documentation - Remove Tag is a stub
  • B91306 - Documentation - Remove Type Qualifier is a stub
  • B91307 - Documentation - Rename File to Match Type is a stub
  • B91308 - Documentation - Rename Type to Match File is a stub
  • B91309 - Documentation - Replace with Alias is a stub
  • B91310 - Documentation - Replace with Constant is a stub
  • B91311 - Documentation - Replace with Local is a stub
  • B91312 - Documentation - Split With Statement is a stub
  • B91313 - Documentation - Use IsNullOrEmpty is a stub
  • B91314 - Documentation - Use String.Compare is a stub
  • B91315 - Documentation - Use String.Format is a stub
  • B91316 - Documentation - Use StringBuilder is a stub
  • B91317 - Documentation - Using to Try/Finally is a stub
  • B91324 - Documentation - Visual Elements / Smart Tags refer to a non-existing options page
  • B91319 - Documentation - Widen Scope (promote constant) is a stub
  • B91320 - Documentation - Widen Scope (promote to field) is a stub
  • B91318 - Documentation - Widen Scope is a stub
  • B90298 - Documentation for Introduce Setter Guard Clause doesn't list applicability
  • B91283 - Documentation -Introduce Using Statement is a stub
  • B91286 - Documentation -Lock to Try/Finally is a stub
  • B91981 - Error renaming Asp Server Control in Web Application Project
  • B20946 - Expand Lambda Expression produces delegate that returns a value -- even though the delegate type is void
  • B91206 - Extract Function on statement in const member function creates invalid code
  • B90551 - Extract Method behavior listed as Extract Function on refactor menu
  • B91528 - Extract Method creates code that is not compiled
  • B91556 - Extract Method creates invalid code
  • B92396 - Extract method fails when double angle quote characters are in selection
  • B91432 - Extract Method generates invalid code (.NET syntax/spurious reference)
  • B91431 - Extract Method generates invalid code (loses const qualifier)
  • B92335 - Extracting a usercontrol in a web application project produces an error
  • B90928 - Flatten conditional should not be available when ElseIf is present
  • B19769 - IL does not support VB XML Literal operators
  • B90422 - Incorrect refactoring "Multi-variable Declaration" work with template arguments of C++ types.
  • B90572 - Inline Recent Assignment not available for pointer to member
  • B90284 - Inline Result not available when function returns pointer to member
  • B90570 - Inline Temp not available for pointer to member in native C++
  • B90566 - Inline Temp not available on pointer to function in native C++
  • B93788 - Introduce Constant (local) within a Using Block declaration results to incorrect result
  • B91208 - Introduce Constant not available for string constant in native C++
  • B91467 - Introduce Local does not work on XML
  • B91945 - Introduce Local fails if only one string is selected
  • B90302 - Introduce Local inserts managed syntax for expression returning pointer to member
  • B90294 - Introduce Result Variable corrupts return template type
  • B93095 - Introduce Using - Refactoring incorrectly works with angle brackets
  • B91919 - Invoking the Rename File to Match Type refactoring silently fails
  • B19506 - Make Explicit changes "Const" to "Dim" when processing a constant declaration
  • B92749 - Make Explicit fails on shared var
  • B90995 - Make Explicit infers type Object from LINQ to XML query
  • B91174 - Make Explicit refactoring produces incorrect result for generic list
  • B91325 - Messages Log fills up with repeated error message
  • B91457 - Metrics Window - Members aren't displayed if they are declared outside types.
  • B91209 - Move Initialization to Declaration loses const qualifier for pointer to const member
  • B90435 - Move Initialization to Declaration not available for shadowed variable
  • B90520 - Move Method generates invalid code for a method with a function pointer argument
  • B90521 - Move Method generates invalid code for member taking member function pointer argument
  • B19840 - Move Method to Source File - the method body is moved to the wrong file
  • B93405 - Move Method to Source File on destructor creates invalid code
  • B91211 - Move Method to Source File on explicit constructor creates invalid code
  • B91210 - Move Method to Source/Header on explicit constructor loses explicit qualifier
  • B90202 - Move Method to Source/Header on inline destructor creates invalid code
  • B91660 - Name Anonymous Type generates invalid code
  • B18536 - Optimize Namespace References fails in assembly resolution
  • B92992 - Optimize Namespace References fails when lower case letters are used in VB.NET
  • B92238 - Optimize Namespace References misses enums that are used in attributes
  • B91754 - Performance problem when expanding a template
  • B91213 - Promote to Parameter doesn't select all references for renaming
  • B90480 - Reduce Visibility inserts managed syntax in native C++
  • B91214 - Reduce Visibility reduces visibility of sibling members
  • B90481 - Reduce Visibility reduces visibility too much
  • B91352 - Refactor 3 Blank menu
  • B91683 - Refactor fails to process code with comments in some cases
  • B92048 - Refactor! entries repeated in the Context Menu
  • B90708 - Refactor! Pro Becomes Disabled By Comment
  • B91218 - ReFactor!Pro throws System.IO.IOException after creating a directory
  • B90326 - Remove Assignment to Parameters inserts invalid code with pointer to member argument
  • B90318 - Remove Assignment to Parameters loses template argument
  • B92580 - Remove empty handler also removes uncommented lines above the handler
  • B20941 - Remove Empty Handler preview hint draws strikethrough in the wrong file
  • B92774 - Remove Redundant Assignment - Breaks code if var assigned to from function at creation
  • B93100 - Remove Type Qualifier introduces unnecessary Alias
  • B91532 - Remove Type Qualifier(Remove All) introduces alias when it should not
  • B90559 - Remove Unused Parameter should not be available for reference to class used in function
  • B92803 - Rename bug - CRLF chars are inserted when Enter is pressed inside Linked Identifier
  • B92558 - Rename does not find all occurrences
  • AB17232 - Rename doesn't find all references when delegate type is used
  • B91072 - Rename doesn't select all identifier instances
  • B90285 - Rename doesn't select all instances of class name
  • B91437 - Rename Macro - Refactoring doesn't select all uses.
  • B90365 - Rename macro - Refactoring is not available on a call to macro.
  • B90300 - 'Rename Namespace' doesn't rename use of namespace in using statement.
  • B90287 - Rename not available on parameter to function returning pointer to member
  • B90216 - Rename of class changes name of separate class in used namespace
  • B90221 - Rename of local variable renames imported variable that shadows local
  • B90217 - Rename of namespace changes name of class used from another namespace
  • B90309 - Rename of pointer to member not available during a call through pointer to member
  • B90536 - Rename of virtual method in derived class doesn't select method in base class
  • B93759 - Rename on overloaded function incorrectly fixes nested calls
  • B90220 - Renaming class in namespace doesn't rename imported uses of class
  • B91215 - Reorder Parameter not available for a const member function
  • B90562 - Reorder Parameter not available for function with pointer to member parameter
  • B90561 - Reorder Parameters don't update calls to reordered function
  • B91139 - Simplify Expression refactoring corrupts expression
  • B91216 - Split Initialization from Declaration loses const qualifier on pointer to const member
  • B91204 - Split Multi-variable Declaration loses const qualifier on pointer to const member
  • B91423 - Split Multi-variable Declaration loses register qualifier
  • B91421 - Split Multi-variable Declaration loses volatile qualifier
  • B92632 - Surround Tag feature in XML does not complete ending tag if colon is present in name.
  • B93633 - Target picker moves behind region but it should stop before and after region directives
  • B91625 - Text corruption when Backspace is used inside Linked Fields
  • B92529 - The "Create WITH statement" refactoring doesn't work
  • AB16900 - The "Optimize Namespace References" refactoring isn't available in a native C++ project
  • B19884 - The “Microsoft Document Explorer cannot be shown" error is shown when opening product documentation via the start menu
  • B19965 - The System.NullReferenceException is raised when attempting to select the "Painting/Code Preview" options page
  • Q99939 - Use String.Format - VB - Arithmetic Operations aren't processed
  • B91195 - VS 2008 crashes on self referencing class
  • B90564 - Widen Scope (promote to field) corrupts assignment
  • B90477 - Widen Scope (promote to field) corrupts constructor arguments
  • B90476 - Widen Scope (promote to field) corrupts declaration of pointer to const member
  • B90475 - Widen Scope (promote to field) corrupts pointer to member declaration
  • B91217 - Widen Scope (promote to field) not available on reference

CodeRush v3 Evaluation Edition (for Visual Studio 2005, 2008)


Fully Functional installation of DXCore v3 for Visual Studio® 2005, 2008

Refactor!™ Pro v3 Evaluation Edition (for Visual Studio 2005, 2008)

BBS: http://fosoyo.5d6d.com/

posted on 2008-05-08 16:41  fosoyo  阅读(1123)  评论(1编辑  收藏  举报