Initial Commit after switching from SVN to git
This commit is contained in:
@@ -0,0 +1,461 @@
|
||||
# Projects and dependencies analysis
|
||||
|
||||
This document provides a comprehensive overview of the projects and their dependencies in the context of upgrading to .NETCoreApp,Version=v10.0.
|
||||
|
||||
## Table of Contents
|
||||
|
||||
- [Executive Summary](#executive-Summary)
|
||||
- [Highlevel Metrics](#highlevel-metrics)
|
||||
- [Projects Compatibility](#projects-compatibility)
|
||||
- [Package Compatibility](#package-compatibility)
|
||||
- [API Compatibility](#api-compatibility)
|
||||
- [Aggregate NuGet packages details](#aggregate-nuget-packages-details)
|
||||
- [Top API Migration Challenges](#top-api-migration-challenges)
|
||||
- [Technologies and Features](#technologies-and-features)
|
||||
- [Most Frequent API Issues](#most-frequent-api-issues)
|
||||
- [Projects Relationship Graph](#projects-relationship-graph)
|
||||
- [Project Details](#project-details)
|
||||
|
||||
- [Fuchs\Fuchs.vbproj](#fuchsfuchsvbproj)
|
||||
- [Fuchs_DataService\Fuchs_DataService.vbproj](#fuchs_dataservicefuchs_dataservicevbproj)
|
||||
- [MFR_RESTClient\MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj)
|
||||
- [P:\WebProjectComponents\MT940Parser\MT940Parser\MT940Parser.csproj](#p:webprojectcomponentsmt940parsermt940parsermt940parsercsproj)
|
||||
|
||||
|
||||
## Executive Summary
|
||||
|
||||
### Highlevel Metrics
|
||||
|
||||
| Metric | Count | Status |
|
||||
| :--- | :---: | :--- |
|
||||
| Total Projects | 4 | All require upgrade |
|
||||
| Total NuGet Packages | 75 | 32 need upgrade |
|
||||
| Total Code Files | 69 | |
|
||||
| Total Code Files with Incidents | 26 | |
|
||||
| Total Lines of Code | 10521 | |
|
||||
| Total Number of Issues | 439 | |
|
||||
| Estimated LOC to modify | 358+ | at least 3,4% of codebase |
|
||||
|
||||
### Projects Compatibility
|
||||
|
||||
| Project | Target Framework | Difficulty | Package Issues | API Issues | Est. LOC Impact | Description |
|
||||
| :--- | :---: | :---: | :---: | :---: | :---: | :--- |
|
||||
| [Fuchs\Fuchs.vbproj](#fuchsfuchsvbproj) | net48 | 🔴 High | 29 | 224 | 224+ | Wap, Sdk Style = False |
|
||||
| [Fuchs_DataService\Fuchs_DataService.vbproj](#fuchs_dataservicefuchs_dataservicevbproj) | net48 | 🔴 High | 4 | 108 | 108+ | ClassicDotNetApp, Sdk Style = False |
|
||||
| [MFR_RESTClient\MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | net48 | 🟢 Low | 38 | 26 | 26+ | ClassicWinForms, Sdk Style = False |
|
||||
| [P:\WebProjectComponents\MT940Parser\MT940Parser\MT940Parser.csproj](#p:webprojectcomponentsmt940parsermt940parsermt940parsercsproj) | netstandard2.0;net472 | 🟢 Low | 0 | 0 | | ClassLibrary, Sdk Style = True |
|
||||
|
||||
### Package Compatibility
|
||||
|
||||
| Status | Count | Percentage |
|
||||
| :--- | :---: | :---: |
|
||||
| ✅ Compatible | 43 | 57,3% |
|
||||
| ⚠️ Incompatible | 17 | 22,7% |
|
||||
| 🔄 Upgrade Recommended | 15 | 20,0% |
|
||||
| ***Total NuGet Packages*** | ***75*** | ***100%*** |
|
||||
|
||||
### API Compatibility
|
||||
|
||||
| Category | Count | Impact |
|
||||
| :--- | :---: | :--- |
|
||||
| 🔴 Binary Incompatible | 117 | High - Require code changes |
|
||||
| 🟡 Source Incompatible | 212 | Medium - Needs re-compilation and potential conflicting API error fixing |
|
||||
| 🔵 Behavioral change | 29 | Low - Behavioral changes that may require testing at runtime |
|
||||
| ✅ Compatible | 11865 | |
|
||||
| ***Total APIs Analyzed*** | ***12223*** | |
|
||||
|
||||
## Aggregate NuGet packages details
|
||||
|
||||
| Package | Current Version | Suggested Version | Projects | Description |
|
||||
| :--- | :---: | :---: | :--- | :--- |
|
||||
| BouncyCastle | 1.8.9 | 1.8.9 | [Fuchs.vbproj](#fuchsfuchsvbproj) | NuGet package contains security vulnerability |
|
||||
| BouncyCastle.Cryptography | 2.3.0 | 2.6.2 | [Fuchs.vbproj](#fuchsfuchsvbproj) | NuGet package contains security vulnerability |
|
||||
| HtmlAgilityPack | 1.11.54 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | ✅Compatible |
|
||||
| ImageProcessor | 2.9.1 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | ⚠️NuGet package is incompatible |
|
||||
| ImageProcessor.Plugins.WebP | 1.3.0 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | ⚠️NuGet package is incompatible |
|
||||
| ImageProcessor.Web | 4.12.1 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | ⚠️NuGet package is incompatible |
|
||||
| ImageProcessor.Web.Config | 2.6.0 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | ⚠️NuGet package is incompatible |
|
||||
| jQuery | 3.7.1 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | ✅Compatible |
|
||||
| jQuery.Validation | 1.19.5 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | ✅Compatible |
|
||||
| MailKit | 4.4.0 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | ✅Compatible |
|
||||
| Microsoft.AspNet.Mvc | 5.2.9 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | NuGet package functionality is included with framework reference |
|
||||
| Microsoft.AspNet.Razor | 3.2.9 | | [Fuchs.vbproj](#fuchsfuchsvbproj)<br/>[Fuchs_DataService.vbproj](#fuchs_dataservicefuchs_dataservicevbproj) | NuGet package functionality is included with framework reference |
|
||||
| Microsoft.AspNet.SignalR.Client | 2.4.3 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ✅Compatible |
|
||||
| Microsoft.AspNet.TelemetryCorrelation | 1.0.8 | 1.0.3 | [Fuchs.vbproj](#fuchsfuchsvbproj) | ⚠️NuGet package is incompatible |
|
||||
| Microsoft.AspNet.WebApi | 5.2.9 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| Microsoft.AspNet.WebApi.Client | 5.2.9 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ✅Compatible |
|
||||
| Microsoft.AspNet.WebApi.Core | 5.2.9 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ⚠️NuGet package is incompatible |
|
||||
| Microsoft.AspNet.WebApi.WebHost | 5.2.9 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ⚠️NuGet package is incompatible |
|
||||
| Microsoft.AspNet.WebPages | 3.2.9 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | NuGet package functionality is included with framework reference |
|
||||
| Microsoft.Azure.Services.AppAuthentication | 1.6.2 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ✅Compatible |
|
||||
| Microsoft.Bcl.AsyncInterfaces | 7.0.0 | 10.0.5 | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package upgrade is recommended |
|
||||
| Microsoft.CodeDom.Providers.DotNetCompilerPlatform | 4.1.0 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | NuGet package functionality is included with framework reference |
|
||||
| Microsoft.Data.Edm | 5.8.5 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ✅Compatible |
|
||||
| Microsoft.Data.OData | 5.8.5 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ⚠️NuGet package is deprecated |
|
||||
| Microsoft.Data.Services.Client | 5.8.5 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ✅Compatible |
|
||||
| Microsoft.IdentityModel.Abstractions | 7.0.2 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ⚠️NuGet package is deprecated |
|
||||
| Microsoft.IdentityModel.Clients.ActiveDirectory | 5.3.0 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ⚠️NuGet package is deprecated |
|
||||
| Microsoft.IdentityModel.JsonWebTokens | 7.0.2 | 8.17.0 | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package contains security vulnerability |
|
||||
| Microsoft.IdentityModel.Logging | 7.0.2 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ⚠️NuGet package is deprecated |
|
||||
| Microsoft.IdentityModel.Tokens | 7.0.2 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ⚠️NuGet package is deprecated |
|
||||
| Microsoft.IO.RecyclableMemoryStream | 2.3.2 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | ✅Compatible |
|
||||
| Microsoft.jQuery.Unobtrusive.Validation | 4.0.0 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | ✅Compatible |
|
||||
| Microsoft.NETCore.Platforms | 7.0.4 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| Microsoft.NETCore.Targets | 5.0.0 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ✅Compatible |
|
||||
| Microsoft.Rest.ClientRuntime | 2.3.24 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ⚠️NuGet package is deprecated |
|
||||
| Microsoft.Web.Infrastructure | 2.0.0 | | [Fuchs.vbproj](#fuchsfuchsvbproj)<br/>[Fuchs_DataService.vbproj](#fuchs_dataservicefuchs_dataservicevbproj) | NuGet package functionality is included with framework reference |
|
||||
| Microsoft.WindowsAzure.ConfigurationManager | 3.2.3 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ⚠️NuGet package is incompatible |
|
||||
| MimeKit | 4.4.0 | 4.15.1 | [Fuchs.vbproj](#fuchsfuchsvbproj) | NuGet package contains security vulnerability |
|
||||
| Modernizr | 2.8.3 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | ✅Compatible |
|
||||
| NETStandard.Library | 2.0.3 | | [MT940Parser.csproj](#p:webprojectcomponentsmt940parsermt940parsermt940parsercsproj) | ✅Compatible |
|
||||
| Newtonsoft.Json | 13.0.3 | 13.0.4 | [Fuchs.vbproj](#fuchsfuchsvbproj)<br/>[Fuchs_DataService.vbproj](#fuchs_dataservicefuchs_dataservicevbproj)<br/>[MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package upgrade is recommended |
|
||||
| PDFsharp | 1.50.5147 | 6.2.4 | [Fuchs.vbproj](#fuchsfuchsvbproj) | ⚠️NuGet package is incompatible |
|
||||
| PDFsharp-MigraDoc | 1.50.5147 | 6.2.4 | [Fuchs.vbproj](#fuchsfuchsvbproj) | ⚠️NuGet package is incompatible |
|
||||
| Portable.BouncyCastle | 1.9.0 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | ✅Compatible |
|
||||
| QRCoder | 1.4.3 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | ✅Compatible |
|
||||
| RestSharp | 110.2.0 | 114.0.0 | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package contains security vulnerability |
|
||||
| Spire.PDF | 8.10.5 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | ✅Compatible |
|
||||
| Squid-Box.SevenZipSharp | 1.6.1.23 | | [Fuchs.vbproj](#fuchsfuchsvbproj)<br/>[Fuchs_DataService.vbproj](#fuchs_dataservicefuchs_dataservicevbproj) | ✅Compatible |
|
||||
| System.Buffers | 4.5.1 | | [Fuchs.vbproj](#fuchsfuchsvbproj)<br/>[MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| System.Data.DataSetExtensions | 4.5.0 | | [Fuchs.vbproj](#fuchsfuchsvbproj) | NuGet package functionality is included with framework reference |
|
||||
| System.Diagnostics.DiagnosticSource | 7.0.2 | 10.0.5 | [Fuchs.vbproj](#fuchsfuchsvbproj) | NuGet package upgrade is recommended |
|
||||
| System.Formats.Asn1 | 8.0.0 | 10.0.5 | [Fuchs.vbproj](#fuchsfuchsvbproj) | NuGet package upgrade is recommended |
|
||||
| System.IdentityModel.Tokens.Jwt | 7.0.2 | 8.17.0 | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package contains security vulnerability |
|
||||
| System.IO | 4.3.0 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| System.Memory | 4.5.5 | | [Fuchs.vbproj](#fuchsfuchsvbproj)<br/>[MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| System.Net.Http | 4.3.4 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| System.Numerics.Vectors | 4.5.0 | | [Fuchs.vbproj](#fuchsfuchsvbproj)<br/>[MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| System.Private.Uri | 4.3.2 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ✅Compatible |
|
||||
| System.Runtime | 4.3.1 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| System.Runtime.CompilerServices.Unsafe | 6.0.0 | 6.1.2 | [Fuchs.vbproj](#fuchsfuchsvbproj)<br/>[MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package upgrade is recommended |
|
||||
| System.Runtime.InteropServices.RuntimeInformation | 4.3.0 | | [Fuchs_DataService.vbproj](#fuchs_dataservicefuchs_dataservicevbproj) | NuGet package functionality is included with framework reference |
|
||||
| System.Security.Cryptography.Algorithms | 4.3.1 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| System.Security.Cryptography.Encoding | 4.3.0 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| System.Security.Cryptography.Primitives | 4.3.0 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| System.Security.Cryptography.X509Certificates | 4.3.2 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| System.Spatial | 5.8.5 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ✅Compatible |
|
||||
| System.Text.Encoding | 4.3.0 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| System.Text.Encoding.CodePages | 7.0.0 | 10.0.5 | [Fuchs.vbproj](#fuchsfuchsvbproj) | NuGet package upgrade is recommended |
|
||||
| System.Text.Encodings.Web | 7.0.0 | 10.0.5 | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package upgrade is recommended |
|
||||
| System.Text.Json | 7.0.3 | 10.0.5 | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package upgrade is recommended |
|
||||
| System.Threading.Tasks.Extensions | 4.5.4 | | [Fuchs.vbproj](#fuchsfuchsvbproj)<br/>[MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| System.ValueTuple | 4.5.0 | | [Fuchs.vbproj](#fuchsfuchsvbproj)<br/>[MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | NuGet package functionality is included with framework reference |
|
||||
| TinyMCE | 6.3.1 | 8.3.2 | [Fuchs.vbproj](#fuchsfuchsvbproj) | NuGet package contains security vulnerability |
|
||||
| Topshelf | 4.3.0 | | [Fuchs_DataService.vbproj](#fuchs_dataservicefuchs_dataservicevbproj) | ✅Compatible |
|
||||
| WindowsAzure.ServiceBus | 6.2.2 | | [MFR_RESTClient.vbproj](#mfr_restclientmfr_restclientvbproj) | ⚠️NuGet package is incompatible |
|
||||
|
||||
## Top API Migration Challenges
|
||||
|
||||
### Technologies and Features
|
||||
|
||||
| Technology | Issues | Percentage | Migration Path |
|
||||
| :--- | :---: | :---: | :--- |
|
||||
| ASP.NET Framework (System.Web) | 123 | 34,4% | Legacy ASP.NET Framework APIs for web applications (System.Web.*) that don't exist in ASP.NET Core due to architectural differences. ASP.NET Core represents a complete redesign of the web framework. Migrate to ASP.NET Core equivalents or consider System.Web.Adapters package for compatibility. |
|
||||
| Legacy Configuration System | 48 | 13,4% | Legacy XML-based configuration system (app.config/web.config) that has been replaced by a more flexible configuration model in .NET Core. The old system was rigid and XML-based. Migrate to Microsoft.Extensions.Configuration with JSON/environment variables; use System.Configuration.ConfigurationManager NuGet package as interim bridge if needed. |
|
||||
| GDI+ / System.Drawing | 14 | 3,9% | System.Drawing APIs for 2D graphics, imaging, and printing that are available via NuGet package System.Drawing.Common. Note: Not recommended for server scenarios due to Windows dependencies; consider cross-platform alternatives like SkiaSharp or ImageSharp for new code. |
|
||||
|
||||
### Most Frequent API Issues
|
||||
|
||||
| API | Count | Percentage | Category |
|
||||
| :--- | :---: | :---: | :--- |
|
||||
| T:System.Data.SqlClient.SqlParameter | 37 | 10,3% | Source Incompatible |
|
||||
| M:System.Data.SqlClient.SqlParameter.#ctor(System.String,System.Object) | 35 | 9,8% | Source Incompatible |
|
||||
| T:System.Uri | 23 | 6,4% | Behavioral Change |
|
||||
| P:System.Configuration.ApplicationSettingsBase.Item(System.String) | 16 | 4,5% | Source Incompatible |
|
||||
| F:Microsoft.VisualBasic.Constants.vbNewLine | 11 | 3,1% | Source Incompatible |
|
||||
| T:System.Web.Mvc.HttpStatusCodeResult | 11 | 3,1% | Binary Incompatible |
|
||||
| T:System.Data.SqlClient.SqlConnection | 10 | 2,8% | Source Incompatible |
|
||||
| P:System.Web.Mvc.ContentResult.ContentType | 9 | 2,5% | Binary Incompatible |
|
||||
| P:System.Web.Mvc.ContentResult.Content | 9 | 2,5% | Binary Incompatible |
|
||||
| T:System.Web.Mvc.ContentResult | 9 | 2,5% | Binary Incompatible |
|
||||
| M:System.Web.Mvc.ContentResult.#ctor | 9 | 2,5% | Binary Incompatible |
|
||||
| M:System.Web.Mvc.HttpStatusCodeResult.#ctor(System.Net.HttpStatusCode,System.String) | 9 | 2,5% | Binary Incompatible |
|
||||
| T:System.Web.Mvc.UrlParameter | 9 | 2,5% | Binary Incompatible |
|
||||
| P:System.Web.Mvc.ContentResult.ContentEncoding | 8 | 2,2% | Binary Incompatible |
|
||||
| M:System.Data.SqlClient.SqlConnection.#ctor(System.String) | 7 | 2,0% | Source Incompatible |
|
||||
| T:System.Configuration.ConfigurationManager | 6 | 1,7% | Source Incompatible |
|
||||
| M:System.Uri.#ctor(System.String) | 6 | 1,7% | Behavioral Change |
|
||||
| P:System.Web.HttpPostedFileWrapper.InputStream | 5 | 1,4% | Source Incompatible |
|
||||
| T:System.Configuration.ConnectionStringSettingsCollection | 5 | 1,4% | Source Incompatible |
|
||||
| P:System.Configuration.ConfigurationManager.ConnectionStrings | 5 | 1,4% | Source Incompatible |
|
||||
| T:System.Configuration.ConnectionStringSettings | 5 | 1,4% | Source Incompatible |
|
||||
| P:System.Configuration.ConnectionStringSettingsCollection.Item(System.String) | 5 | 1,4% | Source Incompatible |
|
||||
| P:System.Configuration.ConnectionStringSettings.ConnectionString | 5 | 1,4% | Source Incompatible |
|
||||
| T:System.Web.Routing.Route | 5 | 1,4% | Binary Incompatible |
|
||||
| P:System.IO.DirectoryInfo.FullName | 5 | 1,4% | Binary Incompatible |
|
||||
| P:System.Data.SqlClient.SqlConnection.State | 5 | 1,4% | Source Incompatible |
|
||||
| T:System.Drawing.Bitmap | 4 | 1,1% | Source Incompatible |
|
||||
| T:System.Drawing.Imaging.ImageFormat | 4 | 1,1% | Source Incompatible |
|
||||
| P:System.Web.HttpPostedFile.InputStream | 4 | 1,1% | Source Incompatible |
|
||||
| T:System.Data.SqlClient.SqlCommand | 3 | 0,8% | Source Incompatible |
|
||||
| F:System.Web.Mvc.UrlParameter.Optional | 3 | 0,8% | Binary Incompatible |
|
||||
| T:Microsoft.VisualBasic.MyServices.FileSystemProxy | 3 | 0,8% | Binary Incompatible |
|
||||
| P:Microsoft.VisualBasic.Devices.ServerComputer.FileSystem | 3 | 0,8% | Binary Incompatible |
|
||||
| M:System.Data.SqlClient.SqlCommand.#ctor(System.String) | 2 | 0,6% | Source Incompatible |
|
||||
| P:System.Data.SqlClient.SqlParameter.Value | 2 | 0,6% | Source Incompatible |
|
||||
| M:System.Data.SqlClient.SqlParameter.#ctor(System.String,System.Data.SqlDbType) | 2 | 0,6% | Source Incompatible |
|
||||
| P:System.Drawing.Imaging.ImageFormat.Png | 2 | 0,6% | Source Incompatible |
|
||||
| M:System.TimeSpan.FromMilliseconds(System.Double) | 2 | 0,6% | Source Incompatible |
|
||||
| M:System.Web.Mvc.HttpStatusCodeResult.#ctor(System.Net.HttpStatusCode) | 2 | 0,6% | Binary Incompatible |
|
||||
| T:System.Web.HttpPostedFileWrapper | 2 | 0,6% | Source Incompatible |
|
||||
| P:System.Web.HttpPostedFileWrapper.FileName | 2 | 0,6% | Source Incompatible |
|
||||
| T:System.Web.HttpPostedFile | 2 | 0,6% | Source Incompatible |
|
||||
| P:System.Web.HttpPostedFile.FileName | 2 | 0,6% | Source Incompatible |
|
||||
| T:System.Web.Routing.RouteCollection | 2 | 0,6% | Binary Incompatible |
|
||||
| T:System.Web.Mvc.GlobalFilterCollection | 2 | 0,6% | Binary Incompatible |
|
||||
| T:System.Data.SqlClient.SqlParameterCollection | 2 | 0,6% | Source Incompatible |
|
||||
| P:System.Data.SqlClient.SqlCommand.Parameters | 2 | 0,6% | Source Incompatible |
|
||||
| T:System.Web.Mvc.ViewResult | 1 | 0,3% | Binary Incompatible |
|
||||
| P:System.Configuration.ConfigurationManager.AppSettings | 1 | 0,3% | Source Incompatible |
|
||||
| M:System.Drawing.Bitmap.SetPixel(System.Int32,System.Int32,System.Drawing.Color) | 1 | 0,3% | Source Incompatible |
|
||||
|
||||
## Projects Relationship Graph
|
||||
|
||||
Legend:
|
||||
📦 SDK-style project
|
||||
⚙️ Classic project
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
P1["<b>⚙️ Fuchs.vbproj</b><br/><small>net48</small>"]
|
||||
P2["<b>⚙️ Fuchs_DataService.vbproj</b><br/><small>net48</small>"]
|
||||
P3["<b>⚙️ MFR_RESTClient.vbproj</b><br/><small>net48</small>"]
|
||||
P4["<b>📦 MT940Parser.csproj</b><br/><small>netstandard2.0;net472</small>"]
|
||||
P1 --> P4
|
||||
P1 --> P2
|
||||
P1 --> P3
|
||||
P2 --> P3
|
||||
click P1 "#fuchsfuchsvbproj"
|
||||
click P2 "#fuchs_dataservicefuchs_dataservicevbproj"
|
||||
click P3 "#mfr_restclientmfr_restclientvbproj"
|
||||
click P4 "#p:webprojectcomponentsmt940parsermt940parsermt940parsercsproj"
|
||||
|
||||
```
|
||||
|
||||
## Project Details
|
||||
|
||||
<a id="fuchsfuchsvbproj"></a>
|
||||
### Fuchs\Fuchs.vbproj
|
||||
|
||||
#### Project Info
|
||||
|
||||
- **Current Target Framework:** net48
|
||||
- **Proposed Target Framework:** net10.0
|
||||
- **SDK-style**: False
|
||||
- **Project Kind:** Wap
|
||||
- **Dependencies**: 3
|
||||
- **Dependants**: 0
|
||||
- **Number of Files**: 485
|
||||
- **Number of Files with Incidents**: 15
|
||||
- **Lines of Code**: 6277
|
||||
- **Estimated LOC to modify**: 224+ (at least 3,6% of the project)
|
||||
|
||||
#### Dependency Graph
|
||||
|
||||
Legend:
|
||||
📦 SDK-style project
|
||||
⚙️ Classic project
|
||||
|
||||
```mermaid
|
||||
flowchart TB
|
||||
subgraph current["Fuchs.vbproj"]
|
||||
MAIN["<b>⚙️ Fuchs.vbproj</b><br/><small>net48</small>"]
|
||||
click MAIN "#fuchsfuchsvbproj"
|
||||
end
|
||||
subgraph downstream["Dependencies (3"]
|
||||
P4["<b>📦 MT940Parser.csproj</b><br/><small>netstandard2.0;net472</small>"]
|
||||
P2["<b>⚙️ Fuchs_DataService.vbproj</b><br/><small>net48</small>"]
|
||||
P3["<b>⚙️ MFR_RESTClient.vbproj</b><br/><small>net48</small>"]
|
||||
click P4 "#p:webprojectcomponentsmt940parsermt940parsermt940parsercsproj"
|
||||
click P2 "#fuchs_dataservicefuchs_dataservicevbproj"
|
||||
click P3 "#mfr_restclientmfr_restclientvbproj"
|
||||
end
|
||||
MAIN --> P4
|
||||
MAIN --> P2
|
||||
MAIN --> P3
|
||||
|
||||
```
|
||||
|
||||
### API Compatibility
|
||||
|
||||
| Category | Count | Impact |
|
||||
| :--- | :---: | :--- |
|
||||
| 🔴 Binary Incompatible | 101 | High - Require code changes |
|
||||
| 🟡 Source Incompatible | 117 | Medium - Needs re-compilation and potential conflicting API error fixing |
|
||||
| 🔵 Behavioral change | 6 | Low - Behavioral changes that may require testing at runtime |
|
||||
| ✅ Compatible | 7080 | |
|
||||
| ***Total APIs Analyzed*** | ***7304*** | |
|
||||
|
||||
#### Project Technologies and Features
|
||||
|
||||
| Technology | Issues | Percentage | Migration Path |
|
||||
| :--- | :---: | :---: | :--- |
|
||||
| Legacy Configuration System | 19 | 8,5% | Legacy XML-based configuration system (app.config/web.config) that has been replaced by a more flexible configuration model in .NET Core. The old system was rigid and XML-based. Migrate to Microsoft.Extensions.Configuration with JSON/environment variables; use System.Configuration.ConfigurationManager NuGet package as interim bridge if needed. |
|
||||
| GDI+ / System.Drawing | 14 | 6,3% | System.Drawing APIs for 2D graphics, imaging, and printing that are available via NuGet package System.Drawing.Common. Note: Not recommended for server scenarios due to Windows dependencies; consider cross-platform alternatives like SkiaSharp or ImageSharp for new code. |
|
||||
| ASP.NET Framework (System.Web) | 121 | 54,0% | Legacy ASP.NET Framework APIs for web applications (System.Web.*) that don't exist in ASP.NET Core due to architectural differences. ASP.NET Core represents a complete redesign of the web framework. Migrate to ASP.NET Core equivalents or consider System.Web.Adapters package for compatibility. |
|
||||
|
||||
<a id="fuchs_dataservicefuchs_dataservicevbproj"></a>
|
||||
### Fuchs_DataService\Fuchs_DataService.vbproj
|
||||
|
||||
#### Project Info
|
||||
|
||||
- **Current Target Framework:** net48
|
||||
- **Proposed Target Framework:** net10.0
|
||||
- **SDK-style**: False
|
||||
- **Project Kind:** ClassicDotNetApp
|
||||
- **Dependencies**: 1
|
||||
- **Dependants**: 1
|
||||
- **Number of Files**: 13
|
||||
- **Number of Files with Incidents**: 6
|
||||
- **Lines of Code**: 2281
|
||||
- **Estimated LOC to modify**: 108+ (at least 4,7% of the project)
|
||||
|
||||
#### Dependency Graph
|
||||
|
||||
Legend:
|
||||
📦 SDK-style project
|
||||
⚙️ Classic project
|
||||
|
||||
```mermaid
|
||||
flowchart TB
|
||||
subgraph upstream["Dependants (1)"]
|
||||
P1["<b>⚙️ Fuchs.vbproj</b><br/><small>net48</small>"]
|
||||
click P1 "#fuchsfuchsvbproj"
|
||||
end
|
||||
subgraph current["Fuchs_DataService.vbproj"]
|
||||
MAIN["<b>⚙️ Fuchs_DataService.vbproj</b><br/><small>net48</small>"]
|
||||
click MAIN "#fuchs_dataservicefuchs_dataservicevbproj"
|
||||
end
|
||||
subgraph downstream["Dependencies (1"]
|
||||
P3["<b>⚙️ MFR_RESTClient.vbproj</b><br/><small>net48</small>"]
|
||||
click P3 "#mfr_restclientmfr_restclientvbproj"
|
||||
end
|
||||
P1 --> MAIN
|
||||
MAIN --> P3
|
||||
|
||||
```
|
||||
|
||||
### API Compatibility
|
||||
|
||||
| Category | Count | Impact |
|
||||
| :--- | :---: | :--- |
|
||||
| 🔴 Binary Incompatible | 16 | High - Require code changes |
|
||||
| 🟡 Source Incompatible | 87 | Medium - Needs re-compilation and potential conflicting API error fixing |
|
||||
| 🔵 Behavioral change | 5 | Low - Behavioral changes that may require testing at runtime |
|
||||
| ✅ Compatible | 2684 | |
|
||||
| ***Total APIs Analyzed*** | ***2792*** | |
|
||||
|
||||
#### Project Technologies and Features
|
||||
|
||||
| Technology | Issues | Percentage | Migration Path |
|
||||
| :--- | :---: | :---: | :--- |
|
||||
| ASP.NET Framework (System.Web) | 2 | 1,9% | Legacy ASP.NET Framework APIs for web applications (System.Web.*) that don't exist in ASP.NET Core due to architectural differences. ASP.NET Core represents a complete redesign of the web framework. Migrate to ASP.NET Core equivalents or consider System.Web.Adapters package for compatibility. |
|
||||
| Legacy Configuration System | 23 | 21,3% | Legacy XML-based configuration system (app.config/web.config) that has been replaced by a more flexible configuration model in .NET Core. The old system was rigid and XML-based. Migrate to Microsoft.Extensions.Configuration with JSON/environment variables; use System.Configuration.ConfigurationManager NuGet package as interim bridge if needed. |
|
||||
|
||||
<a id="mfr_restclientmfr_restclientvbproj"></a>
|
||||
### MFR_RESTClient\MFR_RESTClient.vbproj
|
||||
|
||||
#### Project Info
|
||||
|
||||
- **Current Target Framework:** net48
|
||||
- **Proposed Target Framework:** net10.0-windows
|
||||
- **SDK-style**: False
|
||||
- **Project Kind:** ClassicWinForms
|
||||
- **Dependencies**: 0
|
||||
- **Dependants**: 2
|
||||
- **Number of Files**: 13
|
||||
- **Number of Files with Incidents**: 4
|
||||
- **Lines of Code**: 621
|
||||
- **Estimated LOC to modify**: 26+ (at least 4,2% of the project)
|
||||
|
||||
#### Dependency Graph
|
||||
|
||||
Legend:
|
||||
📦 SDK-style project
|
||||
⚙️ Classic project
|
||||
|
||||
```mermaid
|
||||
flowchart TB
|
||||
subgraph upstream["Dependants (2)"]
|
||||
P1["<b>⚙️ Fuchs.vbproj</b><br/><small>net48</small>"]
|
||||
P2["<b>⚙️ Fuchs_DataService.vbproj</b><br/><small>net48</small>"]
|
||||
click P1 "#fuchsfuchsvbproj"
|
||||
click P2 "#fuchs_dataservicefuchs_dataservicevbproj"
|
||||
end
|
||||
subgraph current["MFR_RESTClient.vbproj"]
|
||||
MAIN["<b>⚙️ MFR_RESTClient.vbproj</b><br/><small>net48</small>"]
|
||||
click MAIN "#mfr_restclientmfr_restclientvbproj"
|
||||
end
|
||||
P1 --> MAIN
|
||||
P2 --> MAIN
|
||||
|
||||
```
|
||||
|
||||
### API Compatibility
|
||||
|
||||
| Category | Count | Impact |
|
||||
| :--- | :---: | :--- |
|
||||
| 🔴 Binary Incompatible | 0 | High - Require code changes |
|
||||
| 🟡 Source Incompatible | 8 | Medium - Needs re-compilation and potential conflicting API error fixing |
|
||||
| 🔵 Behavioral change | 18 | Low - Behavioral changes that may require testing at runtime |
|
||||
| ✅ Compatible | 519 | |
|
||||
| ***Total APIs Analyzed*** | ***545*** | |
|
||||
|
||||
#### Project Technologies and Features
|
||||
|
||||
| Technology | Issues | Percentage | Migration Path |
|
||||
| :--- | :---: | :---: | :--- |
|
||||
| Legacy Configuration System | 6 | 23,1% | Legacy XML-based configuration system (app.config/web.config) that has been replaced by a more flexible configuration model in .NET Core. The old system was rigid and XML-based. Migrate to Microsoft.Extensions.Configuration with JSON/environment variables; use System.Configuration.ConfigurationManager NuGet package as interim bridge if needed. |
|
||||
|
||||
<a id="p:webprojectcomponentsmt940parsermt940parsermt940parsercsproj"></a>
|
||||
### P:\WebProjectComponents\MT940Parser\MT940Parser\MT940Parser.csproj
|
||||
|
||||
#### Project Info
|
||||
|
||||
- **Current Target Framework:** netstandard2.0;net472
|
||||
- **Proposed Target Framework:** netstandard2.0;net472;net10.0
|
||||
- **SDK-style**: True
|
||||
- **Project Kind:** ClassLibrary
|
||||
- **Dependencies**: 0
|
||||
- **Dependants**: 1
|
||||
- **Number of Files**: 15
|
||||
- **Number of Files with Incidents**: 1
|
||||
- **Lines of Code**: 1342
|
||||
- **Estimated LOC to modify**: 0+ (at least 0,0% of the project)
|
||||
|
||||
#### Dependency Graph
|
||||
|
||||
Legend:
|
||||
📦 SDK-style project
|
||||
⚙️ Classic project
|
||||
|
||||
```mermaid
|
||||
flowchart TB
|
||||
subgraph upstream["Dependants (1)"]
|
||||
P1["<b>⚙️ Fuchs.vbproj</b><br/><small>net48</small>"]
|
||||
click P1 "#fuchsfuchsvbproj"
|
||||
end
|
||||
subgraph current["MT940Parser.csproj"]
|
||||
MAIN["<b>📦 MT940Parser.csproj</b><br/><small>netstandard2.0;net472</small>"]
|
||||
click MAIN "#p:webprojectcomponentsmt940parsermt940parsermt940parsercsproj"
|
||||
end
|
||||
P1 --> MAIN
|
||||
|
||||
```
|
||||
|
||||
### API Compatibility
|
||||
|
||||
| Category | Count | Impact |
|
||||
| :--- | :---: | :--- |
|
||||
| 🔴 Binary Incompatible | 0 | High - Require code changes |
|
||||
| 🟡 Source Incompatible | 0 | Medium - Needs re-compilation and potential conflicting API error fixing |
|
||||
| 🔵 Behavioral change | 0 | Low - Behavioral changes that may require testing at runtime |
|
||||
| ✅ Compatible | 1582 | |
|
||||
| ***Total APIs Analyzed*** | ***1582*** | |
|
||||
|
||||
#### Project Package References
|
||||
|
||||
| Package | Type | Current Version | Suggested Version | Description |
|
||||
| :--- | :---: | :---: | :---: | :--- |
|
||||
| NETStandard.Library | 🔗*Transitive* | 2.0.3 | | ✅Compatible |
|
||||
|
||||
Reference in New Issue
Block a user