Commit upgrade plan
This commit is contained in:
183
.github/upgrades/dotnet-upgrade-plan.md
vendored
Normal file
183
.github/upgrades/dotnet-upgrade-plan.md
vendored
Normal file
@@ -0,0 +1,183 @@
|
||||
# .NET 8.0 Upgrade Plan
|
||||
|
||||
## Execution Steps
|
||||
|
||||
Execute steps below sequentially one by one in the order they are listed.
|
||||
|
||||
1. Validate that an .NET 8.0 SDK required for this upgrade is installed on the machine and if not, help to get it installed.
|
||||
2. Ensure that the SDK version specified in global.json files is compatible with the .NET 8.0 upgrade.
|
||||
3. Upgrade Logging\Logging.vbproj.
|
||||
4. Upgrade Encryption\Encryption.vbproj.
|
||||
5. Upgrade Base\Base.vbproj.
|
||||
6. Upgrade ZooFlow\ZooFlow.vbproj.
|
||||
7. Upgrade Interfaces\Interfaces.vbproj.
|
||||
8. Upgrade Database\Database.vbproj.
|
||||
9. Upgrade Config\Config.vbproj.
|
||||
10. Upgrade Filesystem\Filesystem.vbproj.
|
||||
11. Upgrade Messaging\Messaging.vbproj.
|
||||
12. Upgrade Windream\Windream.vbproj.
|
||||
13. Upgrade Windows\Windows.vbproj.
|
||||
14. Upgrade Patterns\Patterns.vbproj.
|
||||
15. Upgrade License\License.vbproj.
|
||||
16. Upgrade Jobs\Jobs.vbproj.
|
||||
17. Upgrade EDMIAPI\EDMI.API.vbproj.
|
||||
|
||||
## Settings
|
||||
|
||||
This section contains settings and data used by execution steps.
|
||||
|
||||
### Excluded projects
|
||||
|
||||
Keine Projekte ausgeschlossen.
|
||||
|
||||
### Aggregate NuGet packages modifications across all projects
|
||||
|
||||
NuGet packages used across all selected projects or their dependencies that need version update in projects that reference them.
|
||||
|
||||
| Package Name | Current Version | New Version | Description |
|
||||
|:-------------------------------------------|:---------------:|:-----------:|:----------------------------------------------------------------------------|
|
||||
| DigitalData.Modules.Logging | 2.6.5 | | No supported .NET 8 compatible package available; evaluate replacement. |
|
||||
| EntityFramework | 6.4.4 | 6.5.1 | Required newer EF 6.5.1 for .NET 8 compatibility and LTS support. |
|
||||
| EntityFramework.Firebird | 6.4.0 | 10.1.0 | Update to Firebird 10.1.0 for .NET 8 compatibility. |
|
||||
| GdPicture | 14.3.18 | 14.2.100 | Use 14.2.100 as recommended compatible build. |
|
||||
| Microsoft.Identity.Client | 4.55.0 | 4.79.2 | Security vulnerability fix and current MSAL LTS recommendation. |
|
||||
| Microsoft.IdentityModel.Abstractions | 6.22.0 | 8.15.0 | Move to latest IdentityModel LTS version. |
|
||||
| Microsoft.VisualBasic | 10.3.0 | | Functionality provided by .NET 8 framework reference; remove package. |
|
||||
| Newtonsoft.Json | 13.0.3 | 13.0.4 | Bring Newtonsoft.Json to supported patch level. |
|
||||
| S22.Imap | 3.6.0.0 | | No supported .NET 8 compatible package available; evaluate alternative. |
|
||||
| System.Buffers | 4.6.0 | | Functionality provided by .NET 8 framework reference; remove package. |
|
||||
| System.Data.Odbc | 6.0.1 | 8.0.1 | Update to provider version aligned with .NET 8. |
|
||||
| System.Memory | 4.6.0 | | Functionality provided by .NET 8 framework reference; remove package. |
|
||||
| System.Numerics.Vectors | 4.6.0 | | Functionality provided by .NET 8 framework reference; remove package. |
|
||||
| System.Runtime.CompilerServices.Unsafe | 6.1.0 | 6.1.2 | Align with latest patch to match .NET 8 dependencies. |
|
||||
| System.Threading.Tasks.Extensions | 4.5.4 | | Functionality provided by .NET 8 framework reference; remove package. |
|
||||
| System.ValueTuple | 4.5.0 | | Functionality provided by .NET 8 framework reference; remove package. |
|
||||
|
||||
### Project upgrade details
|
||||
|
||||
#### Logging/Logging.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0`.
|
||||
- Convert the project file to SDK-style format.
|
||||
|
||||
#### Encryption/Encryption.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0`.
|
||||
- Convert the project file to SDK-style format.
|
||||
|
||||
#### Base/Base.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0-windows`.
|
||||
- Convert the project file to SDK-style format.
|
||||
|
||||
#### ZooFlow/ZooFlow.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0-windows`.
|
||||
- Convert the project file to SDK-style format.
|
||||
|
||||
#### Interfaces/Interfaces.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0`.
|
||||
- Convert the project file to SDK-style format.
|
||||
|
||||
NuGet packages changes:
|
||||
- Update `GdPicture` from `14.3.18` to `14.2.100` (compatibility recommendation).
|
||||
- Update `Newtonsoft.Json` from `13.0.3` to `13.0.4`.
|
||||
- Update `System.Runtime.CompilerServices.Unsafe` from `6.1.0` to `6.1.2`.
|
||||
- Remove `Microsoft.VisualBasic`, `System.Buffers`, `System.Memory`, `System.Numerics.Vectors`, `System.Threading.Tasks.Extensions`, and `System.ValueTuple` because their APIs are provided by the .NET 8 framework.
|
||||
|
||||
#### Database/Database.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0`.
|
||||
- Convert the project file to SDK-style format.
|
||||
|
||||
NuGet packages changes:
|
||||
- Update `EntityFramework.Firebird` from `6.4.0` to `10.1.0`.
|
||||
- Update `EntityFramework` from `6.4.4` to `6.5.1`.
|
||||
- Update `System.Data.Odbc` from `6.0.1` to `8.0.1`.
|
||||
|
||||
#### Config/Config.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0-windows`.
|
||||
- Convert the project file to SDK-style format.
|
||||
|
||||
NuGet packages changes:
|
||||
- Update `EntityFramework.Firebird` from `6.4.0` to `10.1.0`.
|
||||
- Update `EntityFramework` from `6.4.4` to `6.5.1`.
|
||||
- Update `System.Data.Odbc` from `6.0.1` to `8.0.1`.
|
||||
|
||||
#### Filesystem/Filesystem.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0`.
|
||||
- Convert the project file to SDK-style format.
|
||||
|
||||
#### Messaging/Messaging.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0-windows`.
|
||||
- Convert the project file to SDK-style format.
|
||||
|
||||
NuGet packages changes:
|
||||
- `DigitalData.Modules.Logging` 2.6.5 has no supported .NET 8 version; evaluate migrating to an updated logging package.
|
||||
- `S22.Imap` 3.6.0.0 has no supported .NET 8 version; evaluate replacement.
|
||||
- Update `Microsoft.Identity.Client` from `4.55.0` to `4.79.2` (security fix).
|
||||
- Update `Microsoft.IdentityModel.Abstractions` from `6.22.0` to `8.15.0`.
|
||||
|
||||
#### Windream/Windream.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0`.
|
||||
- Convert the project file to SDK-style format.
|
||||
|
||||
NuGet packages changes:
|
||||
- `DigitalData.Modules.Logging` 2.6.5 has no supported .NET 8 version; evaluate migrating to an updated logging package.
|
||||
|
||||
#### Windows/Windows.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0-windows`.
|
||||
- Convert the project file to SDK-style format.
|
||||
|
||||
NuGet packages changes:
|
||||
- `DigitalData.Modules.Logging` 2.6.5 has no supported .NET 8 version; evaluate migrating to an updated logging package.
|
||||
|
||||
#### Patterns/Patterns.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0-windows`.
|
||||
- Convert the project file to SDK-style format.
|
||||
|
||||
NuGet packages changes:
|
||||
- `DigitalData.Modules.Logging` 2.6.5 has no supported .NET 8 version; evaluate migrating to an updated logging package.
|
||||
|
||||
#### License/License.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0`.
|
||||
- Convert the project file to SDK-style format.
|
||||
|
||||
#### Jobs/Jobs.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0`.
|
||||
- Convert the project file to SDK-style format.
|
||||
|
||||
NuGet packages changes:
|
||||
- Update `GdPicture` from `14.3.18` to `14.2.100`.
|
||||
- Update `Newtonsoft.Json` from `13.0.3` to `13.0.4`.
|
||||
- Update `System.Runtime.CompilerServices.Unsafe` from `6.1.0` to `6.1.2`.
|
||||
- Remove `Microsoft.VisualBasic`, `System.Buffers`, `System.Memory`, `System.Numerics.Vectors`, `System.Threading.Tasks.Extensions`, and `System.ValueTuple` because their APIs are provided by the .NET 8 framework.
|
||||
|
||||
#### EDMIAPI/EDMI.API.vbproj modifications
|
||||
|
||||
Project properties changes:
|
||||
- Target framework should be changed from `.NETFramework,Version=v4.6.2` to `net8.0`.
|
||||
- Convert the project file to SDK-style format.
|
||||
Reference in New Issue
Block a user