Simplify project build and stabilize wallpaper history tests#167
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2334a2c89b
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| [Nullable[bool]] $PublishNuget = $false, | ||
| [Nullable[bool]] $PublishGitHub = $false, |
There was a problem hiding this comment.
Do not override publish flags from config
Setting PublishNuget and PublishGitHub to $false by default makes these parameters non-null on every invocation, so the later $null -ne ... checks always pass and Invoke-ProjectBuild is always called with both publish flags forced to false. This silently breaks any workflow that relies on a config file (-ConfigPath) where PublishNuget/PublishGitHub are true, because those config values can no longer take effect unless callers explicitly re-pass :$true on the command line.
Useful? React with 👍 / 👎.
Summary
Build/Build-Project.ps1so it behaves like the OfficeIMO build wrapper and no longer mixes module and tool publishing concernsWallpaperHistoryre-evaluateDESKTOPMANAGER_HISTORY_PATHon each access instead of caching the first resolved pathWallpaperHistorytests by using isolated temp directories and cleaning them up recursivelyWhy
PowerBGInfo is moving toward a more standalone packaging story, so DesktopManager build behavior should stay predictable and narrowly scoped. The history-path change also makes the test suite reliable when the environment variable changes during a run.
Validation
git diff --checkdotnet build Sources\\DesktopManager.slndotnet test Sources\\DesktopManager.Tests\\DesktopManager.Tests.csproj --no-build --filter WallpaperHistoryTestspwsh -NoLogo -NoProfile -File Build\\Build-Project.ps1 -Plan:$true -Build:$false -UpdateVersions:$false