Skip to content

feat: windows implementation#19

Draft
ReenigneArcher wants to merge 5 commits into
masterfrom
feat/windows-implementation
Draft

feat: windows implementation#19
ReenigneArcher wants to merge 5 commits into
masterfrom
feat/windows-implementation

Conversation

@ReenigneArcher

Copy link
Copy Markdown
Member

Description

Windows implementation.

Screenshot

Issues Fixed or Closed

Roadmap Issues

Type of Change

  • feat: New feature (non-breaking change which adds functionality)
  • fix: Bug fix (non-breaking change which fixes an issue)
  • docs: Documentation only changes
  • style: Changes that do not affect the meaning of the code (white-space, formatting, missing semicolons, etc.)
  • refactor: Code change that neither fixes a bug nor adds a feature
  • perf: Code change that improves performance
  • test: Adding missing tests or correcting existing tests
  • build: Changes that affect the build system or external dependencies
  • ci: Changes to CI configuration files and scripts
  • chore: Other changes that don't modify src or test files
  • revert: Reverts a previous commit
  • BREAKING CHANGE: Introduces a breaking change (can be combined with any type above)

Checklist

  • Code follows the style guidelines of this project
  • Code has been self-reviewed
  • Code has been commented, particularly in hard-to-understand areas
  • Code docstring/documentation-blocks for new or existing methods/components have been added or updated
  • Unit tests have been added or updated for any new or modified functionality

AI Usage

  • None: No AI tools were used in creating this PR
  • Light: AI provided minor assistance (formatting, simple suggestions)
  • Moderate: AI helped with code generation or debugging specific parts
  • Heavy: AI generated most or all of the code changes

@read-the-docs-community

read-the-docs-community Bot commented Jun 20, 2026

Copy link
Copy Markdown

@codecov

codecov Bot commented Jun 20, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 40.41096% with 261 lines in your changes missing coverage. Please review.
✅ Project coverage is 81.61%. Comparing base (798ad90) to head (8d360c5).
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
src/platform/windows/windows_backend.cpp 22.45% 259 Missing ⚠️
src/platform/windows/control_protocol.hpp 98.07% 2 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master      #19      +/-   ##
==========================================
- Coverage   87.05%   81.61%   -5.45%     
==========================================
  Files          10       12       +2     
  Lines        3152     3579     +427     
  Branches     1109     1229     +120     
==========================================
+ Hits         2744     2921     +177     
- Misses        250      508     +258     
+ Partials      158      150       -8     
Flag Coverage Δ
Linux-Clang 70.18% <93.10%> (+0.72%) ⬆️
Linux-GCC 81.88% <95.34%> (+0.44%) ⬆️
Windows-MSVC 76.57% <37.73%> (-8.75%) ⬇️
Windows-MinGW-UCRT64 68.60% <38.59%> (-6.98%) ⬇️
macOS 69.15% <93.10%> (+1.42%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
src/platform/windows/control_protocol.hpp 98.07% <98.07%> (ø)
src/platform/windows/windows_backend.cpp 22.45% <22.45%> (ø)

... and 3 files with indirect coverage changes


Continue to review full report in Codecov by Harness.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 798ad90...8d360c5. Read the comment docs.

@ReenigneArcher ReenigneArcher force-pushed the feat/windows-implementation branch 3 times, most recently from 3312431 to f919c1f Compare June 20, 2026 23:41
@ReenigneArcher ReenigneArcher force-pushed the feat/windows-implementation branch 4 times, most recently from 8f275cf to 24ed49a Compare June 21, 2026 00:51
Refine Windows packaging and driver build integration:

- cmake/packaging/windows.cmake: configure CPack for driver component when building driver and set CPACK_INSTALL_CMAKE_PROJECTS for driver installs.
- cmake/packaging/windows_wix.cmake: point CPACK_WIX_EXTENSIONS to the full WixToolset.UI extension DLL path and remove use of a separate patch file.
- Remove wix_resources/patch.xml and the FeatureRef from libvirtualhid-driver-installer.wxs.
- src/platform/windows/driver/CMakeLists.txt: normalize and deduplicate WDK root paths, search for UM import libraries (ntdll) and expose LIBVIRTUALHID_NTDLL_LIBRARY; update error messages; link ntdll; restructure custom targets to prepare/stamp the INF and then generate the driver catalog with proper dependencies and working directories.
- src/platform/windows/driver/libvirtualhid.inf.in: add SourceDisksNames/Files and DiskName entry so the INF lists source disk information.
- src/platform/windows/windows_backend.cpp: replace getenv usage with GetEnvironmentVariableA for robust environment variable reading and remove unused <cstdlib> include.

These changes improve robustness when locating WDK components, produce correct installer inputs, and make INF/catalog generation deterministic in the build.
@ReenigneArcher ReenigneArcher force-pushed the feat/windows-implementation branch 2 times, most recently from 4461727 to 98df18a Compare June 21, 2026 01:15
Refactor WiX packaging CMake: add WIX_BUILD_DIRECTORY and set a comment about UI extension versioning, always run dotnet tool install for WiX and fail on install errors, and add installation of the WixToolset.Util extension with error handling. Replace a hardcoded extension DLL path with logical extension names in CPACK_WIX_EXTENSIONS and emit the cpack package directory for debugging. These changes make extension installation more robust and simplify extension referencing for packaging.
@ReenigneArcher ReenigneArcher force-pushed the feat/windows-implementation branch 3 times, most recently from 44c2a75 to 2dc8581 Compare June 21, 2026 02:10
@ReenigneArcher ReenigneArcher force-pushed the feat/windows-implementation branch from 2dc8581 to db8e222 Compare June 21, 2026 02:16
@sonarqubecloud

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
2 New issues
2 New Code Smells (required ≤ 0)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

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.

1 participant