Skip to content

Commit f6493e5

Browse files
authored
Revise CHANGELOG for version updates and enhancements
Updated changelog with new features, improvements, and fixes.
1 parent 5ed1827 commit f6493e5

1 file changed

Lines changed: 130 additions & 135 deletions

File tree

CHANGELOG.md

Lines changed: 130 additions & 135 deletions
Original file line numberDiff line numberDiff line change
@@ -5,143 +5,138 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8-
** Update 9-2-2025 **
9-
** 🔧 General Improvements **
10-
- Improved visual formatting using consistent separators (-------------------------------------) and color-coded headers.
11-
- Run As Administrator Check/Approval for BAT file execution
12-
13-
** 🧠 Expanded Diagnostics **
14-
New Diagnostic Modules Added:
15-
- Test-OSHealth: Runs DISM and SFC scans for OS integrity.
16-
- Test-StorageSMART: Collects SMART and reliability data from physical disks.
17-
- Test-Trim: Checks SSD TRIM status.
18-
- Test-NIC: Captures active network adapter details.
19-
- Test-GPU: Summarizes GPU and DirectX info via dxdiag.
20-
- Test-Power: Reports battery status and generates an energy report.
21-
- Test-HardwareEvents: Scans for WHEA hardware error logs.
22-
23-
** Expanded Toolset: **
24-
Added support for additional Sysinternals tools: sigcheck.exe, contig.exe, diskext.exe, listdlls.exe, clockres.exe.
25-
- 🎨 Enhanced Console Output
26-
- Color-coded console feedback:
27-
- ✅ Success: Green
28-
- ⚠️ Warning: Yellow
29-
- ❌ Failure: Red
30-
Recommendations are now printed with color-coded Write-Host output based on severity.
31-
32-
** 📊 Improved Reporting **
33-
Executive Summary includes:
34-
- Total tests run
35-
- Success/failure counts
36-
- Success rate (%)
37-
- Total test duration
38-
39-
Detailed Results:
40-
- Cleaned and truncated tool output for readability.
41-
- Limited to first 15 lines per tool to avoid clutter.
42-
43-
Recommendations Section:
44-
- Dynamically generated based on test outcomes.
45-
- Includes memory, CPU, disk, SMART, TRIM, and WHEA insights.
46-
47-
Report Statistics:
48-
- Displays file sizes and compression ratio between clean and detailed reports.
49-
50-
** 🧭 User Experience Enhancements **
51-
Interactive Menu:
52-
- Expanded to 17 options including new diagnostics and report generation.
53-
- Clear prompts and color-coded choices for better navigation.
54-
55-
AutoRun Support:
56-
- Automatically runs all tests and generates reports when -AutoRun is used.
57-
58-
Error Handling:
59-
- Improved error messages with line number references.
60-
- Graceful fallback for missing tools or failed tests.
61-
62-
** 🔧 Batch File Changes Made: **
63-
Elevation Logic Overhaul:
64-
- Replaced net session check with SID-based elevation detection (S-1-5-32-544) for better reliability on systems where the Server service is disabled.
65-
66-
Elevation Flag Handling:
67-
- Added /elevated flag to prevent infinite loops and provide clearer error messaging when elevation fails or is cancelled.
68-
69-
PowerShell Script Selection:
70-
- Added logic to prefer SystemTester_device_grouped.ps1 if available, falling back to SystemTester.ps1.
71-
72-
** New Execution Modes **
73-
- Option 2: Classic test sequence
74-
- Option 3: Grouped-by-device test sequence (-AutoRunByDevice)
75-
- Execution Policy Fix Enhancement
76-
- Improved Option 4 to set RemoteSigned for CurrentUser without triggering additional UAC prompts.
77-
78-
Help Section Updates:
79-
- Clarified troubleshooting steps and added notes on new test modes.
80-
81-
General Cleanup
82-
- Removed redundant title/color lines, improved messaging consistency, and ensured popd is used on exit to restore working directory.
83-
848
---
859

86-
# 🔄 Change Log - January 20, 2026
87-
88-
## 📊 Quick Stats
89-
- **Commits Analyzed**: 25
90-
- **Files Modified**: 5
91-
- **New Files**: 4
92-
- **Deleted Files**: 0
93-
94-
## 📝 Detailed Changes
95-
96-
### ✨ New Content
97-
- Create generate_changelog.py (`37de35b`)
98-
- Create .gitkeep (`d6bdaa7`)
99-
- Create .gitkeep (`4bbbc52`)
100-
- Create Troubleshooting.md (`fe7101a`)
101-
102-
### ♻️ Updates & Refactors
103-
- Refactor Test-NetworkLatency function for clarity (#17) (`13ca550`)
104-
- Update md-link-check.yml (`e325187`)
105-
- Update md-link-check.yml (`d1d7b6d`)
106-
- Update README.md (`88ab60e`)
107-
- Update SystemTester.ps1 (#15) (`7095515`)
108-
- Update SystemTester.ps1 (`1ff8eef`)
109-
- Update README.md (`1915609`)
110-
- Update README.md (`7211202`)
111-
- Update README.md (`d85051f`)
112-
- Update TROUBLESHOOTING.md (`b088497`)
113-
- Update Troubleshooting.md (`b54e6ee`)
114-
- Update TEST_BAT.bat (`edd62f2`)
115-
- Update SystemTester.ps1 (`c175067`)
116-
- Update SystemTester.bat (`4f1ba58`)
117-
- Update SystemTester.ps1 (`b7df042`)
118-
- update (`2f7989f`)
119-
- update (`5d98fa4`)
120-
- Update SystemTester.bat (`cc4a1dd`)
121-
122-
### 🗑️ Removals
123-
- Delete Troubleshooting/Troubleshooting.md (`22b199b`)
124-
- Delete Test.bat (`6df67c0`)
125-
126-
### ⚡ Other Changes
127-
- Merge branch 'main' of https://github.com/Pnwcomputers/SystemTester (`59a7f44`)
128-
129-
## 📂 Files Touched
130-
<details>
131-
<summary>Click to view full file list</summary>
132-
133-
- `.github/workflows/md-link-check.yml`
134-
- `README.md`
135-
- `Reports/.gitkeep`
136-
- `SystemTester.bat`
137-
- `SystemTester.ps1`
138-
- `Tools/.gitkeep`
139-
- `Troubleshooting/TEST_BAT.bat`
140-
- `docs/TROUBLESHOOTING.md`
141-
- `generate_changelog.py`
142-
143-
</details>
14410
## [Unreleased]
11+
14512
### Planned
146-
- Network deployment options or network log storing
13+
- HTML report export with charts and graphs
14+
- Baseline comparison mode (compare current vs. previous test run)
15+
- Skip flags (`-SkipCPU`, `-SkipNetwork`, etc.) for targeted testing
16+
- CSV export for data analysis
17+
- Memory leak detection module
18+
- Audio device testing
19+
- Intel Arc GPU support
20+
- Network deployment options / centralized log storage
14721
- Multi-language support
22+
23+
---
24+
25+
## [2.4.0] - 2026-04-23
26+
27+
### Fixed
28+
29+
**Network — Latency Test**
30+
- `$targetPort` was never defined, causing `Test-NetConnection` to receive `Port=0` and throw a
31+
validation error on every run — latency test now correctly runs as ICMP-only with no port argument
32+
- `Test-NetConnection -InformationLevel Detailed` removed; it requires a valid port and is
33+
unnecessary for basic ping latency measurement
34+
- `PsPing` was called with `IP:Port` format instead of bare IP for ICMP mode
35+
- `PsPing` result regex was too strict — minor whitespace variations in output caused results to be
36+
silently dropped; regex now uses flexible `\s*` matching
37+
- Added debug output line showing raw PsPing tail when parsing still fails, making future
38+
diagnosis possible without re-running the test
39+
40+
**Network — Speed Test**
41+
- Single hardcoded Hetzner HTTPS URL failed under VPN/proxy TLS interception (Mullvad, Tailscale,
42+
corporate proxies) with no fallback — replaced with a 3-URL chain: Cloudflare, Hetzner HTTP, OVH
43+
- Added per-attempt SSL certificate validation bypass to handle MITM interception; bypass is
44+
scoped to the request and restored immediately after each attempt regardless of success or failure
45+
- Added minimum file size check (1000 bytes) to prevent a firewall error page from being recorded
46+
as a successful download result
47+
48+
**Network — Recommendations**
49+
- Virtual and VPN adapters (VMware VMnet, Hyper-V vEthernet, Tailscale, Mullvad, WireGuard,
50+
TAP-Windows, OpenVPN) were incorrectly flagged as "slow physical NICs" at 100 Mbps
51+
- Recommendation engine now iterates adapter lines individually and excludes known virtual/VPN
52+
adapter name patterns before applying the slow-speed check
53+
54+
**Reports — Output Location**
55+
- Reports were saving to the script root directory; now saved to a `Reports\` subfolder
56+
- `Reports\` folder is created automatically on first report generation
57+
- Energy report (`powercfg /energy`) redirected into `Reports\` alongside text reports
58+
- Write-access test updated to target `Reports\` folder; error messages now include the specific
59+
path that failed
60+
61+
**Reports — Encoding**
62+
- Report files written as UTF-8 caused Unicode bullets (``) and arrows (``) to render as
63+
mojibake (`• â†'`) in Notepad and legacy text viewers
64+
- Switched `Out-File` encoding from UTF8 to ASCII throughout report generation
65+
- Replaced all Unicode bullet (``) characters with `*` and arrow (``) characters with `->`
66+
- Removed Unicode box-drawing characters (`└─`) from PowerShell menu display strings
67+
- Script file is now fully 7-bit ASCII — no encoding surprises in any editor or viewer
68+
69+
**Batch Launcher**
70+
- Sysinternals Suite auto-download used a single HTTPS URL with no SSL bypass — same VPN/proxy
71+
TLS interception issue as the PS1 speed test; same fix applied
72+
- `VERIFY` section exit-code branching silently swallowed function output, producing misleading
73+
success messages regardless of actual result; simplified to direct output display
74+
- Stale reference to legacy `SystemTester_FIXED.ps1` filename removed from error message
75+
- EXIT screen updated to show correct `Reports\` subfolder path
76+
77+
---
78+
79+
## [2.21.0] - 2025-09-02
80+
81+
### Added
82+
- Tool integrity verification with digital signature checking for all Sysinternals executables
83+
- Dual report system: timestamped Clean Summary and Detailed output saved as separate `.txt` files
84+
- Batch launcher (`SystemTester.bat`) with reliable admin elevation and interactive menu
85+
- GPU Tools Manager — batch menu option 6 for managing NVIDIA, AMD, and GPU-Z testing utilities
86+
- Enhanced GPU testing: multi-GPU support, NVIDIA-SMI integration, AMD driver detection via registry
87+
- DirectX diagnostics via `dxdiag`, OpenGL registry check, hardware-accelerated GPU scheduling detection
88+
- Windows Update integration — checks pending updates, lists titles and classifications, reports service status
89+
- WHEA hardware event log scan covering last 7 days
90+
- Network speed and latency testing (initial implementation: `Test-NetConnection`, `PsPing`)
91+
- Launcher awareness detection — script detects if launched via batch file for context-aware messages
92+
- `Test-OSHealth` — runs DISM `/ScanHealth` and SFC for OS integrity (admin only)
93+
- `Test-StorageSMART` — collects health status and media type from physical disks
94+
- `Test-Trim` — checks SSD TRIM enablement status via `fsutil`
95+
- `Test-NIC` — captures active network adapter details including link speed and MAC address
96+
- `Test-GPU` — GPU and display configuration with DirectX and OpenGL information
97+
- `Test-Power` — battery status and `powercfg /energy` report generation (admin only)
98+
- `Test-HardwareEvents` — WHEA error log scan
99+
- Support for additional Sysinternals tools: `sigcheck`, `contig`, `diskext`, `listdlls`, `clockres`
100+
- `-AutoRun` parameter for unattended full-suite execution with automatic report generation
101+
- Color-coded console output (green/yellow/red) for all test results and recommendations
102+
- Recommendations engine — dynamically generated findings covering memory, CPU, disk, SMART,
103+
TRIM, network, GPU drivers, Windows Update, and WHEA events
104+
- GPU sub-menu options: `12a` (basic info), `12b` (vendor-specific), `12c` (GPU memory)
105+
- GPU-Z download assistant with file size validation in batch launcher
106+
107+
### Fixed
108+
- Memory usage calculation: `FreePhysicalMemory` (reported in KB) was not being converted
109+
correctly, causing inflated usage percentages
110+
111+
### Changed
112+
- Admin elevation method replaced: `net session` check swapped for PowerShell
113+
`WindowsPrincipal.IsInRole` with `FLTMC` as fallback — more reliable on systems where the
114+
Server service is disabled
115+
- Interactive menu expanded to 18 options
116+
- Report executive summary now includes total tests, success/failure counts, success rate, and duration
117+
- Detailed report output cleaned and limited to first 40 lines per tool to reduce file size
118+
119+
---
120+
121+
## [2.0.0] - 2024-11-01
122+
123+
### Added
124+
- Complete rewrite with modular function structure
125+
- Interactive menu system with numbered options
126+
- Recommendations engine (initial version)
127+
- Improved report formatting with section headers
128+
129+
### Changed
130+
- Monolithic script refactored into discrete test functions
131+
- All WMI calls migrated to CIM instances for better performance and PowerShell 7 compatibility
132+
133+
---
134+
135+
## [1.0.0] - 2024-01-01
136+
137+
### Added
138+
- Initial release
139+
- Core Sysinternals tool runner: `psinfo`, `coreinfo`, `pslist`, `handle`, `clockres`, `autorunsc`, `du`
140+
- Basic system information collection (OS, CPU, RAM, storage)
141+
- Single text report output
142+
- Manual Sysinternals installation required

0 commit comments

Comments
 (0)