Skip to content

Adopt central package management and LangVersion - #19

Merged
ptr727 merged 0 commit into
developfrom
conformance/central-package-management
Jul 23, 2026
Merged

Adopt central package management and LangVersion#19
ptr727 merged 0 commit into
developfrom
conformance/central-package-management

Conversation

@ptr727

@ptr727ptr727 commented Jul 23, 2026

Copy link
Copy Markdown
Owner

Summary

Issue #14 round-2 step 2 residual - the analyzer enforcement (editorconfig severity line, Directory.Build.props analyzer block, xUnit1051/1030 sweep, CS8625) landed in #17; this PR completes the step with the central build and package configuration the refreshed CODESTYLE carries:

  • Directory.Packages.props (new): ManagePackageVersionsCentrally with every dependency version declared once as a PackageVersion item - 18 packages, alphabetized. The migration script asserted no cross-project version skew existed before merging.
  • Directory.Build.props: adds LangVersion (latest). ManagePackageVersionsCentrally lives in Directory.Packages.props so the whole CPM configuration is in one file.
  • All three csprojs: PackageReference items are versionless; PrivateAssets/IncludeAssets metadata untouched.

This also closes the deferred CPM thread from #18 (CODESTYLE described the target state; the repo now matches it).

Testing

  • Zero-warning / zero-error build under full analyzer enforcement.
  • Full test suite: 324/324 pass. dotnet format style --verify-no-changes and editorconfig-checker clean.

🤖 Generated with Claude Code

CopilotAI review requested due to automatic review settings July 23, 2026 17:10
@codecov

codecovBot commented Jul 23, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 44.96%. Comparing base (cba2eb3) to head (a943300).

Additional details and impacted files
@@ Coverage Diff @@## develop #19 +/- ##
========================================
Coverage 44.96% 44.96% ========================================
Files 25 25 Lines 3398 3398 Branches 259 259 ========================================
Hits 1528 1528 Misses 1824 1824 Partials 46 46 

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

CopilotAI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR brings PhotoCleaner’s build configuration in line with the repository’s documented “central build and package configuration” approach by adopting NuGet Central Package Management (CPM) and setting a repository-wide C# language version via Directory.Build.props.

Changes:

  • Added Directory.Packages.props with centrally declared PackageVersion items and removed per-project package versions from all .csproj files.
  • Updated Directory.Build.props to set LangVersion and enable ManagePackageVersionsCentrally.
  • Kept existing PackageReference metadata (PrivateAssets/IncludeAssets) unchanged while making references versionless.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

Show a summary per file
FileDescription
PhotoCleanerTests/PhotoCleanerTests.csprojRemoves inline package versions to rely on CPM while preserving test-only package metadata.
PhotoCleanerBenchmarks/PhotoCleanerBenchmarks.csprojRemoves inline package versions to rely on CPM.
PhotoCleaner/PhotoCleaner.csprojRemoves inline package versions to rely on CPM for app dependencies.
Directory.Packages.propsIntroduces the central list of package versions for the solution.
Directory.Build.propsSets repo-wide LangVersion and turns on CPM via ManagePackageVersionsCentrally.

Comment threadDirectory.Build.props
CopilotAI review requested due to automatic review settings July 23, 2026 17:13

CopilotAI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.

Comment threadPhotoCleaner/PhotoCleaner.csproj Outdated
Comment threadPhotoCleanerTests/PhotoCleanerTests.csproj Outdated
Comment threadDirectory.Build.props
CopilotAI review requested due to automatic review settings July 23, 2026 17:18

CopilotAI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.

@ptr727
ptr727 merged this pull request into developJul 23, 2026
6 checks passed
@ptr727
ptr727 deleted the conformance/central-package-management branch July 23, 2026 17:23
ptr727 added a commit that referenced this pull request Aug 3, 2026
* Adopt central package management and LangVersion
Issue #14 round-2 step 2 residual (the analyzer enforcement itself
landed in #17):
- Directory.Packages.props: every dependency version declared once as
a PackageVersion item (18 packages, no cross-project skew).
- Directory.Build.props: add ManagePackageVersionsCentrally and
LangVersion.
- All csproj PackageReference items are versionless; PrivateAssets
and IncludeAssets metadata unchanged.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* Move ManagePackageVersionsCentrally into Directory.Packages.props
CODESTYLE names Directory.Packages.props as the file that enables
central package management; keep the whole CPM configuration in one
file.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* Update SQLite bundle comments for central package management
The direct reference overrides the vulnerable transitive; the version
itself lives in Directory.Packages.props.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@ptr727