fix(deps): restore BudgetMe package build - #2
Merged
Conversation
Remove the unused MySql.Data dependency chain and stale imports from the WinForms project because the app only uses System.Data.SqlClient for LocalDB access. Keep only the packages required by the designer controls, remove obsolete binding redirects, and stop the project from copying LocalDB database files that are intentionally not committed. This lets NuGet restore CircularProgressBar and WinFormAnimation cleanly and allows the Debug build to complete from a clean checkout.
deaneeth
marked this pull request as ready for review
July 2, 2026 18:33
There was a problem hiding this comment.
Pull request overview
This pull request restores reliable NuGet restore and solution build for the BudgetMe WinForms (.NET Framework 4.7.2) project by removing unused/stale dependency references (MySQL + transitive chain) and related dead code/config entries that were causing restore/build/designer failures.
Changes:
- Removed
MySql.Data(and related transitive package references) frompackages.configand assembly references fromBudgetMe.csproj. - Removed stale
using MySql.Data.MySqlClient;/Org.BouncyCastle.Utilitiesimports from several WinForms source files. - Removed obsolete binding redirects and deleted
.mdf/.ldf“Content” items from the project file to avoid build breaks due to missing, intentionally-untracked database files.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| BudgetMe/Transact.cs | Removes unused MySQL client import to align code with SQL Server LocalDB usage. |
| BudgetMe/packages.config | Drops unused packages; keeps only designer-required UI packages. |
| BudgetMe/Form1.cs | Removes unused MySQL client import. |
| BudgetMe/DebtTransact.cs | Removes unused MySQL client import (SQL Client remains). |
| BudgetMe/DailyTracker.cs | Removes unused MySQL client import. |
| BudgetMe/BudgetMe.csproj | Removes stale assembly references and missing LocalDB content items; retains required UI control references. |
| BudgetMe/App.config | Removes obsolete binding redirects (project has no remaining dependency needing them). |
| BudgetMe/AllDash.cs | Removes unused MySQL and BouncyCastle imports. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes the restore/build failure reported in #1 by removing stale dependency references that the application does not use.
Changes Made
MySql.Dataand its transitive package chain fromBudgetMe.csprojandpackages.config.MySql.Data.MySqlClientandOrg.BouncyCastle.Utilitiesimports from WinForms source files.CircularProgressBarandWinFormAnimation..mdf/.ldfcontent items from the project file, matching the README statement that database files are not committed.Why This Change
The app uses
System.Data.SqlClientagainst SQL Server LocalDB, not MySQL. KeepingMySql.Data 9.0.0in a .NET Framework 4.7.2packages.configproject pulled in unnecessary dependency baggage and made restore fragile. Once restore failed,CircularProgressBarwas not available to the designer compile, producing the missing namespace errors from the issue.The project also referenced LocalDB database files that are intentionally absent from the repository, which blocked a clean build after package restore was fixed.
Closes #1.
Testing
nuget restore BudgetMe.sln -Verbosity detailedMSBuild.exe BudgetMe.sln /t:Rebuild /p:Configuration=Debug /p:Platform="Any CPU" /p:FrameworkPathOverride="E:\Projects\_codex_nuget_cache\Microsoft.NETFramework.ReferenceAssemblies.net472\build\.NETFramework\v4.7.2" /v:minimal /nologoCircularProgressBar.2.8.0.16andWinFormAnimation.1.6.0.4.Notes
Verification redirected temp paths to E: and used Microsoft.NETFramework.ReferenceAssemblies.net472 for local compile verification. A normal Visual Studio setup with the 4.7.2 developer pack should not need that override.