Skip to content

Commit cb5a627

Browse files
zhmiaoCopilot
andcommitted
chore(release): bump 0.1.14 -> 0.1.15 for RP-5 live-validation release
Bumps all workspace Cargo.toml + pyproject.toml + Cargo.lock + installer defaults to v0.1.15 so the F-R2-4 CI version-consistency preflight passes on tag-push. v0.1.15 ships ONE substantive change vs v0.1.14: RP-5 cross-repo CI image-pin auto-PR landed 2026-05-29 (sparrow-engine-dev companion repo session 4f3f88eb design + impl): - release.yml: 2 new jobs (build-and-push-docker-{cpu,gpu}) push CPU + GPU images to ghcr.io/microsoft/sparrow-engine-server[-gpu]:vX.Y.Z on prod tag-push. Built on free ubuntu-latest (no GPU runner needed; RP-19 precedent). Separate buildcache image keeps runtime image tag list clean. - release.yml publish-cli-release-assets: gates GH Release publish on docker push success (makes /releases/latest a race-free signal for sparrow's auto-PR workflow on Clamps251/sparrow @ sparrow-engine-dev). - Auth via GITHUB_TOKEN + packages: write — zero secrets. This release is the live-validation target: cutting v0.1.15 fires the full new CI chain (PyPI publish -> CPU+GPU docker build+push -> GH Release publish) end-to-end for the first time. If the new docker jobs fail, PyPI wheels still ship (they publish earlier in the chain) — fix forward via workflow_dispatch re-trigger. Brew formulas intentionally NOT bumped: brew updates require SHA256 of v0.1.15 tarballs which only exist after release. Design + impl artifacts (companion repo sparrow-engine-dev): docs/design/rp-5-image-pin-auto-pr/final_design.md docs/implement/rp-5-image-pin-auto-pr/SUMMARY.md Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 4c1abab commit cb5a627

12 files changed

Lines changed: 35 additions & 17 deletions

File tree

installer/sparrow-engine-install.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ param(
4545

4646
# ----- Constants ---------------------------------------------------------
4747

48-
$Script:SparrowEngineVersion = if ($Version) { $Version } elseif ($env:SPARROW_ENGINE_VERSION) { $env:SPARROW_ENGINE_VERSION } else { '0.1.14' }
48+
$Script:SparrowEngineVersion = if ($Version) { $Version } elseif ($env:SPARROW_ENGINE_VERSION) { $env:SPARROW_ENGINE_VERSION } else { '0.1.15' }
4949
$Script:InstallRoot = Join-Path $env:LOCALAPPDATA 'Programs\sparrow-engine' # %LocalAppData%\Programs\sparrow-engine
5050
$Script:UserSparrowEngineDir = Join-Path $env:USERPROFILE '.sparrow-engine' # state file + RC sentinel home
5151
$Script:StateFile = Join-Path $Script:UserSparrowEngineDir 'installed.json'

installer/sparrow-engine-install.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ set -euo pipefail
2424
# Phase F release-CI step on every published GH Release (`vX.Y.Z`). The
2525
# `SPARROW_ENGINE_VERSION` env var overrides this for advanced users
2626
# wanting to install an older or newer release.
27-
SPARROW_ENGINE_VERSION="${SPARROW_ENGINE_VERSION:-0.1.14}"
27+
SPARROW_ENGINE_VERSION="${SPARROW_ENGINE_VERSION:-0.1.15}"
2828
SPARROW_ENGINE_PREFIX="${SPARROW_ENGINE_PREFIX:-$HOME/.sparrow-engine}"
2929
SPARROW_ENGINE_STATE_FILE="$SPARROW_ENGINE_PREFIX/installed.json"
3030
# Default release base = public GH Releases asset URL. Phase E B-02 fix

sparrow-engine/CHANGELOG.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
88

99
## [Unreleased]
1010

11+
### Added
12+
13+
- **RP-5 — Cross-repo CI image-pin auto-PR**, landed v0.1.15 (2026-05-29).
14+
Replaces the operator-manual `sync_sparrow_engine.sh` flow with CI:
15+
- `release.yml` gains `build-and-push-docker-{cpu,gpu}` jobs that push
16+
CPU + GPU images to `ghcr.io/microsoft/sparrow-engine-server[-gpu]:vX.Y.Z`
17+
on prod tag-push (skip on hyphenated tags). GitHub-hosted `ubuntu-latest`
18+
runner builds both flavors (RP-19 precedent: cudarc fallback-dynamic-loading
19+
+ nvjpeg-sys pre-generated bindings + ort load-dynamic skip the build-time
20+
CUDA Toolkit requirement). Separate `sparrow-engine-server-buildcache:{cpu,gpu}`
21+
registry caches keep the runtime image tag list clean. Auth via `GITHUB_TOKEN`
22+
+ `packages: write` — zero secrets to manage.
23+
- `publish-cli-release-assets` now gates GH Release publish on docker push
24+
success — sparrow's auto-PR (lives on `Clamps251/sparrow @ sparrow-engine-dev`)
25+
polls `/releases/latest` and is therefore race-free w.r.t. image availability.
26+
- Design + impl artifacts live in the companion repo at
27+
`zhmiao/sparrow-engine-dev:docs/{design,implement}/rp-5-image-pin-auto-pr/`.
28+
1129
### Fixed
1230

1331
- **Phase 4.5 audit-fix Phase F (CI + Docker + release plumbing) — Round 1**

sparrow-engine/Cargo.lock

Lines changed: 7 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

sparrow-engine/sparrow-engine-cli/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "sparrow-engine-cli"
3-
version = "0.1.14"
3+
version = "0.1.15"
44
edition = "2021"
55
description = "CLI for sparrow-engine wildlife inference engine"
66

sparrow-engine/sparrow-engine-core/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "sparrow-engine-core"
3-
version = "0.1.14"
3+
version = "0.1.15"
44
edition = "2021"
55
description = "Phase 3.8 — sparrow-engine workspace device-agnostic core. Zero ORT/CUDA/nvjpeg deps."
66

sparrow-engine/sparrow-engine-cpu/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "sparrow-engine-cpu"
3-
version = "0.1.14"
3+
version = "0.1.15"
44
edition = "2021"
55
description = "Phase 3.8 — sparrow-engine CPU pipeline."
66

sparrow-engine/sparrow-engine-gpu/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "sparrow-engine-gpu"
3-
version = "0.1.14"
3+
version = "0.1.15"
44
edition = "2021"
55
description = "Phase 3.8 — sparrow-engine GPU pipeline: image (nvjpeg + CUDA preprocess + ORT CUDA-EP) and audio (cuFFT + cuBLAS mel + ORT CUDA-EP IoBinding)."
66

sparrow-engine/sparrow-engine-python/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "sparrow-engine-python"
3-
version = "0.1.14"
3+
version = "0.1.15"
44
edition = "2021"
55
description = "PyO3 bindings for sparrow-engine (CPU or GPU pipeline) — camera trap ML inference"
66

sparrow-engine/sparrow-engine-python/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ build-backend = "maturin"
2626

2727
[project]
2828
name = "sparrow-engine"
29-
version = "0.1.14"
29+
version = "0.1.15"
3030
description = "Camera-trap ML inference engine — Python API only (sparrow-engine CPU pipeline). The CLI binary (spe / spe-gpu) and HTTP server are NOT shipped via pip; install them via brew, the system installer (sparrow-engine-install.sh / .ps1), or the GitHub Release tarball. See https://github.com/microsoft/Pytorch-Wildlife/blob/sparrow-engine-dev/docs/user-manual.md"
3131
readme = "../../README.md"
3232
requires-python = ">=3.11"

0 commit comments

Comments
 (0)