Releases: fintermobilityas/surge
v1.0.0-beta.16
What's Changed
- fix(promote): record pack encoding so checkpoint-full channel deltas rebuild byte-identically by @peters in #90
Full Changelog: v1.0.0-beta.15...v1.0.0-beta.16
v1.0.0-beta.15
What's Changed
- chore(deps): bump cc from 1.2.59 to 1.2.60 by @dependabot[bot] in #85
- chore(deps): bump rand from 0.9.2 to 0.9.4 by @dependabot[bot] in #86
- fix(cli): keep promoted deltas compatible with synthesized bases by @peters in #89
Full Changelog: v1.0.0-beta.14...v1.0.0-beta.15
v1.0.0-beta.14
fix(promote): build channel-aware delta when promoting across skipped versions
surge pack always builds the release delta against the immediately-previous version overall, regardless of channel. When intermediate releases live only on test between two production releases, the production-side delta basis no longer matches what production nodes have on disk, and apply fails with a sparse-file basis hash mismatch on the first file that changed across the skipped versions.
surge promote is now channel-aware: after ensuring the new release's full archive exists in storage, it looks up the previous release on the target channel, restores both archives, builds a sparse delta if one with the matching from_version is missing, and uploads it as <app>-<version>-<rid>-from-<prev>-delta.tar.zst. The original test-channel delta is preserved so test chains keep working. The chain walker resolves each apply step by from_version, with a legacy fallback for releases pushed before from_version was tracked.
Re-running surge promote on a release that was promoted before this fix shipped will rebuild the missing channel delta in place, no demote/repromote cycle required.
PR: #84
v1.0.0-beta.13
What's Changed
- harden(core): validate release index app_id and require app-scoped prefix by @peters in #79
- Fail pack on corrupt delta base by @peters in #80
Full Changelog: v1.0.0-beta.12...v1.0.0-beta.13
v1.0.0-beta.12
What's Changed
- docs: add maintainability guardrails for source file size and module boundaries by @peters in #51
- refactor(cli): split install selection and manifest resolution helpers by @peters in #52
- refactor(cli): extract install runtime profile and release selection helpers by @peters in #53
- refactor(cli): isolate remote tailscale install helpers by @peters in #54
- refactor(ffi): split context and configuration entrypoints by @peters in #55
- refactor(ffi): extract update manager and release entrypoints by @peters in #56
- refactor(ffi): extract diff and pack entrypoints by @peters in #57
- refactor(core): split update manager progress and release index logic by @peters in #58
- refactor(core): extract update download and apply pipeline helpers by @peters in #59
- refactor(core): isolate update supervisor and lifecycle restart helpers by @peters in #60
- refactor(core): split pack builder full delta and index update flows by @peters in #61
- refactor(cli): split pack command installer resolution and upload flow by @peters in #62
- refactor(core): split release restore planning and artifact recovery by @peters in #63
- refactor(core): split shortcut installation by platform by @peters in #64
- refactor(core): split manifest module responsibilities by @peters in #65
- refactor(core): split install module responsibilities by @peters in #66
- refactor(core): split azure storage backend helpers by @peters in #67
- refactor(core): split gcs storage backend helpers by @peters in #68
- refactor(bench): split payload generation helpers by @peters in #69
- refactor(bench): split runner helpers by @peters in #70
- refactor(cli): split main entrypoint helpers by @peters in #71
- refactor(installer-ui): split app rendering helpers by @peters in #72
- refactor(core): split delta module helpers by @peters in #74
- refactor(cli): split remote install helpers by @peters in #75
- refactor(cli): split install root orchestration by @peters in #76
- ci: promote maintainability guardrail to blocking by @peters in #77
- fix(cli): honor restore installer channel selection by @peters in #78
Full Changelog: v1.0.0-beta.11...v1.0.0-beta.12
v1.0.0-beta.11
What's Changed
- build(deps): bump cc from 1.2.58 to 1.2.59 by @dependabot[bot] in #48
- Bump Microsoft.NET.Test.Sdk from 18.3.0 to 18.4.0 by @dependabot[bot] in #49
- fix staged tailscale installs by @peters in #50
Full Changelog: v1.0.0-beta.10...v1.0.0-beta.11
v1.0.0-beta.9
What's Changed
- Preserve persistent assets and prune stale install snapshots by @peters in #45
- Fix persistent install follow-up edge cases by @peters in #47
Full Changelog: v1.0.0-beta.8...v1.0.0-beta.9
v1.0.0-beta.10
What's Changed
Full Changelog: v1.0.0-beta.9...v1.0.0-beta.10
v1.0.0-beta.8
What's Changed
- build(deps): bump uuid from 1.22.0 to 1.23.0 by @dependabot[bot] in #39
- [codex] Combine the egui and eframe 0.34 upgrade by @peters in #42
- build(deps): bump cc from 1.2.57 to 1.2.58 by @dependabot[bot] in #43
- fix(core): prune old installed app snapshots by @peters in #44
Full Changelog: v1.0.0-beta.7...v1.0.0-beta.8
v1.0.0-beta.7
What's Changed
- fix(core): rebuild missing base full from installed app by @peters in #38
- build(deps): bump sha2 from 0.10.9 to 0.11.0 by @dependabot[bot] in #37
Full Changelog: v1.0.0-beta.6...v1.0.0-beta.7