Release Notes - 2.3


  • 2.3.9-funcrel

    2.3.9-funcrel
    Fixes incorrect call graph links between components that do not reference each
    other, when services are registered in the dependency injection container using
    the runtime types form of AddTransient, AddScoped or AddSingleton. |
    Fixes missing call links for calls made on a value cast to a generic interface,
    Fixes error in finding project files common path πŸ“ 60217
    Deprecates rule: πŸ’Ž 8156 - “Persistent classes should implement GetHashCode() and Equals()” πŸ“ 59315
    Improves the accuracy of the call graph for applications that obtain their dependencies from the dependency injection container itself, through GetRequiredService, GetService or GetServices.
    Improves call-graph accuracy for applications that resolve their dependencies through the Autofac dependency injection container.
    Adds the missing call links towards the implementations of services registered with keys in the dependency injection container (AddKeyedScoped, AddKeyedSingleton, AddKeyedTransient) and resolved by key (GetRequiredKeyedService, GetKeyedService, GetKeyedServices)
    Adds the missing call links towards the implementations of services registered with TryAddTransient, TryAddScoped or TryAddSingleton.
    Improves the diagnosability of missing call graph links in the analysis logs.
    Improves the accuracy of data flow analysis in C# code using nested using blocks
  • 2.3.8-funcrel

    2.3.8-funcrel
    Fixes missing compilation constants in tag DefineConstants of project files when they exists and keep the latest when they are several
    Fixes error in parsing of .Net 10 version in project files
    Fixes missing generated .VB files for hybrid WebApp/WebSite applications
    Fixes same name for aggregated projects of web file for all hybrid projects
    Fixes missing files of shared projects for analysis πŸ“ 59161
    Fixes analysis failure during the extensibility phase πŸ“ 59485
    Improves accuracy of rule: πŸ’Ž 1027032 - Avoid hard-coded network resource names (.NET, VB) πŸ“ 59757
    Adds support for lambda objets
    Adds devirtualization logs for debugging
    Decreases size of json files
  • 2.3.7-funcrel

    2.3.7-funcrel
    Fixes missing relyon link to System.Array object
    Fixes missing json configuration files
    Fixes asmx files with VB code analyzed as C# code πŸ“ 57867
    Fixes missing VB and C# files in analysis of hybrid WebApp/WebSite application πŸ“ 57831
    Fixes infinite loop leading to System.OutOfMemoryException πŸ“ 57287
    Fixes double visit of inline .asmx files
    Fixes missing missing services from inline .asmx files without the Language attribute
    Fixes infinite loop
    Fixes an issue affecting the creation of C# 14 extension member objects, which could be reported as duplicates.
    Fixes an issue affecting the creation of instantiated generic method and class objects with unresolved type arguments, which could be reported as duplicates when the application spans several projects.
    Supports of shared projects (*.shproj , *.projitems)
    Improves DI registration collection and external DB link generation
  • 2.3.6-funcrel

    2.3.6-funcrel
    Fixes missing objects from .aspx files in AspNet WebSite
    Fixes unanalyzed files in hybrid WebApp/WebSite project. πŸ“ 57831
  • 2.3.5-funcrel

    2.3.5-funcrel
    Fixes missing objects from .aspx files in AspNet WebSite
    Fixes crash in linker phase during analysis πŸ“ 58131
    Improves performance by aggregating single-file web pages into language-based projects to reduce Roslyn project count
  • 2.3.4-funcrel

    2.3.4-funcrel
    Adds machine’s Free memory in the measures of message DOTNET.0130
    Adds the PID number with logging information
    Fixes full names of local function
    Fixes analysis crashes from bad values saved
    Fixes stuck analysis caused by exception πŸ“ 54805
    Fixes wrong imports creating resolution conflicts πŸ“ 57765
    Fixes log message DOTNET.0150 with empty object name
    Fixes an issue preventing analyses from completing when using CAST Imaging Express: NuGet incompatibility and excessive memory consumption during external link resolution. πŸ“ 57683
    Improves resolution by adding global imports of VB.Net for sdk-style projects files
    Reduces memory consumption significantly
    Improves devirtualization performance
    Improves memory cleanup at the end of each project analysis
  • 2.3.3-funcrel

    2.3.3-funcrel
    This extension has been withdrawn.
  • 2.3.2-funcrel

    2.3.2-funcrel
    Corrects .NET analysis bookmarks for generic method calls. Improve accuracy of source code locations for called methods.
    Improves .NET analysis troubleshooting by exposing more accurate memory usage information in the logs.
    Clarify DOTNET.0130 memory metrics to help size hardware and understand .NET analyzer memory consumption.
  • 2.3.1-funcrel

    2.3.1-funcrel
    This extension has been withdrawn and is replaced by 2.3.2-funcrel with no change to the content.
  • 2.3.0-funcrel

    2.3.0-funcrel
    Fixes an issue affecting the accuracy of rule: πŸ’Ž 7846 - “Methods that do not use instance fields/methods should be static (.NET)” when using C# 12 primary constructors. πŸ“ 569578
    Adds new support for C# 14 language features.
    Adds new support for .NET 10.
    Adds new support for the null-coalescing assignment operator (??=).
    Adds new support for C# 14 field keyword in property accessors.
    Enhances the configuration of internal library.
    Improves resolution of links from lambda callers to target methods.
    Improves stability when analyzing deeply nested or complex code structures.