Skip to content

Improvements for the deploy windows script.#3680

Open
JaminShanti wants to merge 5 commits intojamulussoftware:mainfrom
JaminShanti:feature/windows_deploy_improvements
Open

Improvements for the deploy windows script.#3680
JaminShanti wants to merge 5 commits intojamulussoftware:mainfrom
JaminShanti:feature/windows_deploy_improvements

Conversation

@JaminShanti
Copy link
Copy Markdown

Windows: Optimize deployment script and remove VSSetup dependency

Short description of changes

This PR modernizes and optimizes the deploy_windows.ps1 script to streamline the build process and eliminate external PowerShell module requirements. Key improvements include:

  • Dependency Reduction: Replaced the VSSetup module with native vswhere.exe calls for locating Visual Studio installations, removing the need for NuGet/Package Provider setup.
  • Build Resilience: Fixed MSBuild argument quoting issues and implemented dynamic PlatformToolset detection (e.g., v143 for VS 2022) to ensure the script works out-of-the-box on newer dev environments.
  • Developer Experience: Added -Skip64Bit and -Skip32Bit flags for targeted debugging of the build pipeline, along with improved logging and registry-based Qt discovery fallbacks.
  • Integrity Check: Added a "Safety Gate" that prevents the NSIS compiler from generating an empty installer if no application binaries were successfully built.

CHANGELOG: Windows: Optimized the deployment script to remove module dependencies and improve build reliability.

Context: Fixes an issue?

This PR improves the local contributor experience on Windows by making the build environment more robust and easier to debug without external dependencies.

Does this change need documentation? What needs to be documented and how?

No user-facing documentation is required. Internal documentation for the new skip flags is handled via the script's param block comments.

Status of this Pull Request

Working implementation.

What is missing until this pull request can be merged?

Verification of the GitHub CI "Autobuild" checks once the PR is opened.

Checklist

  • I've verified that this Pull Request follows the general code principles
  • I tested my code and it does what I want
  • My code follows the style guide
  • I waited some time after this Pull Request was opened and all GitHub checks completed without errors.
  • I've filled all the content above

AUTOBUILD: Please build all targets

@pljones pljones requested a review from Copilot May 7, 2026 15:57
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Modernizes deploy_windows.ps1 to reduce external dependencies (removing VSSetup), improve build resilience on newer Visual Studio toolchains, and add better diagnostics/guardrails during Windows packaging.

Changes:

  • Replaced VSSetup-based VS detection with native vswhere.exe and added dynamic PlatformToolset selection.
  • Added centralized logging, debug/skip toggles, and improved dependency download/caching behavior.
  • Added an installer “safety gate” to prevent producing an empty package when no binaries were built.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread windows/deploy_windows.ps1 Outdated
Comment thread windows/deploy_windows.ps1 Outdated
Comment thread windows/deploy_windows.ps1 Outdated
JaminShanti and others added 4 commits May 7, 2026 21:31
Exiting comment, not mine.

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Sign up for free to 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