Skip to content

chore(release): prep v1.1.1 (ship accrued batch + restore vpk/Velopack lockstep) - #46

Merged
bilbospocketses merged 1 commit into
masterfrom
release/v1.1.1
Jun 11, 2026
Merged

chore(release): prep v1.1.1 (ship accrued batch + restore vpk/Velopack lockstep)#46
bilbospocketses merged 1 commit into
masterfrom
release/v1.1.1

Conversation

@bilbospocketses

Copy link
Copy Markdown
Owner

Promotes the accrued [Unreleased] batch to v1.1.1 and closes a lockstep gap Dependabot opened.

The lockstep fix

Dependabot #44 auto-bumped the Velopack NuGet package 1.1.1 -> 1.2.0 in both production csprojs, but it can't touch the vpk CLI pin (not a NuGet ref) — so release.yml and local-pack.ps1 were left at vpk 1.1.1. The CLI and runtime library share a serialization line and have to move together, so this brings both to 1.2.0 (also the line where --msi --instLocation PerMachine is solidly supported — bundled WiX 5).

What's in the release

Verification

Clean Release build + full 445/445 test suite green locally. vpk 1.2.0 packaging runs in release CI on the tag, then gets the Mode A VM smoke after publish.

No app-behavior change in the batch (all Changed/Removed/Fixed/deps), hence the patch bump.

…ck lockstep

Promote the accrued [Unreleased] batch to [1.1.1] and reconcile the vpk
CLI pin with the Velopack NuGet package.

Dependabot #44 bumped the Velopack NuGet package 1.1.1 -> 1.2.0 in both
production csprojs, but could not touch the vpk CLI pin (not a NuGet ref),
leaving release.yml + local-pack.ps1 at vpk 1.1.1. The CLI and runtime
library share a serialization line and must stay in lockstep, so bump both
to 1.2.0 (the line where --msi --instLocation PerMachine is solidly
supported, bundled WiX 5).

- CHANGELOG: [Unreleased] -> [1.1.1] (2026-06-11); document the #42/#43/#45
  CI/dep changes that landed without changelog entries; rewrite the Velopack
  bullet to the final 1.2.0 state; update link refs.
- release.yml + local-pack.ps1: vpk CLI 1.1.1 -> 1.2.0.
- csproj Version/AssemblyVersion/FileVersion 1.1.0 -> 1.1.1 (all four).

Clean Release build + full 445-test suite green.
@bilbospocketses
bilbospocketses enabled auto-merge (squash) June 11, 2026 19:22
@bilbospocketses
bilbospocketses merged commit ac48c4a into master Jun 11, 2026
8 checks passed
@bilbospocketses
bilbospocketses deleted the release/v1.1.1 branch June 11, 2026 19:24
bilbospocketses added a commit that referenced this pull request Jun 24, 2026
… vendored icons (#76)

* docs(plan): audit MINOR mop-up + follow-ups (5-PR batch)

* fix(frontend): audit MINOR cleanup #42-#47 + #57

- #43 define semantic --*-bg / --*-text theme tokens (light + dark); dark mode
  now resolves real values instead of silently using the light-mode fallback
- #44 dedup byte-identical .dialog/.modal CSS; theme-aware pill :hover via color-mix
- #45 re-key scrcpy settings modal to app theme tokens (was unset Bootstrap
  --bs-*); the modal now follows light/dark instead of always-dark fallbacks
- #46 fix stale "conic" comment (the code is four linear gradients)
- #47 home-tiles.js batches reads then writes (no per-card layout thrash);
  remove dead .home-module-* CSS from the reverted tile experiment
- #42 subnets.html Close-tab link no longer traps a non-script-opened tab
- #57 vendor bootstrap-icons 1.11.3 (CSS + woff2/woff) under wwwroot/lib;
  drop the jsDelivr CDN dependency (works offline, closes the no-SRI gap)
bilbospocketses added a commit that referenced this pull request Jun 24, 2026
…Compress (#80)

* build: #46 eliminate vendored 7zr.exe — extract .7z via bundled SharpCompress

The build's only .7z (ImageMagick's portable) was extracted with a 7zr.exe fetched
trust-on-first-use from 7-zip.org's unversioned URL (SHA-pinned, but a fail-closed re-pin
treadmill on every 7-Zip release). SharpCompress is already an app dependency (it does the
runtime dependency-update extraction in ArchiveExtractor), so:
- New tools/Cm7zExtract (net10 console, references SharpCompress) mirrors ArchiveExtractor's
  .7z path (zip-slip-guarded); _Fetcher.ps1 Expand-Cm7z invokes it via `dotnet run`.
- Removed Get-Cm7zr (the 7zr.exe fetch + unversioned URL + TOFU SHA pin).
- Local-Dependencies-Only: the extractor is a declared NuGet package restored into the
  tool's own build output, never a PATH-resolved or trust-on-first-use binary.

Verified: the tool extracts the real ImageMagick 7.1.2-25 .7z (magick.exe + 22 files, exit 0).
706 tests green. Docs (TECHNICAL_GUIDE + the CHANGELOG #17 [Unreleased] entry) updated.

* build: review fix — Expand-Cm7z prefers the vendored dotnet SDK (Get-CmDotnet)

Whole-branch review (Important): the tool was invoked with a bare PATH `dotnet`, inconsistent with
local-pack.ps1's vendored-SDK discipline. New Get-CmDotnet resolves the vendored SDK
(scripts/dependencies/dotnet/<version>/dotnet.exe) when present, else falls back to PATH `dotnet`
(which release.yml provides via setup-dotnet). Verified end-to-end: fetch-magick extracts the real
ImageMagick .7z via the vendored dotnet 10.0.203.
bilbospocketses added a commit that referenced this pull request Jun 24, 2026
) (#81)

The wrap-up doc sweep caught four stale TECHNICAL_GUIDE references the feature PRs missed:
- NetworkDiscoveryService delegates to IArpTableProvider (Windows GetIpNetTable P/Invoke + arp -a
  fallback); PingAsync is managed System.Net.NetworkInformation.Ping (#37 / PR #78)
- GetDefaultBackupDirectory is pure — the backup-write path creates the dir, not the getter (#40 / PR #77)
- Expand-Cm7z extracts .7z via the bundled SharpCompress (tools/Cm7zExtract), no vendored 7zr (#46 / PR #80)
- in-app update apply signals via a shared UpdateApplyState flag + explicit Program return, not a
  clobberable Environment.ExitCode (#50 / PR #79)
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