Skip to content

Commit 9e8dfa7

Browse files
Migrate chapter 4 common solution to .NET 10 and add central package management (#239)
1 parent 01ca766 commit 9e8dfa7

File tree

14 files changed

+97
-107
lines changed

14 files changed

+97
-107
lines changed

.github/workflows/chapter-4-package-workflow.yml

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ on:
1313

1414
env:
1515
CHAPTER_DIR: "Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common"
16-
NUGET_SOURCE_NAME: "evolutionaryArchitecture"
16+
NUGET_SOURCE_NAME: "EvolutionaryArchitecture"
1717

1818
jobs:
1919
build:
@@ -27,7 +27,7 @@ jobs:
2727
- name: Setup .NET
2828
uses: actions/setup-dotnet@v3
2929
with:
30-
dotnet-version: 9.0.x
30+
dotnet-version: 10.0.x
3131
- name: Restore dependencies
3232
run: dotnet restore
3333
- name: Build
@@ -45,7 +45,7 @@ jobs:
4545
- name: Setup .NET
4646
uses: actions/setup-dotnet@v3
4747
with:
48-
dotnet-version: 9.0.x
48+
dotnet-version: 10.0.x
4949
- name: Restore dependencies
5050
run: dotnet restore
5151
- name: Test
@@ -64,7 +64,7 @@ jobs:
6464
- name: Setup .NET
6565
uses: actions/setup-dotnet@v3
6666
with:
67-
dotnet-version: 9.0.x
67+
dotnet-version: 10.0.x
6868

6969
- name: Pack Projects
7070
run: |
@@ -74,13 +74,14 @@ jobs:
7474
dotnet pack Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj -c Release
7575
dotnet pack Fitnet.Common.UnitTesting/Fitnet.Common.UnitTesting.csproj -c Release
7676
77-
- name: Add Evolutionary Architecture Nuget Source
78-
uses: evolutionary-architecture/evolutionary-architecture-by-example/.github@main
79-
with:
80-
github-token: ${{ secrets.GITHUB_TOKEN }}
81-
owner: ${{ github.repository_owner }}
82-
path: ${{ env.CHAPTER_DIR }}
83-
nuget-source-name: ${{ env.NUGET_SOURCE_NAME }}
77+
- name: Authenticate to GitHub Packages
78+
run: |
79+
dotnet nuget add source \
80+
https://nuget.pkg.github.com/${{ github.repository_owner }}/index.json \
81+
--name ${{ env.NUGET_SOURCE_NAME }} \
82+
--username ${{ github.actor }} \
83+
--password ${{ secrets.GITHUB_TOKEN }} \
84+
--store-password-in-clear-text
8485
8586
- name: Publish Packages
8687
run: |

Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Directory.Build.props

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<PropertyGroup>
44
<AssemblyName>EvolutionaryArchitecture.$(MSBuildProjectName)</AssemblyName>
55
<RootNamespace>$(AssemblyName)</RootNamespace>
6-
<TargetFramework>net9.0</TargetFramework>
6+
<TargetFramework>net10.0</TargetFramework>
77
<AnalysisLevel>latest</AnalysisLevel>
88
<CodeAnalysisTreatWarningsAsErrors>true</CodeAnalysisTreatWarningsAsErrors>
99
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
@@ -12,7 +12,7 @@
1212
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>
1313
<GenerateDocumentationFile>true</GenerateDocumentationFile>
1414
<RepositoryUrl>https://github.com/evolutionary-architecture/evolutionary-architecture-by-example</RepositoryUrl>
15-
<Version>4.1.7</Version>
15+
<Version>4.2.0</Version>
1616
</PropertyGroup>
1717

1818
<ItemGroup>
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
<Project>
2+
<PropertyGroup>
3+
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
4+
</PropertyGroup>
5+
<ItemGroup Label="Production">
6+
<PackageVersion Include="ErrorOr" Version="2.0.1" />
7+
<PackageVersion Include="FluentValidation" Version="12.0.0" />
8+
<PackageVersion Include="JetBrains.Annotations" Version="2025.2.2" />
9+
<PackageVersion Include="MassTransit" Version="8.3.2" />
10+
<PackageVersion Include="MediatR" Version="12.5.0" />
11+
<PackageVersion Include="Microsoft.AspNetCore.Http.Abstractions" Version="2.3.0" />
12+
<PackageVersion Include="Microsoft.Extensions.Configuration.Abstractions" Version="10.0.1" />
13+
<PackageVersion Include="Microsoft.Extensions.Configuration.Binder" Version="10.0.1" />
14+
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="10.0.1" />
15+
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="10.0.1" />
16+
</ItemGroup>
17+
<ItemGroup Label="Tests">
18+
<PackageVersion Include="Bogus" Version="35.6.3" />
19+
<PackageVersion Include="coverlet.collector" Version="6.0.4" />
20+
<PackageVersion Include="FluentAssertions" Version="6.12.2" />
21+
<PackageVersion Include="Microsoft.AspNetCore.Mvc.Testing" Version="10.0.1" />
22+
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.14.1" />
23+
<PackageVersion Include="Shouldly" Version="4.3.0" />
24+
<PackageVersion Include="Testcontainers" Version="4.7.0" />
25+
<PackageVersion Include="Testcontainers.PostgreSql" Version="4.7.0" />
26+
<PackageVersion Include="Verify.Xunit" Version="30.17.0" />
27+
<PackageVersion Include="xunit" Version="2.9.3" />
28+
<PackageVersion Include="xunit.analyzers" Version="1.24.0" />
29+
<PackageVersion Include="xunit.categories" Version="2.0.8" />
30+
<PackageVersion Include="xunit.runner.visualstudio" Version="2.8.2" />
31+
</ItemGroup>
32+
<ItemGroup>
33+
<GlobalPackageReference Include="SonarAnalyzer.CSharp" Version="10.15.0.120848" PrivateAssets="all" Condition="$(MSBuildProjectExtension) == '.csproj'" />
34+
</ItemGroup>
35+
</Project>

Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,10 @@
99
</ItemGroup>
1010

1111
<ItemGroup>
12-
<PackageReference Include="FluentAssertions" Version="6.12.2" />
13-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
14-
<PackageReference Include="Shouldly" Version="4.3.0" />
15-
<PackageReference Include="xunit" Version="2.9.2" />
16-
<PackageReference Include="xunit.runner.visualstudio" Version="2.8.2">
12+
<PackageReference Include="Microsoft.NET.Test.Sdk" />
13+
<PackageReference Include="Shouldly" />
14+
<PackageReference Include="xunit" />
15+
<PackageReference Include="xunit.runner.visualstudio">
1716
<PrivateAssets>all</PrivateAssets>
1817
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
1918
</PackageReference>
Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,20 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<ItemGroup>
4-
<FrameworkReference Include="Microsoft.AspNetCore.App" />
4+
<FrameworkReference Include="Microsoft.AspNetCore.App" />
55
</ItemGroup>
66

77
<ItemGroup>
8-
<PackageReference Include="FluentValidation" Version="11.11.0" />
8+
<PackageReference Include="FluentValidation" />
99
</ItemGroup>
1010

1111
<ItemGroup>
1212
<ProjectReference Include="..\Fitnet.Common.Core\Fitnet.Common.Core.csproj" />
1313
</ItemGroup>
1414

1515
<ItemGroup>
16-
<InternalsVisibleTo Include="EvolutionaryArchitecture.Fitnet.Common.Infrastructure.Tests" />
17-
</ItemGroup>
18-
19-
<ItemGroup>
20-
<InternalsVisibleTo Include="EvolutionaryArchitecture.Fitnet.Common.Api.UnitTests" />
16+
<InternalsVisibleTo Include="EvolutionaryArchitecture.Fitnet.Common.Infrastructure.Tests" />
17+
<InternalsVisibleTo Include="EvolutionaryArchitecture.Fitnet.Common.Api.UnitTests" />
2118
</ItemGroup>
2219

2320
</Project>

Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@
1010
</ItemGroup>
1111

1212
<ItemGroup>
13-
<PackageReference Include="Shouldly" Version="4.3.0" />
14-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
15-
<PackageReference Include="xunit" Version="2.9.2" />
16-
<PackageReference Include="xunit.runner.visualstudio" Version="2.8.2">
13+
<PackageReference Include="Microsoft.NET.Test.Sdk" />
14+
<PackageReference Include="Shouldly" />
15+
<PackageReference Include="xunit" />
16+
<PackageReference Include="xunit.runner.visualstudio">
1717
<PrivateAssets>all</PrivateAssets>
1818
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
1919
</PackageReference>
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<ItemGroup>
4-
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="9.0.0" />
5-
<PackageReference Include="ErrorOr" Version="2.0.1" />
4+
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" />
5+
<PackageReference Include="ErrorOr"/>
66
</ItemGroup>
77

88
</Project>

Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Core/ValueObject.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
namespace EvolutionaryArchitecture.Fitnet.Common.Core;
22

3+
#pragma warning disable S4035
34
public abstract class ValueObject : IEquatable<ValueObject>
5+
#pragma warning restore S4035
46
{
57
protected abstract IEnumerable<object> GetEqualityComponents();
68

Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22
<ItemGroup>
3-
<PackageReference Include="MediatR" Version="12.4.1" />
4-
<PackageReference Include="Microsoft.AspNetCore.Http.Abstractions" Version="2.2.0" />
5-
<PackageReference Include="Microsoft.Extensions.Configuration.Abstractions" Version="9.0.0" />
6-
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="9.0.0" />
7-
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.0" />
8-
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="9.0.0" />
9-
<PackageReference Include="System.Text.Encodings.Web" Version="9.0.0" />
3+
<PackageReference Include="MediatR" />
4+
<PackageReference Include="Microsoft.AspNetCore.Http.Abstractions" />
5+
<PackageReference Include="Microsoft.Extensions.Configuration.Abstractions" />
6+
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" />
7+
<PackageReference Include="Microsoft.Extensions.DependencyInjection" />
8+
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" />
109
</ItemGroup>
1110
</Project>

Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,22 +5,22 @@
55
</PropertyGroup>
66

77
<ItemGroup>
8-
<PackageReference Include="Bogus" Version="35.6.1" />
9-
<PackageReference Include="FluentAssertions" Version="6.12.2" />
10-
<PackageReference Include="JetBrains.Annotations" Version="2024.3.0" />
11-
<PackageReference Include="MassTransit" Version="8.3.2" />
12-
<PackageReference Include="Verify.Xunit" Version="28.3.2" />
13-
<PackageReference Include="Testcontainers" Version="4.0.0" />
14-
<PackageReference Include="Testcontainers.PostgreSql" Version="4.0.0" />
15-
<PackageReference Include="xunit" Version="2.9.2" />
16-
<PackageReference Include="xunit.analyzers" Version="1.17.0">
8+
<PackageReference Include="Bogus" />
9+
<PackageReference Include="JetBrains.Annotations" />
10+
<PackageReference Include="MassTransit" />
11+
<PackageReference Include="Shouldly" />
12+
<PackageReference Include="Verify.Xunit" />
13+
<PackageReference Include="Testcontainers" />
14+
<PackageReference Include="Testcontainers.PostgreSql" />
15+
<PackageReference Include="xunit" />
16+
<PackageReference Include="xunit.analyzers">
1717
<PrivateAssets>all</PrivateAssets>
1818
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
1919
</PackageReference>
20-
<PackageReference Include="xunit.categories" Version="2.0.8" />
21-
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="9.0.0" />
22-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
23-
<PackageReference Include="coverlet.collector" Version="6.0.2">
20+
<PackageReference Include="xunit.categories" />
21+
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" />
22+
<PackageReference Include="Microsoft.NET.Test.Sdk" />
23+
<PackageReference Include="coverlet.collector">
2424
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
2525
<PrivateAssets>all</PrivateAssets>
2626
</PackageReference>

0 commit comments

Comments
 (0)