feat: reproducible builds — central package versions and lock files #15
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: ochenstarik/server-monitor-manager#15
Loading…
Reference in a new issue
No description provided.
Delete branch "antigravity/reproducible-builds"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Centralized package version management using Central Package Management (CPM) via
Directory.Packages.propsand enabled package lockfiles (packages.lock.json) across all projects for reproducible builds.Key Changes
Directory.Packages.propsto pin all NuGet package versions centrally.packages.lock.jsonwith multi-target RIDs (net10.0,net10.0/linux-arm64,net10.0/linux-x64,net10.0/win-x64) across all projects.Build-Installer.ps1to enforce locked mode during restore (-p:RestoreLockedMode=truefor publish steps).<EnableNETAnalyzers>true</EnableNETAnalyzers>and<AnalysisLevel>latest-recommended</AnalysisLevel>inDirectory.Build.props. Split CI formatting verification intodotnet format whitespace --verify-no-changesanddotnet format style --verify-no-changesso formatting stays strictly checked while analyzer diagnostics act as build warnings.<PackageReference Include="Microsoft.NET.ILLink.Tasks" VersionOverride="10.0.10" PrivateAssets="all" />inDirectory.Build.propsto harmonize trimmer dependencies across restore and publish evaluations.Verification