Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to .NET 9.0 #47

Merged
merged 3 commits into from
Nov 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: .NET 8.0 Build & Test
name: .NET 9.0 Build & Test

on: [push]

Expand All @@ -9,9 +9,9 @@ jobs:

steps:
- uses: actions/checkout@v1
- name: Setup .NET 8.0
- name: Setup .NET 9.0
uses: actions/setup-dotnet@v1
with:
dotnet-version: '8.0.x'
dotnet-version: '9.0.x'
- name: Test with .NET
run: dotnet test --configuration Release
run: dotnet test Qowaiv.DomainModel.sln --configuration Release
22 changes: 22 additions & 0 deletions .net.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
<None Include="build/**" />
<None Include="design/**" />
<None Include="shared/**" />
</ItemGroup>

<ItemGroup>
<AdditionalFiles Include="example/README.md" />
<AdditionalFiles Include="props/**" />
</ItemGroup>

<ItemGroup>
<PackageReference Include="DotNetProjectFile.Analyzers.Sdk" Version="1.5.0" PrivateAssets="all" />
</ItemGroup>

</Project>
48 changes: 6 additions & 42 deletions Qowaiv.DomainModel.sln
Original file line number Diff line number Diff line change
Expand Up @@ -3,50 +3,13 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.5.33627.172
MinimumVisualStudioVersion = 15.0
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{A4C3C9FF-4EED-41FE-8849-C896429254B5}"
ProjectSection(SolutionItems) = preProject
.editorconfig = .editorconfig
.gitattributes = .gitattributes
.gitignore = .gitignore
LICENSE.md = LICENSE.md
README.md = README.md
ReleaseNotes.md = ReleaseNotes.md
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "props", "props", "{696E5B2C-1F1D-4ACD-BBD4-40594FC7BF11}"
ProjectSection(SolutionItems) = preProject
props\common.props = props\common.props
props\nopackage.props = props\nopackage.props
props\package.props = props\package.props
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Qowaiv.DomainModel", "src\Qowaiv.DomainModel\Qowaiv.DomainModel.csproj", "{18493140-5089-4862-AB96-7813E3A8AAF0}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Qowaiv.DomainModel.UnitTests", "test\Qowaiv.DomainModel.UnitTests\Qowaiv.DomainModel.UnitTests.csproj", "{EDFE004D-ED15-4A2C-AE63-C17245E87D9D}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".github", ".github", "{C036985A-F17D-405A-B3FD-37F30FA154FB}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "workflows", "workflows", "{8E1F869D-393B-4F6C-A3C0-1D1D336F9FA8}"
ProjectSection(SolutionItems) = preProject
.github\workflows\test.yaml = .github\workflows\test.yaml
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{F74D9EF2-39B5-40EB-8C44-1D6015C38D70}"
ProjectSection(SolutionItems) = preProject
build\Qowaiv.snk = build\Qowaiv.snk
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Qowaiv.DomainModel.TestTools", "src\Qowaiv.DomainModel.TestTools\Qowaiv.DomainModel.TestTools.csproj", "{8564A273-F643-4C6B-80E1-5D7DCB7F9767}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "design", "design", "{E9A5D722-EEAA-4BF5-BD0A-BDECA579275E}"
ProjectSection(SolutionItems) = preProject
design\package-icon.png = design\package-icon.png
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Conquer Club example", "Conquer Club example", "{458A70D6-AEA3-45E8-A789-EB5AB3B1600D}"
ProjectSection(SolutionItems) = preProject
example\README.md = example\README.md
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ConquerClub.Domain", "example\ConquerClub.Domain\ConquerClub.Domain.csproj", "{51F553DB-472D-4982-9554-A32810CB4026}"
EndProject
Expand All @@ -56,6 +19,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "specs", "specs", "{EF15A9A7
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Benchmarks", "specs\Benchmarks\Benchmarks.csproj", "{11805EE6-7C12-4E4E-80AA-255EF6E10502}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = ".net", ".net.csproj", "{AEE436DC-36C6-42EC-AE12-31E45FCC2D46}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand Down Expand Up @@ -86,17 +51,16 @@ Global
{11805EE6-7C12-4E4E-80AA-255EF6E10502}.Debug|Any CPU.Build.0 = Debug|Any CPU
{11805EE6-7C12-4E4E-80AA-255EF6E10502}.Release|Any CPU.ActiveCfg = Release|Any CPU
{11805EE6-7C12-4E4E-80AA-255EF6E10502}.Release|Any CPU.Build.0 = Release|Any CPU
{AEE436DC-36C6-42EC-AE12-31E45FCC2D46}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AEE436DC-36C6-42EC-AE12-31E45FCC2D46}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AEE436DC-36C6-42EC-AE12-31E45FCC2D46}.Release|Any CPU.ActiveCfg = Release|Any CPU
{AEE436DC-36C6-42EC-AE12-31E45FCC2D46}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{696E5B2C-1F1D-4ACD-BBD4-40594FC7BF11} = {A4C3C9FF-4EED-41FE-8849-C896429254B5}
{EDFE004D-ED15-4A2C-AE63-C17245E87D9D} = {EF15A9A7-ED24-4621-81F3-0AA3D72DF2ED}
{C036985A-F17D-405A-B3FD-37F30FA154FB} = {A4C3C9FF-4EED-41FE-8849-C896429254B5}
{8E1F869D-393B-4F6C-A3C0-1D1D336F9FA8} = {C036985A-F17D-405A-B3FD-37F30FA154FB}
{F74D9EF2-39B5-40EB-8C44-1D6015C38D70} = {A4C3C9FF-4EED-41FE-8849-C896429254B5}
{E9A5D722-EEAA-4BF5-BD0A-BDECA579275E} = {A4C3C9FF-4EED-41FE-8849-C896429254B5}
{51F553DB-472D-4982-9554-A32810CB4026} = {458A70D6-AEA3-45E8-A789-EB5AB3B1600D}
{2B600398-B1B7-4185-BB42-88CEA7CAF69D} = {458A70D6-AEA3-45E8-A789-EB5AB3B1600D}
{11805EE6-7C12-4E4E-80AA-255EF6E10502} = {EF15A9A7-ED24-4621-81F3-0AA3D72DF2ED}
Expand Down
1 change: 0 additions & 1 deletion ReleaseNotes.md

This file was deleted.

8 changes: 4 additions & 4 deletions example/ConquerClub.Domain/ConquerClub.Domain.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<Import Project="..\..\props\nopackage.props" />

<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<TargetFramework>net9.0</TargetFramework>
<OutputType>library</OutputType>
</PropertyGroup>

Expand All @@ -17,9 +17,9 @@

<ItemGroup>
<PackageReference Include="MathNet.Numerics.Signed" Version="5.0.0" />
<PackageReference Include="Qowaiv" Version="7.0.1" />
<PackageReference Include="Qowaiv.Validation.Fluent" Version="1.0.0" />
<PackageReference Include="Qowaiv.Validation.Messages" Version="0.3.1" />
<PackageReference Include="Qowaiv" Version="7.2.0" />
<PackageReference Include="Qowaiv.Validation.Fluent" Version="2.0.0" />
<PackageReference Include="Qowaiv.Validation.Messages" Version="1.0.0" />
</ItemGroup>

<ItemGroup>
Expand Down
6 changes: 3 additions & 3 deletions example/ConquerClub.UnitTests/ConquerClub.UnitTests.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,18 @@
<Import Project="..\..\props\nopackage.props" />

<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<TargetFramework>net9.0</TargetFramework>
<OutputType>library</OutputType>
</PropertyGroup>

<ItemGroup Label="TestTools">
<PackageReference Include="coverlet.collector" Version="*" PrivateAssets="all" />
<PackageReference Include="coverlet.msbuild" Version="*" PrivateAssets="all" />
<PackageReference Include="FluentAssertions" Version="6.*" />
<PackageReference Include="FluentAssertions" Version="6.12.2" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.*" />
<PackageReference Include="NUnit" Version="4.*" />
<PackageReference Include="NUnit3TestAdapter" Version="*" PrivateAssets="all" />
<PackageReference Include="Qowaiv.Validation.TestTools" Version="0.3.0" />
<PackageReference Include="Qowaiv.Validation.TestTools" Version="1.0.0" />
</ItemGroup>

<!-- We do not want to report on this during a PR/Release build. -->
Expand Down
5 changes: 2 additions & 3 deletions props/package.props
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

<PropertyGroup Label="Package info">
<IsPackable>true</IsPackable>
<EnablePackageValidation>true</EnablePackageValidation>
<EnablePackageValidation>false</EnablePackageValidation>
<PackageIcon>package-icon.png</PackageIcon>
<PackageIconUrl>https://github.com/Qowaiv/qowaiv-domainmodel/blob/master/design/package-icon.png</PackageIconUrl>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
Expand All @@ -18,8 +18,7 @@
<RepositoryType>git</RepositoryType>
<RepositoryUrl>https://github.com/Qowaiv/qowaiv-domainmodel</RepositoryUrl>
<DefineConstants>CONTRACTS_FULL</DefineConstants>
<!-- We ship package versions for obsolete target frameworks too -->
<CheckEolTargetFramework>false</CheckEolTargetFramework>
<CheckEolTargetFramework>true</CheckEolTargetFramework>
</PropertyGroup>

<ItemGroup>
Expand Down
2 changes: 1 addition & 1 deletion specs/Benchmarks/Benchmarks.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net9.0</TargetFramework>
<OutputType>Exe</OutputType>
<Nullable>enable</Nullable>
</PropertyGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@

/// <summary>To mark a method explicitly as impure.</summary>
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)]
[Conditional("CONTRACTS_FULL")]
public sealed class AssertionAttribute : ImpureAttribute { }
//[Conditional("CONTRACTS_FULL")]
internal sealed class AssertionAttribute : ImpureAttribute { }
4 changes: 2 additions & 2 deletions src/Qowaiv.DomainModel.TestTools/Properties/GlobalUsings.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
global using Qowaiv.Validation.Abstractions;
global using Qowaiv.Validation.Abstractions.Diagnostics.Contracts;
global using Qowaiv.Diagnostics.Contracts;
global using Qowaiv.Validation.Abstractions;
global using System;
global using System.Collections;
global using System.Collections.Generic;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,16 @@
<Import Project="..\..\props\package.props" />

<PropertyGroup>
<TargetFrameworks>netstandard2.0;net5.0;net6.0;net7.0;net8.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net8.0;net9.0</TargetFrameworks>
<OutputType>library</OutputType>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<Version>1.0.1</Version>
<Version>2.0.0</Version>
<PackageId>Qowaiv.DomainModel.TestTools</PackageId>
<PackageReleaseNotes>
<![CDATA[
v2.0.0
- Add .NET 9.0 target.
- Drop .NET 5.0, NET6.0, NET7.0 targets. (BREAKING)
v1.0.1
- Publish .NET 8.0. #41
v1.0.0
Expand All @@ -19,6 +23,7 @@ v0.1.0
- Update to Qowaiv.DomainModel v0.1.0.
v0.0.1
- Initial release
]]>
</PackageReleaseNotes>
<PackageValidationBaselineVersion>1.0.0</PackageValidationBaselineVersion>
</PropertyGroup>
Expand All @@ -32,8 +37,9 @@ v0.0.1
</ItemGroup>

<ItemGroup>
<PackageReference Include="FluentAssertions" Version="6.12.0" />
<PackageReference Include="FluentAssertions" Version="6.12.2" />
<PackageReference Include="FluentAssertions.Analyzers" Version="0.*" PrivateAssets="all" />
<PackageReference Include="Qowaiv.Diagnostics.Contracts" Version="2.0.3" PrivateAssets="all" />
</ItemGroup>

</Project>

This file was deleted.

4 changes: 2 additions & 2 deletions src/Qowaiv.DomainModel/Properties/GlobalUsings.cs
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
global using Qowaiv.DomainModel;
global using Qowaiv.Diagnostics.Contracts;
global using Qowaiv.DomainModel;
global using Qowaiv.DomainModel.Collections;
global using Qowaiv.DomainModel.Diagnostics;
global using Qowaiv.DomainModel.Internal;
global using Qowaiv.DomainModel.Reflection;
global using Qowaiv.Validation.Abstractions;
global using Qowaiv.Validation.Abstractions.Diagnostics.Contracts;
global using Qowaiv.Validation.Guarding;
global using Qowaiv.Validation.Messages;
global using System;
Expand Down
20 changes: 13 additions & 7 deletions src/Qowaiv.DomainModel/Qowaiv.DomainModel.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,16 @@
<Import Project="..\..\props\package.props" />

<PropertyGroup>
<TargetFrameworks>netstandard2.0;net5.0;net6.0;net7.0;net8.0</TargetFrameworks>
<TargetFrameworks>netstandard2.0;net8.0;net9.0</TargetFrameworks>
<OutputType>library</OutputType>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<Version>1.1.2</Version>
<Version>2.0.0</Version>
<PackageId>Qowaiv.DomainModel</PackageId>
<PackageReleaseNotes>
<![CDATA[
V2.0.0
- Add .NET 9.0 target.
- Drop .NET 5.0, NET6.0, NET7.0 targets. (BREAKING)
v1.1.2
- Aggregate: PreProcessEvent in applied scope. #44
v1.1.1
Expand All @@ -23,7 +27,7 @@ v1.0.0
- Re-implemented ImmutableCollection. #34 (breaking)
- EventBuffer and Aggregate Version are of type long. #39 (breaking)
- EventBuffer as struct. #34 (breaking)
- EventBuffer implements IReadOnlyCollection&lt;object&gt; and ICollection&lt;object&gt;. #36
- EventBuffer implements IReadOnlyCollection<object> and ICollection<object>. #36
- EventDispatcher without dynamics. #34 (breaking)
- Enable annotations. #31
- Publish .NET 7.0. #29
Expand All @@ -38,11 +42,11 @@ v0.1.5
v0.1.4
- Support optional cancellation token on command handler. #20
v0.1.3
- Introduction of CommandHandler&lt;TReturnType&gt;. #16
- Introduction of CommandHandler<TReturnType>. #16
- Decorate pure methods with attribute. #17
v0.1.2
- Fix issue with iterating EventBuffer.SelectUncommitted multiple times. #16
- Improved API for EventBuffer&lt;T&gt;. #15
- Improved API for EventBuffer<T>. #15
v0.1.1
- Bug fix AggregateRoot.FromStorage. #14
v0.1.0
Expand All @@ -55,6 +59,7 @@ v0.0.2
- Conditionally built Event Collection
v0.0.1
- Initial release
]]>
</PackageReleaseNotes>
<PackageValidationBaselineVersion>1.0.0</PackageValidationBaselineVersion>
</PropertyGroup>
Expand All @@ -77,8 +82,9 @@ v0.0.1

<ItemGroup>
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
<PackageReference Include="Qowaiv.Validation.Abstractions" Version="0.3.0" />
<PackageReference Include="Qowaiv.Validation.Guarding" Version="0.3.1" />
<PackageReference Include="Qowaiv.Diagnostics.Contracts" Version="2.0.3" PrivateAssets="all" />
<PackageReference Include="Qowaiv.Validation.Abstractions" Version="1.0.0" />
<PackageReference Include="Qowaiv.Validation.Guarding" Version="1.0.0" />
</ItemGroup>

</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<Import Project="..\..\props\nopackage.props" />

<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<TargetFramework>net9.0</TargetFramework>
<OutputType>library</OutputType>
</PropertyGroup>

Expand All @@ -12,12 +12,12 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="FluentAssertions" Version="6.*" />
<PackageReference Include="FluentAssertions" Version="6.12.2" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.*" />
<PackageReference Include="NUnit" Version="4.*" />
<PackageReference Include="NUnit3TestAdapter" Version="*" PrivateAssets="all" />
<PackageReference Include="Qowaiv.TestTools" Version="7.0.0" />
<PackageReference Include="Qowaiv.Validation.TestTools" Version="0.3.0" />
<PackageReference Include="Qowaiv.TestTools" Version="7.2.0" />
<PackageReference Include="Qowaiv.Validation.TestTools" Version="1.0.0" />
</ItemGroup>

<ItemGroup Label="Analyzers">
Expand Down
Loading