Skip to content

Add Windows C++ MSBuild and PowerShell diagnostics - #3

Merged
isink17 merged 2 commits into
feat/cpp-msbuild-powershell-handlersfrom
feat/windows-cpp-msbuild-powerpack
May 27, 2026
Merged

Add Windows C++ MSBuild and PowerShell diagnostics#3
isink17 merged 2 commits into
feat/cpp-msbuild-powershell-handlersfrom
feat/windows-cpp-msbuild-powerpack

Conversation

@isink17

@isink17 isink17 commented May 27, 2026

Copy link
Copy Markdown
Owner

Summary

Adds a Windows legacy C++ diagnostics layer on top of the existing C++/MSBuild/PowerShell handler branch.

Implemented:

  • MSBuild/VC++ first-error summary with project failure grouping
  • MSB3073/MSB3721 command and exit-code extraction
  • broader VC++/linker/resource compiler error detection
  • safer PowerShell Select-String rewrites
  • compact Get-ChildItem subset via rtk gci
  • rtk read --lines A:B
  • UTF-16 no-BOM detection and safer binary-ish file preview
  • rtk log --events N for recent deduped error/assert/load events

Validation

Local validation passed:

  • cargo fmt --all -- --check
  • cargo clippy --all-targets
  • cargo test --all
  • cargo build --release
  • .\target\release\rtk.exe --version
  • .\target\release\rtk.exe gain

Notes

rtk gci intentionally supports a safe subset of PowerShell Get-ChildItem semantics. Complex variable/pipeline/quoted-path cases should avoid unsafe rewrites and fall back instead.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Code Review

This pull request introduces several enhancements, including a new PowerShell-compatible gci command, improved MSBuild diagnostic parsing with context extraction, recent event tailing in log analysis, and robust UTF-16 auto-detection. The review feedback highlights critical compilation errors caused by using the non-standard is_multiple_of method on usize. Additionally, there are valuable recommendations to optimize performance by avoiding heap allocations during byte sampling and using a HashSet instead of a Vec for O(N) deduplication. Finally, the feedback addresses correctness issues regarding case-insensitivity in glob matching and handling quoted paths with spaces during command rewriting.

Comment thread src/cmds/system/read.rs Outdated
Comment thread src/core/text_encoding.rs Outdated
Comment thread src/cmds/system/read.rs Outdated
Comment thread src/cmds/cpp/msbuild_cmd.rs Outdated
Comment thread src/cmds/system/gci_cmd.rs
Comment thread src/discover/registry.rs Outdated
@isink17
isink17 merged commit aa1c662 into feat/cpp-msbuild-powershell-handlers May 27, 2026
@isink17
isink17 deleted the feat/windows-cpp-msbuild-powerpack branch May 28, 2026 03:55
isink17 added a commit that referenced this pull request May 30, 2026
* Add Windows C++ MSBuild and PowerShell diagnostics
isink17 added a commit that referenced this pull request May 31, 2026
* Add Windows C++ MSBuild and PowerShell diagnostics
isink17 added a commit that referenced this pull request May 31, 2026
* Add Windows C++ MSBuild and PowerShell diagnostics
isink17 added a commit that referenced this pull request May 31, 2026
* Add Windows C++ MSBuild and PowerShell diagnostics
isink17 added a commit that referenced this pull request Jun 4, 2026
* Add Windows C++ MSBuild and PowerShell diagnostics
isink17 added a commit that referenced this pull request Jun 4, 2026
* Add Windows C++ MSBuild and PowerShell diagnostics
isink17 added a commit that referenced this pull request Jul 5, 2026
* Add Windows C++ MSBuild and PowerShell diagnostics
isink17 added a commit that referenced this pull request Jul 5, 2026
* Add Windows C++ MSBuild and PowerShell diagnostics
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