All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
No unreleased changes.
- Dependabot NuGet Mismatch: Pinned all LiveCharts packages to
2.0.0-rc5.1to resolve a fatalMissingMethodExceptioncaused by a partial version bump (LiveChartsCoreatrc6.1vsLiveChartsCore.SkiaSharpView.WPFatrc5.4).
- ARM64 Release Target: Release workflow now builds both
win-x64andwin-arm64executables via a GitHub Actions build matrix.
- .NET 10 Migration: Upgraded the entire project from legacy .NET Framework 4.7.2 to modern .NET 10 SDK-style projects.
- MVVM Architecture: Introduced
CommunityToolkit.Mvvmand Microsoft Dependency Injection for a clean separation of concerns. - LiveCharts2 Integration: Replaced legacy
LiveCharts.Wpfv0.9.7 with hardware-acceleratedLiveChartsCore.SkiaSharpView.WPFv2.0.0-rc5.1 powered by SkiaSharp. - Custom Angular Gauge: Engineered a pixel-perfect, pure-WPF angular gauge using geometric
<Path>shapes and<RotateTransform>. - Async Data Streaming:
TelemetryServicestreams data usingIAsyncEnumerable<T>, yielding results asynchronously over a 50ms interval. - CI/CD Pipeline: GitHub Actions workflows for CI (
ci.yml), CodeQL security scanning (codeql.yml), dependency review (dependency-review.yml), and automated releases (release.yml). - Dependabot: Automated dependency management via
dependabot.yml. - Global Error Handling: Unhandled exception logging for App, TaskScheduler, and CurrentDomain.
- Documentation:
ARCHITECTURE.mdwith Mermaid diagrams,CONTRIBUTING.md,SECURITY.md, issue/PR templates, and a professionalREADME.mdwith CI badges.
- Fixed CSV parsing failures in non-English locales by enforcing
CultureInfo.InvariantCulture. - Resolved
DirectoryNotFoundExceptioncrashes by mapping file paths toAppDomain.CurrentDomain.BaseDirectory. - Fixed charting precision loss (empty charts) by converting timestamps from raw Ticks to normalized
TotalSeconds. - Fixed Start/Stop toggle unresponsiveness by decoupling state updates from
Task-based blocking commands.
- Legacy
packages.configsystem eliminated in favor ofPackageReference. - Unused
.vs,obj, andbinartifacts permanently removed from tracking via.gitignore.
- Initial project release using .NET Framework 4.6.1.
- Real-time simulation dashboard with sliding-window telemetry for Pulse, Efficiency, Red, Green, and Blue series.
- Visual components modeled after factory angular gauges and Cartesian charts.