dev-store icon indicating copy to clipboard operation
dev-store copied to clipboard

Add centralized package management

Open thiagolunardi opened this issue 4 months ago • 0 comments

This pull request introduces a new DevStore.Infra.Core building block, refactors the database provider and health check infrastructure to reside under this new project, and standardizes NuGet package versioning across the solution. It also updates project references and namespaces to reflect these changes, and simplifies package references in several .csproj files.

Infrastructure Refactoring and Project Structure:

  • Introduced the new DevStore.Infra.Core project, including its .csproj file with relevant package references for databases and health checks. (src/building-blocks/DevStore.Infra.Core/DevStore.Infra.Core.csproj)
  • Moved and renamed all database provider and health check related classes from DevStore.WebAPI.Core to DevStore.Infra.Core, updating namespaces and references accordingly. (src/building-blocks/DevStore.Infra.Core/DatabaseFlavor/*, src/building-blocks/DevStore.Infra.Core/Configuration/GenericHealthCheck.cs) [1] [2] [3] [4] [5]
  • Updated the solution file and project references to include DevStore.Infra.Core. (DevStore.slnx)

Codebase Consistency and Dependency Management:

  • Centralized NuGet package version management using a new Directory.Packages.props file, and removed explicit version numbers from most .csproj files to reference shared versions. (Directory.Packages.props, multiple .csproj files) [1] [2] [3] [4] [5] [6]
  • Updated all relevant code files and using statements to reference the new infrastructure project and namespaces. (src/building-blocks/DevStore.WebAPI.Core/Configuration/ApiCoreConfig.cs, src/web/DevStore.WebApp.Status/Program.cs) [1] [2] [3]

Minor Cleanups and Improvements:

  • Improved documentation and readability in provider configuration and detection methods. (src/building-blocks/DevStore.Infra.Core/DatabaseFlavor/ProviderConfiguration.cs)
  • Added minor formatting and whitespace improvements in various project files. [1] [2] [3] [4] [5]

These changes collectively modernize the infrastructure layer, improve maintainability, and standardize dependency management throughout the solution.

thiagolunardi avatar Aug 11 '25 09:08 thiagolunardi