Skip to content

Release v1.2.1#116

Merged
erikdarlingdata merged 5 commits intomainfrom
dev
Mar 19, 2026
Merged

Release v1.2.1#116
erikdarlingdata merged 5 commits intomainfrom
dev

Conversation

@erikdarlingdata
Copy link
Owner

@erikdarlingdata erikdarlingdata commented Mar 19, 2026

Release v1.2.1

New

Pipeline

  • Release pipeline now produces Velopack artifacts (Setup.exe, full/delta nupkg) alongside existing zip downloads
  • First release to test auto-update pipeline before porting to PerformanceMonitor

Summary by CodeRabbit

  • New Features

    • Added Windows automatic update support for streamlined version management
    • Introduced bar chart visualization for Query Store performance metrics
    • Enhanced Query Store grid sorting with visual indicators
  • Chores

    • Bumped version to 1.2.1
    • Added project citation and documentation metadata
    • Improved CI/CD workflow for Windows release artifacts

rferraton and others added 5 commits March 18, 2026 08:44
* add Descending First click behavior for the query-store grid sort

* Add bar charts into the query store grid

* Add barcharts to the query store grid. Theme is setup in a dedicated theme file

* fix double using

* Fix issue #105

* Fix ObjectDisposedException crash in SetStatus (#105) (#107)

The CTS disposal added in #97 could race with the 3-second Task.Delay
continuation. If SetStatus was called again after the old CTS was disposed
but before the continuation ran, Cancel() on the disposed CTS threw
ObjectDisposedException, crashing the app.

Fix: null out the field before Cancel/Dispose so the next call never
touches the disposed instance.

Closes #105

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Erik Darling <2136037+erikdarlingdata@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The button was hardcoded disabled on the MainWindow toolbar for .sqlplan
files. Now it creates a new query session and immediately triggers the
connection dialog + Query Store flow.

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- llms.txt: structured project summary for LLM crawlers (llmstxt.org standard)
- CITATION.cff: enables GitHub "Cite this repository" widget + structured metadata

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Velopack NuGet package added
- VelopackApp.Build().Run() in Program.Main() (proper entry point)
- About > Check for Updates tries Velopack first (download + apply),
  falls back to browser-based GitHub check on Mac/Linux or when
  Velopack packages aren't available
- Release pipeline: vpk pack produces Setup.exe, full/delta nupkg,
  uploaded alongside existing zip artifacts
- Version bumped to 1.2.1 across all 4 projects

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…date

Add Velopack auto-update + v1.2.1 (#635)
@erikdarlingdata erikdarlingdata merged commit 8754cd2 into main Mar 19, 2026
2 of 4 checks passed
@coderabbitai
Copy link

coderabbitai bot commented Mar 19, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 6d84a537-b8f7-41fa-8ee5-a81d5cffa53b

📥 Commits

Reviewing files that changed from the base of the PR and between 95a822b and 8bc4365.

📒 Files selected for processing (17)
  • .github/workflows/release.yml
  • CITATION.cff
  • llms.txt
  • src/PlanViewer.App/AboutWindow.axaml.cs
  • src/PlanViewer.App/App.axaml
  • src/PlanViewer.App/Controls/BarChartCell.axaml
  • src/PlanViewer.App/Controls/BarChartCell.axaml.cs
  • src/PlanViewer.App/Controls/QuerySessionControl.axaml.cs
  • src/PlanViewer.App/Controls/QueryStoreGridControl.axaml
  • src/PlanViewer.App/Controls/QueryStoreGridControl.axaml.cs
  • src/PlanViewer.App/MainWindow.axaml.cs
  • src/PlanViewer.App/PlanViewer.App.csproj
  • src/PlanViewer.App/Program.cs
  • src/PlanViewer.App/Themes/BarChartConfig.axaml
  • src/PlanViewer.Cli/PlanViewer.Cli.csproj
  • src/PlanViewer.Core/PlanViewer.Core.csproj
  • src/PlanViewer.Ssms.Installer/PlanViewer.Ssms.Installer.csproj

📝 Walkthrough

Walkthrough

This pull request adds Velopack-based Windows auto-update support via CI/CD workflow and application startup, introduces bar chart visualization with sorting to the Query Store grid, adds project metadata files (CITATION.cff, llms.txt), bumps project versions to 1.2.1, and includes supporting UI/control infrastructure changes.

Changes

Cohort / File(s) Summary
Documentation & Metadata
CITATION.cff, llms.txt
New files providing project citation metadata and LLM-friendly project description, including author/affiliation details, license, version, and feature summary.
Version Updates
src/PlanViewer.App/PlanViewer.App.csproj, src/PlanViewer.Cli/PlanViewer.Cli.csproj, src/PlanViewer.Core/PlanViewer.Core.csproj, src/PlanViewer.Ssms.Installer/PlanViewer.Ssms.Installer.csproj
Project versions incremented from 1.2.0 to 1.2.1 across all application packages.
Velopack Integration
.github/workflows/release.yml, src/PlanViewer.App/Program.cs, src/PlanViewer.App/AboutWindow.axaml.cs
Adds Velopack-based Windows auto-update pipeline: release workflow creates and uploads Velopack artifacts, Program startup initializes VelopackApp, AboutWindow implements async update download/apply UI with GitHub source fallback.
Bar Chart Control
src/PlanViewer.App/Controls/BarChartCell.axaml, src/PlanViewer.App/Controls/BarChartCell.axaml.cs, src/PlanViewer.App/Themes/BarChartConfig.axaml, src/PlanViewer.App/App.axaml
New BarChartCell user control with styled properties (DisplayText, Ratio, ColumnId, IsSortedColumn), bar color resource dictionary with theme-driven brushes, and application resource integration.
Query Store Grid Enhancement
src/PlanViewer.App/Controls/QueryStoreGridControl.axaml, src/PlanViewer.App/Controls/QueryStoreGridControl.axaml.cs
Replaces numeric column rendering with bar chart visualization templates; adds sorting state management (per-column cycles: descending→ascending→clear); extends QueryStoreRow with 26 new ratio/sort-indicator properties and SetBar() method; implements normalized ratio computation across filtered rows.
UI Wiring Updates
src/PlanViewer.App/Controls/QuerySessionControl.axaml.cs, src/PlanViewer.App/MainWindow.axaml.cs
Adds TriggerQueryStore() public method to QuerySessionControl; MainWindow queryStoreBtn now enabled and wired to increment counter, create new Query tab, and invoke TriggerQueryStore(). Adds Velopack NuGet dependency (0.0.1298) to PlanViewer.App.csproj.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~65 minutes

Possibly related PRs

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch dev
📝 Coding Plan
  • Generate coding plan for human review comments

Comment @coderabbitai help to get the list of available commands and usage tips.

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