diff --git a/CHANGELOG.md b/CHANGELOG.md index 1aa9d7d..35983b5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,15 @@ +# Changelog + ## [Unreleased] -# Changelog +## [0.1.2] - 2026-04-29 + +### Changed +- Aligned the packaged desktop app version with the release package metadata. + +### Fixed +- Stabilized YouTube import fallback behavior in browser and desktop dev paths. +- Guarded OSSF Scorecard execution so release-branch pushes skip unsupported non-default branch runs cleanly. ## [0.1.1] - 2026-04-28 diff --git a/apps/desktop/src-tauri/tauri.conf.json b/apps/desktop/src-tauri/tauri.conf.json index cca0337..ec22410 100644 --- a/apps/desktop/src-tauri/tauri.conf.json +++ b/apps/desktop/src-tauri/tauri.conf.json @@ -1,7 +1,7 @@ { "$schema": "https://schema.tauri.app/config/2", "productName": "BandScope", - "version": "0.1.0", + "version": "0.1.2", "identifier": "com.bandscope.desktop", "build": { "frontendDist": "../dist" diff --git a/package-lock.json b/package-lock.json index 163a192..da307dd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "bandscope", - "version": "0.1.1", + "version": "0.1.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "bandscope", - "version": "0.1.1", + "version": "0.1.2", "workspaces": [ "apps/*", "packages/*" diff --git a/package.json b/package.json index 5252952..b1c67df 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "bandscope", "private": true, - "version": "0.1.1", + "version": "0.1.2", "type": "module", "engines": { "node": ">=22 <23" diff --git a/services/analysis-engine/tests/test_release_metadata.py b/services/analysis-engine/tests/test_release_metadata.py new file mode 100644 index 0000000..3930e43 --- /dev/null +++ b/services/analysis-engine/tests/test_release_metadata.py @@ -0,0 +1,43 @@ +"""Tests for repository release metadata consistency.""" + +from __future__ import annotations + +import json +from pathlib import Path + + +def repo_root() -> Path: + """Return the repository root from the analysis-engine test directory.""" + return Path(__file__).resolve().parents[3] + + +def root_package_version() -> str: + """Return the root package version used for release tagging.""" + package_json = json.loads((repo_root() / "package.json").read_text(encoding="utf-8")) + return str(package_json["version"]) + + +def test_package_lock_release_version_matches_root_package() -> None: + """Ensure the lockfile release metadata cannot drift from package.json.""" + package_lock = json.loads((repo_root() / "package-lock.json").read_text(encoding="utf-8")) + + assert package_lock["version"] == root_package_version() + assert package_lock["packages"][""]["version"] == root_package_version() + + +def test_tauri_release_version_matches_root_package() -> None: + """Ensure the installable desktop app reports the release version.""" + tauri_config = json.loads( + (repo_root() / "apps" / "desktop" / "src-tauri" / "tauri.conf.json").read_text( + encoding="utf-8" + ) + ) + + assert tauri_config["version"] == root_package_version() + + +def test_changelog_contains_root_package_release_entry() -> None: + """Ensure release branches document the package version being shipped.""" + changelog = (repo_root() / "CHANGELOG.md").read_text(encoding="utf-8") + + assert f"## [{root_package_version()}]" in changelog