From f4b3109c32a772729ad88ab729ba65f7cc137fb1 Mon Sep 17 00:00:00 2001 From: Sebastian Palencsar Date: Sun, 21 Jun 2026 08:52:45 +0200 Subject: [PATCH] docs: prepare 1.0.4 release notes and CI test coverage Document current version in README, add ctest instructions, update QML development paths, and run tests plus broader qmllint in CI. --- .github/workflows/build.yml | 3 ++- CONTRIBUTING.md | 8 +++++++- README.md | 20 ++++++++++++++++++-- 3 files changed, 27 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index dd556de..0e2f231 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -35,5 +35,6 @@ jobs: qt6-multimedia-ffmpeg cmake -S . -B build -DCMAKE_BUILD_TYPE=Release cmake --build build -j"$(nproc)" - "$(/usr/lib/qt6/bin/qtpaths6 --query QT_INSTALL_BINS)/qmllint" src/qml/Main.qml + ctest --test-dir build --output-on-failure + "$(/usr/lib/qt6/bin/qtpaths6 --query QT_INSTALL_BINS)/qmllint" src/qml/Main.qml src/qml/components/*.qml src/qml/theme/BearTheme.qml ' diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 636e155..92fa3b7 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -34,7 +34,13 @@ cmake --install build --prefix "$HOME/.local" If you changed QML: ```bash -qmllint src/qml/Main.qml +qmllint src/qml/Main.qml src/qml/components/*.qml src/qml/theme/BearTheme.qml +``` + +Run unit tests after backend changes: + +```bash +ctest --test-dir build --output-on-failure ``` ## Change Guidelines diff --git a/README.md b/README.md index dd20baf..1c75bf2 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,9 @@ BearWave is designed for fast station browsing, simple playback controls, favori ![KDE Plasma](https://img.shields.io/badge/desktop-KDE%20Plasma-1f6feb) ![Qt 6](https://img.shields.io/badge/Qt-6-41cd52) ![License: GPL--3.0--or--later](https://img.shields.io/badge/license-GPL--3.0--or--later-lightgrey) +![Version](https://img.shields.io/badge/version-1.0.4-blue) + +**Current release:** [1.0.4](CHANGELOG.md#104---2026-06-20) (2026-06-20) — security hardening, playback/tray/MPRIS fixes, modular QML UI. ## Screenshots @@ -214,6 +217,16 @@ cmake -S . -B build -DCMAKE_BUILD_TYPE=Release cmake --build build -j"$(nproc)" ``` +### Tests + +From the build directory: + +```bash +ctest --test-dir build --output-on-failure +``` + +This runs backend unit tests for playback navigation, API race handling, and manual station URL validation. + ## Runtime Requirements - Linux desktop session @@ -323,14 +336,17 @@ See [CONTRIBUTING.md](CONTRIBUTING.md) for local build and review expectations. ## Development Notes -- main UI: `src/qml/Main.qml` +- main UI shell: `src/qml/Main.qml` +- QML components: `src/qml/components/` (navigation, search, station cards, player bar, dialogs) +- theme singleton: `src/qml/theme/BearTheme.qml` - backend orchestration: `src/radiobackend.cpp` - stream playback: `src/bearplayer.cpp` - API layer: `src/radiobrowser.cpp` - MPRIS adapter: `src/mprisadaptor.cpp` - desktop notifications: `src/notificationmanager.cpp` +- unit tests: `tests/` -For contributor and agent guardrails, see `AGENTS.md`. +See [CHANGELOG.md](CHANGELOG.md) for release history. For contributor and agent guardrails, see `AGENTS.md`. ## License