From 9eeb74999060028026a1d266d88c53aa7c1c7d08 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 12 Dec 2025 20:31:29 +0000 Subject: [PATCH 1/3] Initial plan From 57b866b4964a567802c5531cdc3281257fe89de0 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 12 Dec 2025 20:40:25 +0000 Subject: [PATCH 2/3] Upgrade Chapter 2 to .NET 10 Co-authored-by: kamilbaczek <74410956+kamilbaczek@users.noreply.github.com> --- .../Prepare/PrepareContractEndpoint.cs | 8 ++---- .../Sign/SignContractEndpoint.cs | 8 ++---- ...230601184153_MakeSignedAtColumnNullable.cs | 2 +- .../20230601184328_AddCustomerIdColumn.cs | 2 +- ...tsAddColumnsToSupportContractExpiration.cs | 2 +- .../Fitnet.Contracts.Infrastructure.csproj | 1 - .../Src/Directory.Build.props | 2 +- .../Src/Directory.Packages.props | 25 ++++++++++--------- .../20230503180337_CreateOfferTable.cs | 2 +- .../Fitnet.Offers.DataAccess.csproj | 1 - .../GetAllPasses/GetAllPassesEndpoint.cs | 8 ++---- .../MarkPassAsExpiredEndpoint.cs | 8 ++---- .../20230503180338_CreatePassesTable.cs | 2 +- .../Fitnet.Passes.DataAccess.csproj | 1 - ...GenerateNewPassesPerMonthReportEndpoint.cs | 8 ++---- 15 files changed, 29 insertions(+), 51 deletions(-) diff --git a/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Api/Prepare/PrepareContractEndpoint.cs b/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Api/Prepare/PrepareContractEndpoint.cs index d4f70c48..8c364057 100644 --- a/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Api/Prepare/PrepareContractEndpoint.cs +++ b/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Api/Prepare/PrepareContractEndpoint.cs @@ -18,12 +18,8 @@ internal static void MapPrepareContract(this IEndpointRouteBuilder app) => app.M return Results.Created($"/{ContractsApiPaths.Prepare}/{contractId}", contractId); }) .ValidateRequest() - .WithOpenApi(operation => new(operation) - { - Summary = "Triggers preparation of a new contract for new or existing customer", - Description = - "This endpoint is used to prepare a new contract for new and existing customers.", - }) + .WithSummary("Triggers preparation of a new contract for new or existing customer") + .WithDescription("This endpoint is used to prepare a new contract for new and existing customers.") .Produces(StatusCodes.Status201Created) .Produces(StatusCodes.Status409Conflict) .Produces(StatusCodes.Status500InternalServerError); diff --git a/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Api/Sign/SignContractEndpoint.cs b/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Api/Sign/SignContractEndpoint.cs index 9296e701..f9c2f747 100644 --- a/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Api/Sign/SignContractEndpoint.cs +++ b/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Api/Sign/SignContractEndpoint.cs @@ -19,12 +19,8 @@ internal static void MapSignContract(this IEndpointRouteBuilder app) => app.MapP return Results.NoContent(); }) .ValidateRequest() - .WithOpenApi(operation => new(operation) - { - Summary = "Signs prepared contract", - Description = - "This endpoint is used to sign prepared contract by customer.", - }) + .WithSummary("Signs prepared contract") + .WithDescription("This endpoint is used to sign prepared contract by customer.") .Produces(StatusCodes.Status204NoContent) .Produces(StatusCodes.Status404NotFound) .Produces(StatusCodes.Status409Conflict) diff --git a/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Database/Migrations/20230601184153_MakeSignedAtColumnNullable.cs b/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Database/Migrations/20230601184153_MakeSignedAtColumnNullable.cs index 8b35b64c..571ebd8b 100644 --- a/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Database/Migrations/20230601184153_MakeSignedAtColumnNullable.cs +++ b/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Database/Migrations/20230601184153_MakeSignedAtColumnNullable.cs @@ -1,7 +1,7 @@ #nullable disable namespace EvolutionaryArchitecture.Fitnet.Contracts.Data.Database.Migrations; -using System; + using Microsoft.EntityFrameworkCore.Migrations; [ExcludeFromCodeCoverage] diff --git a/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Database/Migrations/20230601184328_AddCustomerIdColumn.cs b/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Database/Migrations/20230601184328_AddCustomerIdColumn.cs index cf6a802e..97062368 100644 --- a/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Database/Migrations/20230601184328_AddCustomerIdColumn.cs +++ b/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Database/Migrations/20230601184328_AddCustomerIdColumn.cs @@ -1,7 +1,7 @@ #nullable disable namespace EvolutionaryArchitecture.Fitnet.Contracts.Data.Database.Migrations; -using System; + using Microsoft.EntityFrameworkCore.Migrations; [ExcludeFromCodeCoverage] diff --git a/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Database/Migrations/20230624171216_ContractsAddColumnsToSupportContractExpiration.cs b/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Database/Migrations/20230624171216_ContractsAddColumnsToSupportContractExpiration.cs index 30e31b28..6b90e659 100644 --- a/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Database/Migrations/20230624171216_ContractsAddColumnsToSupportContractExpiration.cs +++ b/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Database/Migrations/20230624171216_ContractsAddColumnsToSupportContractExpiration.cs @@ -1,7 +1,7 @@ #nullable disable namespace EvolutionaryArchitecture.Fitnet.Contracts.Data.Database.Migrations; -using System; + using Microsoft.EntityFrameworkCore.Migrations; [ExcludeFromCodeCoverage] diff --git a/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Fitnet.Contracts.Infrastructure.csproj b/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Fitnet.Contracts.Infrastructure.csproj index 3cac8ac0..99078003 100644 --- a/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Fitnet.Contracts.Infrastructure.csproj +++ b/Chapter-2-modules-separation/Src/Contracts/Fitnet.Contracts.Infrastructure/Fitnet.Contracts.Infrastructure.csproj @@ -6,7 +6,6 @@ - diff --git a/Chapter-2-modules-separation/Src/Directory.Build.props b/Chapter-2-modules-separation/Src/Directory.Build.props index c8d610f8..ffa58689 100644 --- a/Chapter-2-modules-separation/Src/Directory.Build.props +++ b/Chapter-2-modules-separation/Src/Directory.Build.props @@ -3,7 +3,7 @@ EvolutionaryArchitecture.$(MSBuildProjectName) $(AssemblyName) - net9.0 + net10.0 latest true true diff --git a/Chapter-2-modules-separation/Src/Directory.Packages.props b/Chapter-2-modules-separation/Src/Directory.Packages.props index 6f76a4a9..7b14e971 100644 --- a/Chapter-2-modules-separation/Src/Directory.Packages.props +++ b/Chapter-2-modules-separation/Src/Directory.Packages.props @@ -9,23 +9,24 @@ - - - - - - - - - - + + + + + + + + + + + - - + + diff --git a/Chapter-2-modules-separation/Src/Offers/Fitnet.Offers.DataAccess/Database/Migrations/20230503180337_CreateOfferTable.cs b/Chapter-2-modules-separation/Src/Offers/Fitnet.Offers.DataAccess/Database/Migrations/20230503180337_CreateOfferTable.cs index d295823d..73e7f712 100644 --- a/Chapter-2-modules-separation/Src/Offers/Fitnet.Offers.DataAccess/Database/Migrations/20230503180337_CreateOfferTable.cs +++ b/Chapter-2-modules-separation/Src/Offers/Fitnet.Offers.DataAccess/Database/Migrations/20230503180337_CreateOfferTable.cs @@ -1,7 +1,7 @@ #nullable disable namespace SuperSimpleArchitecture.Fitnet.Migrations.OffersPersistenceMigrations; -using System; + using System.Diagnostics.CodeAnalysis; using Microsoft.EntityFrameworkCore.Migrations; diff --git a/Chapter-2-modules-separation/Src/Offers/Fitnet.Offers.DataAccess/Fitnet.Offers.DataAccess.csproj b/Chapter-2-modules-separation/Src/Offers/Fitnet.Offers.DataAccess/Fitnet.Offers.DataAccess.csproj index 4f356b36..9d3296ad 100644 --- a/Chapter-2-modules-separation/Src/Offers/Fitnet.Offers.DataAccess/Fitnet.Offers.DataAccess.csproj +++ b/Chapter-2-modules-separation/Src/Offers/Fitnet.Offers.DataAccess/Fitnet.Offers.DataAccess.csproj @@ -3,7 +3,6 @@ - diff --git a/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.Api/GetAllPasses/GetAllPassesEndpoint.cs b/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.Api/GetAllPasses/GetAllPassesEndpoint.cs index 0e1dfcca..3a9f29e0 100644 --- a/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.Api/GetAllPasses/GetAllPassesEndpoint.cs +++ b/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.Api/GetAllPasses/GetAllPassesEndpoint.cs @@ -19,12 +19,8 @@ internal static void MapGetAllPasses(this IEndpointRouteBuilder app) => return Results.Ok(response); }) - .WithOpenApi(operation => new(operation) - { - Summary = "Returns all passes that exist in the system", - Description = - "This endpoint is used to retrieve all existing passes.", - }) + .WithSummary("Returns all passes that exist in the system") + .WithDescription("This endpoint is used to retrieve all existing passes.") .Produces() .Produces(StatusCodes.Status500InternalServerError); } \ No newline at end of file diff --git a/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.Api/MarkPassAsExpired/MarkPassAsExpiredEndpoint.cs b/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.Api/MarkPassAsExpired/MarkPassAsExpiredEndpoint.cs index 853775c3..388b0861 100644 --- a/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.Api/MarkPassAsExpired/MarkPassAsExpiredEndpoint.cs +++ b/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.Api/MarkPassAsExpired/MarkPassAsExpiredEndpoint.cs @@ -34,12 +34,8 @@ internal static void MapMarkPassAsExpired(this IEndpointRouteBuilder app) => app return Results.NoContent(); }) - .WithOpenApi(operation => new(operation) - { - Summary = "Marks pass which expired", - Description = - "This endpoint is used to mark expired pass. Based on that it is possible to offer new contract to customer.", - }) + .WithSummary("Marks pass which expired") + .WithDescription("This endpoint is used to mark expired pass. Based on that it is possible to offer new contract to customer.") .Produces(StatusCodes.Status204NoContent) .Produces(StatusCodes.Status404NotFound) .Produces(StatusCodes.Status500InternalServerError); diff --git a/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.DataAccess/Database/Migrations/20230503180338_CreatePassesTable.cs b/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.DataAccess/Database/Migrations/20230503180338_CreatePassesTable.cs index 2f854018..2facfb9a 100644 --- a/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.DataAccess/Database/Migrations/20230503180338_CreatePassesTable.cs +++ b/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.DataAccess/Database/Migrations/20230503180338_CreatePassesTable.cs @@ -1,7 +1,7 @@ #nullable disable namespace EvolutionaryArchitecture.Fitnet.Passes.DataAccess.Database; -using System; + using Microsoft.EntityFrameworkCore.Migrations; [ExcludeFromCodeCoverage] diff --git a/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.DataAccess/Fitnet.Passes.DataAccess.csproj b/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.DataAccess/Fitnet.Passes.DataAccess.csproj index 5f2c3f8a..91b8cc60 100644 --- a/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.DataAccess/Fitnet.Passes.DataAccess.csproj +++ b/Chapter-2-modules-separation/Src/Passes/Fitnet.Passes.DataAccess/Fitnet.Passes.DataAccess.csproj @@ -3,7 +3,6 @@ - diff --git a/Chapter-2-modules-separation/Src/Reports/Fitnet.Reports/GenerateNewPassesRegistrationsPerMonthReport/GenerateNewPassesPerMonthReportEndpoint.cs b/Chapter-2-modules-separation/Src/Reports/Fitnet.Reports/GenerateNewPassesRegistrationsPerMonthReport/GenerateNewPassesPerMonthReportEndpoint.cs index ec022e5b..96911ad4 100644 --- a/Chapter-2-modules-separation/Src/Reports/Fitnet.Reports/GenerateNewPassesRegistrationsPerMonthReport/GenerateNewPassesPerMonthReportEndpoint.cs +++ b/Chapter-2-modules-separation/Src/Reports/Fitnet.Reports/GenerateNewPassesRegistrationsPerMonthReport/GenerateNewPassesPerMonthReportEndpoint.cs @@ -18,12 +18,8 @@ internal static void MapGenerateNewPassesRegistrationsPerMonthReport(this IEndpo return Results.Ok(newPassesRegistrationsPerMonthResponse); }) - .WithOpenApi(operation => new(operation) - { - Summary = "Returns report of all passes registered in a month", - Description = - "This endpoint is used to retrieve all passes that were registered in a given month.", - }) + .WithSummary("Returns report of all passes registered in a month") + .WithDescription("This endpoint is used to retrieve all passes that were registered in a given month.") .Produces() .Produces(StatusCodes.Status500InternalServerError); } From 4ad54aeb91246945f9246ea17a7303c4f3f1faf6 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 24 Jan 2026 08:29:29 +0000 Subject: [PATCH 3/3] Update Chapter 2 CI/CD workflow to use .NET 10.0.x Co-authored-by: kamilbaczek <74410956+kamilbaczek@users.noreply.github.com> --- .github/workflows/chapter-2-workflow.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/chapter-2-workflow.yml b/.github/workflows/chapter-2-workflow.yml index 6dcec19c..67ea4cde 100644 --- a/.github/workflows/chapter-2-workflow.yml +++ b/.github/workflows/chapter-2-workflow.yml @@ -25,7 +25,7 @@ jobs: - name: Setup .NET uses: actions/setup-dotnet@v3 with: - dotnet-version: 9.0.x + dotnet-version: 10.0.x - name: Restore dependencies run: dotnet restore - name: Build @@ -43,7 +43,7 @@ jobs: - name: Setup .NET uses: actions/setup-dotnet@v3 with: - dotnet-version: 9.0.x + dotnet-version: 10.0.x - name: Restore dependencies run: dotnet restore - name: Test