GuilhermeStracini / apiclient-boilerplate-dotnet

💡 🏗️ A boilerplate API client template for .NET API clients wrappers
https://guilhermestracini.github.io/apiclient-boilerplate-dotnet/
MIT License
4 stars 1 forks source link

[FEATURE] Enable centralized package management in the template repository #256

Open guibranco opened 1 week ago

guibranco commented 1 week ago

To improve package management consistency across projects in the apiclient-boilerplate-dotnet repository, I propose enabling Centralized Package Management. This feature simplifies the process of managing NuGet package versions by defining them in a single Directory.Packages.props file.

Suggested Implementation

  1. Use the central-pkg-converter Tool:
    To streamline the transition to centralized package management, leverage the central-pkg-converter. This tool automates the process of migrating existing .csproj files to use a Directory.Packages.props file.

    Command:

    central-pkg-converter /path/to/project-or-solution
  2. Review and adjust the generated Directory.Packages.props file to ensure consistency and correctness.

  3. Configure the build system (e.g., AppVeyor CI) to support Centralized Package Management.

Example Directory.Packages.props File

<Project>
  <ItemGroup>
    <!-- Example packages -->
    <PackageVersion Include="Newtonsoft.Json" Version="13.0.3" />
    <PackageVersion Include="FluentAssertions" Version="6.11.0" />
    <PackageVersion Include="xunit" Version="2.4.2" />
    <PackageVersion Include="xunit.runner.visualstudio" Version="2.4.5" />
  </ItemGroup>
</Project>

Benefits

Tasks

By adopting centralized package management and automating the migration, we can ensure a smooth transition while reducing maintenance overhead.

gitauto-ai[bot] commented 1 week ago

Click the checkbox below to generate a PR!

@guibranco, You have 3 requests left in this cycle which refreshes on 2024-11-21 09:19:24+00:00. If you have any questions or concerns, please contact us at info@gitauto.ai.

gitauto-ai[bot] commented 1 week ago

Hey, I'm a bit lost here! Not sure which file I should be fixing. Could you give me a bit more to go on? Maybe add some details to the issue or drop a comment with some extra hints? Thanks!

Have feedback or need help? Feel free to email info@gitauto.ai.