feat: Updates to .NET 8. (#1542)
### Breaking Changes - Updating to .NET 8 - Required O/S's have slightly changed.
This commit is contained in:
parent
bd79509400
commit
2e4668dbe5
22 changed files with 56 additions and 42 deletions
|
|
@ -3,7 +3,7 @@
|
|||
"isRoot": true,
|
||||
"tools": {
|
||||
"modernuoschemagenerator": {
|
||||
"version": "2.7.2",
|
||||
"version": "2.8.0",
|
||||
"commands": [
|
||||
"ModernUOSchemaGenerator"
|
||||
]
|
||||
|
|
|
|||
14
.github/workflows/build-test.yml
vendored
14
.github/workflows/build-test.yml
vendored
|
|
@ -23,10 +23,10 @@ jobs:
|
|||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0 # avoid shallow clone so nbgv can do its work.
|
||||
- name: Setup .NET 7
|
||||
- name: Setup .NET 8
|
||||
uses: actions/setup-dotnet@v3
|
||||
with:
|
||||
dotnet-version: 7.0.x
|
||||
dotnet-version: 8.0.x
|
||||
- name: Build
|
||||
run: ./publish.cmd Release
|
||||
- name: Migration Changes
|
||||
|
|
@ -45,12 +45,18 @@ jobs:
|
|||
- container: ubuntu:jammy
|
||||
name: Ubuntu 22
|
||||
packageManager: apt
|
||||
- container: ubuntu:focal
|
||||
name: Ubuntu 20
|
||||
packageManager: apt
|
||||
- container: debian:bookworm
|
||||
name: Debian 12
|
||||
packageManager: apt
|
||||
- container: debian:bullseye
|
||||
name: Debian 11
|
||||
packageManager: apt
|
||||
- container: fedora:39
|
||||
name: Fedora 39
|
||||
packageManager: dnf
|
||||
- container: fedora:38
|
||||
name: Fedora 38
|
||||
packageManager: dnf
|
||||
|
|
@ -77,10 +83,10 @@ jobs:
|
|||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0 # avoid shallow clone so nbgv can do its work.
|
||||
- name: Setup .NET 7
|
||||
- name: Setup .NET 8
|
||||
uses: actions/setup-dotnet@v3
|
||||
with:
|
||||
dotnet-version: 7.0.x
|
||||
dotnet-version: 8.0.x
|
||||
- name: Build
|
||||
run: ./publish.sh Release
|
||||
- name: Test
|
||||
|
|
|
|||
4
.github/workflows/create-release.yml
vendored
4
.github/workflows/create-release.yml
vendored
|
|
@ -14,10 +14,10 @@ jobs:
|
|||
with:
|
||||
fetch-depth: 0 # avoid shallow clone so nbgv can do its work.
|
||||
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
|
||||
- name: Setup .NET 7
|
||||
- name: Setup .NET 8
|
||||
uses: actions/setup-dotnet@v3
|
||||
with:
|
||||
dotnet-version: 7.0.x
|
||||
dotnet-version: 8.0.x
|
||||
- name: Install NGBV
|
||||
uses: dotnet/nbgv@master
|
||||
id: nbgv
|
||||
|
|
|
|||
|
|
@ -4,8 +4,8 @@
|
|||
<Authors>Kamron Batman</Authors>
|
||||
<Company>ModernUO</Company>
|
||||
<Copyright>2019-2023</Copyright>
|
||||
<TargetFramework>net7.0</TargetFramework>
|
||||
<LangVersion>11</LangVersion>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<LangVersion>12</LangVersion>
|
||||
<PublicRelease>true</PublicRelease>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<NoWarn>NU1603</NoWarn>
|
||||
|
|
|
|||
|
|
@ -6,7 +6,10 @@
|
|||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
|
||||
<PackageReference Include="xunit" Version="2.6.1" />
|
||||
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.3" />
|
||||
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.3">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<ProjectReference Include="..\Server\Server.csproj" />
|
||||
<ProjectReference Include="..\UOContent\UOContent.csproj" />
|
||||
<DataFiles Include="$(SolutionDir)\Distribution\Data\**" />
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ using System.IO;
|
|||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Text;
|
||||
using Microsoft.Toolkit.HighPerformance;
|
||||
using CommunityToolkit.HighPerformance;
|
||||
using Server;
|
||||
using Server.Buffers;
|
||||
using Server.Text;
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
<Delete Files="..\..\Distribution\$(AssemblyName).runtimeconfig.dev.json" ContinueOnError="true" />
|
||||
<Delete Files="..\..\Distribution\$(AssemblyName).runtimeconfig.json" ContinueOnError="true" />
|
||||
<Delete Files="..\..\Distribution\ModernUO.Serialization.Annotations.dll" ContinueOnError="true" />
|
||||
<Delete Files="..\..\Distribution\Microsoft.Toolkit.HighPerformance.dll" ContinueOnError="true" />
|
||||
<Delete Files="..\..\Distribution\CommunityToolkit.HighPerformance.dll" ContinueOnError="true" />
|
||||
<Delete Files="..\..\Distribution\PollGroup.dll" ContinueOnError="true" />
|
||||
<Delete Files="..\..\Distribution\ref\$(AssemblyName).dll" ContinueOnError="true" />
|
||||
<Delete Files="..\..\Distribution\Serilog.dll" ContinueOnError="true" />
|
||||
|
|
@ -32,12 +32,12 @@
|
|||
<Delete Files="..\..\Distribution\ZLib.Bindings.dll" ContinueOnError="true" />
|
||||
</Target>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.Toolkit.HighPerformance" Version="7.1.2" />
|
||||
<PackageReference Include="CommunityToolkit.HighPerformance" Version="8.2.2" />
|
||||
<PackageReference Include="PollGroup" Version="1.4.3" />
|
||||
<PackageReference Include="Standart.Hash.xxHash.Signed" Version="4.0.5" />
|
||||
<PackageReference Include="Zlib.Bindings" Version="1.11.0" />
|
||||
|
||||
<PackageReference Include="ModernUO.Serialization.Annotations" Version="2.6.0" />
|
||||
<PackageReference Include="ModernUO.Serialization.Annotations" Version="2.8.0" />
|
||||
<PackageReference Include="ModernUO.Serialization.Generator" Version="2.7.2" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ public static class OrdinalStringHelpers
|
|||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public static bool StartsWithOrdinal(this ReadOnlySpan<char> a, char b) =>
|
||||
a.StartsWithOrdinal(new ReadOnlySpan<char>(b));
|
||||
a.StartsWithOrdinal(new ReadOnlySpan<char>(ref b));
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public static bool StartsWithOrdinal(this ReadOnlySpan<char> a, ReadOnlySpan<char> b) =>
|
||||
|
|
@ -52,7 +52,7 @@ public static class OrdinalStringHelpers
|
|||
a?.EndsWith(b, StringComparison.Ordinal) == true;
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public static bool EndsWithOrdinal(this ReadOnlySpan<char> a, char b) => a.EndsWithOrdinal(new ReadOnlySpan<char>(b));
|
||||
public static bool EndsWithOrdinal(this ReadOnlySpan<char> a, char b) => a.EndsWithOrdinal(new ReadOnlySpan<char>(ref b));
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public static bool EndsWithOrdinal(this ReadOnlySpan<char> a, ReadOnlySpan<char> b) =>
|
||||
|
|
@ -86,7 +86,7 @@ public static class OrdinalStringHelpers
|
|||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public static int IndexOfOrdinal(this ReadOnlySpan<char> a, char b) =>
|
||||
a.IndexOfOrdinal(new ReadOnlySpan<char>(b));
|
||||
a.IndexOfOrdinal(new ReadOnlySpan<char>(ref b));
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public static int IndexOfOrdinal(this ReadOnlySpan<char> a, ReadOnlySpan<char> b) =>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@ using System.Net.Sockets;
|
|||
using System.Runtime.CompilerServices;
|
||||
using System.Text;
|
||||
using System.Xml;
|
||||
using Microsoft.Toolkit.HighPerformance;
|
||||
using Server.Buffers;
|
||||
using Server.Collections;
|
||||
using Server.Logging;
|
||||
|
|
|
|||
|
|
@ -6,7 +6,10 @@
|
|||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
|
||||
<PackageReference Include="xunit" Version="2.6.1" />
|
||||
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.3" />
|
||||
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.3">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<ProjectReference Include="..\Server\Server.csproj" />
|
||||
<ProjectReference Include="..\Server.Tests\Server.Tests.csproj" />
|
||||
<ProjectReference Include="..\UOContent\UOContent.csproj" />
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ using System.Collections.Generic;
|
|||
using System.IO;
|
||||
using System.Net;
|
||||
using System.Runtime.CompilerServices;
|
||||
using Microsoft.Toolkit.HighPerformance;
|
||||
using CommunityToolkit.HighPerformance;
|
||||
|
||||
namespace Server
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using Microsoft.Toolkit.HighPerformance;
|
||||
using CommunityToolkit.HighPerformance;
|
||||
using Server.Collections;
|
||||
using Server.Engines.Quests.Haven;
|
||||
using Server.Engines.Quests.Necro;
|
||||
|
|
@ -9,6 +9,7 @@ using Server.Engines.Spawners;
|
|||
using Server.Items;
|
||||
using Server.Network;
|
||||
using Server.Utilities;
|
||||
using MemoryExtensions = System.MemoryExtensions;
|
||||
|
||||
namespace Server.Commands
|
||||
{
|
||||
|
|
@ -1266,7 +1267,7 @@ namespace Server.Commands
|
|||
}
|
||||
else
|
||||
{
|
||||
list.m_Params = new string[parms.Count(';') + 1];
|
||||
list.m_Params = new string[MemoryExtensions.Count(parms, ';') + 1];
|
||||
|
||||
indexOf = 0;
|
||||
foreach (var part in parms.Tokenize(';'))
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using Microsoft.Toolkit.HighPerformance;
|
||||
using CommunityToolkit.HighPerformance;
|
||||
using Server.Collections;
|
||||
using Server.Engines.Quests.Haven;
|
||||
using Server.Engines.Quests.Necro;
|
||||
|
|
@ -9,6 +9,7 @@ using Server.Engines.Spawners;
|
|||
using Server.Items;
|
||||
using Server.Network;
|
||||
using Server.Utilities;
|
||||
using MemoryExtensions = System.MemoryExtensions;
|
||||
|
||||
namespace Server.Commands
|
||||
{
|
||||
|
|
@ -1252,7 +1253,7 @@ namespace Server.Commands
|
|||
}
|
||||
else
|
||||
{
|
||||
list.m_Params = new string[parms.Count(';') + 1];
|
||||
list.m_Params = new string[MemoryExtensions.Count(parms, ';') + 1];
|
||||
|
||||
indexOf = 0;
|
||||
foreach (var part in parms.Tokenize(';'))
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
using System.Buffers;
|
||||
using System.Diagnostics;
|
||||
using Microsoft.Toolkit.HighPerformance;
|
||||
using CommunityToolkit.HighPerformance;
|
||||
using Server.Diagnostics;
|
||||
using Server.Engines.Virtues;
|
||||
using Server.Exceptions;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
using System;
|
||||
using System.Text;
|
||||
using Microsoft.Toolkit.HighPerformance;
|
||||
using CommunityToolkit.HighPerformance;
|
||||
using Server.Commands;
|
||||
using Server.Factions;
|
||||
using Server.Gumps;
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@
|
|||
<Delete Files="..\..\Distribution\Assemblies\MailKit.dll" ContinueOnError="true" />
|
||||
<Delete Files="..\..\Distribution\Assemblies\MimeKit.dll" ContinueOnError="true" />
|
||||
<Delete Files="..\..\Distribution\Assemblies\Microsoft.Toolkit.HighPerformance.dll" ContinueOnError="true" />
|
||||
<Delete Files="..\..\Distribution\Assemblies\CommunityToolkit.HighPerformance.dll" ContinueOnError="true" />
|
||||
<Delete Files="..\..\Distribution\Assemblies\Microsoft.Extensions.FileSystemGlobbing.dll" ContinueOnError="true" />
|
||||
<Delete Files="..\..\Distribution\Assemblies\Serilog.dll" ContinueOnError="true" />
|
||||
<Delete Files="..\..\Distribution\Assemblies\Serilog.Sinks.Async.dll" ContinueOnError="true" />
|
||||
|
|
@ -32,13 +33,13 @@
|
|||
<IncludeInPackage>false</IncludeInPackage>
|
||||
</ProjectReference>
|
||||
<PackageReference Include="MailKit" Version="4.3.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.FileSystemGlobbing" Version="7.0.0" />
|
||||
<PackageReference Include="Microsoft.Toolkit.HighPerformance" Version="7.1.2" />
|
||||
<PackageReference Include="Microsoft.Extensions.FileSystemGlobbing" Version="8.0.0" />
|
||||
<PackageReference Include="CommunityToolkit.HighPerformance" Version="8.2.2" />
|
||||
<PackageReference Include="Zlib.Bindings" Version="1.11.0" />
|
||||
<PackageReference Include="Argon2.Bindings" Version="1.16.1" />
|
||||
<PackageReference Include="Zstd.Binaries" Version="1.6.0" />
|
||||
|
||||
<PackageReference Include="ModernUO.Serialization.Annotations" Version="2.6.0" />
|
||||
<PackageReference Include="ModernUO.Serialization.Annotations" Version="2.8.0" />
|
||||
<PackageReference Include="ModernUO.Serialization.Generator" Version="2.7.2" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ using System.Diagnostics;
|
|||
using System.IO;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Threading;
|
||||
using Microsoft.Toolkit.HighPerformance;
|
||||
using CommunityToolkit.HighPerformance;
|
||||
using Server.Compression;
|
||||
using Server.Logging;
|
||||
|
||||
|
|
|
|||
10
README.md
10
README.md
|
|
@ -17,11 +17,11 @@ ModernUO [](https://www.microsoft.com/en-US/evalcenter/evaluate-windows-server-2022)
|
||||

|
||||
[](https://www.debian.org/distrib/)
|
||||
[](https://ubuntu.com/download/server)
|
||||
[](https://www.debian.org/distrib/)
|
||||
[](https://ubuntu.com/download/server)
|
||||
<br />
|
||||
[](https://alpinelinux.org/downloads/)
|
||||
[](https://getfedora.org/en/server/download/)
|
||||
[](https://getfedora.org/en/server/download/)
|
||||
[](https://access.redhat.com/downloads)
|
||||
[](https://www.centos.org/download/)
|
||||
[](https://get.opensuse.org/)
|
||||
|
|
@ -31,14 +31,14 @@ ModernUO [](https://dotnet.microsoft.com/download/dotnet/7.0)
|
||||
[](https://dotnet.microsoft.com/download/dotnet/7.0)
|
||||
|
||||
##### Windows
|
||||
[](https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170#visual-studio-2015-2017-2019-and-2022)
|
||||
|
||||
#### Development
|
||||
[](https://git-scm.com/downloads)
|
||||
[](https://dotnet.microsoft.com/download/dotnet/7.0)
|
||||
[](https://dotnet.microsoft.com/download/dotnet/7.0)
|
||||
|
||||
#### Supported IDEs
|
||||
|
||||
|
|
|
|||
|
|
@ -15,10 +15,10 @@ jobs:
|
|||
|
||||
steps:
|
||||
- task: UseDotNet@2
|
||||
displayName: 'Install .NET 7'
|
||||
displayName: 'Install .NET 8'
|
||||
inputs:
|
||||
packageType: sdk
|
||||
version: '7.0.x'
|
||||
version: '8.0.x'
|
||||
- task: NuGetAuthenticate@1
|
||||
- script: ./publish.cmd Release
|
||||
displayName: 'Build'
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ title: Installation
|
|||
|
||||
=== "Windows"
|
||||
### Prerequisites
|
||||
1. Download and install the latest [.NET 7 SDK](https://dotnet.microsoft.com/download/dotnet/7.0)
|
||||
1. Download and install the latest [.NET 8 SDK](https://dotnet.microsoft.com/download/dotnet/8.0)
|
||||
1. Download and install from [here](https://git-scm.com/download/win)
|
||||
|
||||
!!! Tip
|
||||
|
|
@ -22,7 +22,7 @@ title: Installation
|
|||
|
||||
=== "OSX"
|
||||
### Prerequisites
|
||||
1. Download and install the latest [.NET 7 SDK](https://dotnet.microsoft.com/download/dotnet/7.0).
|
||||
1. Download and install the latest [.NET 8 SDK](https://dotnet.microsoft.com/download/dotnet/8.0).
|
||||
1. Using _terminal_, install [homebrew](https://brew.sh) and git:
|
||||
```bash
|
||||
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
|
||||
|
|
@ -37,7 +37,7 @@ title: Installation
|
|||
|
||||
=== "Linux"
|
||||
### Prerequisites
|
||||
1. Download and install the latest [.NET 7 SDK](https://docs.microsoft.com/en-us/dotnet/core/install/linux).
|
||||
1. Download and install the latest [.NET 8 SDK](https://docs.microsoft.com/en-us/dotnet/core/install/linux).
|
||||
1. Using _bash_, install git:
|
||||
```bash
|
||||
sudo apt update && sudo apt install git
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"sdk": {
|
||||
"version": "7.0.0",
|
||||
"version": "8.0.0",
|
||||
"rollForward": "latestMajor",
|
||||
"allowPrerelease": false
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{
|
||||
"$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json",
|
||||
"version": "0.10.2"
|
||||
"version": "0.11.1"
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue