diff options
| author | tranch <tranch.xiao@gmail.com> | 2026-10-22 15:13:49 +0800 |
|---|---|---|
| committer | tranch <tranch.xiao@gmail.com> | 2026-10-22 15:13:49 +0800 |
| commit | 9cc84b14b8805f964ee8772b44721c3ec1588f4e (patch) | |
| tree | 4088f09758b05f2349823080025453298d9afeee /tests | |
| download | aerocore-os-gamemode-news-9cc84b14b8805f964ee8772b44721c3ec1588f4e.tar.gz aerocore-os-gamemode-news-9cc84b14b8805f964ee8772b44721c3ec1588f4e.zip | |
feat: publish AeroCore game mode news
Provide public update announcements for AeroCore OS using the upstream
game mode news format.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/conftest.py | 30 | ||||
| -rw-r--r-- | tests/fixtures/bazzite-releases.json | 1 | ||||
| -rw-r--r-- | tests/test_build_announcements.py | 181 |
3 files changed, 212 insertions, 0 deletions
diff --git a/tests/conftest.py b/tests/conftest.py new file mode 100644 index 0000000..3744830 --- /dev/null +++ b/tests/conftest.py @@ -0,0 +1,30 @@ +import importlib.util +import json +import os +import sys + +import pytest + +_ROOT = os.path.dirname(os.path.dirname(__file__)) +_SCRIPT = os.path.join(_ROOT, ".github", "scripts", "build-announcements.py") + + +@pytest.fixture(scope="session") +def mod(): + spec = importlib.util.spec_from_file_location("build_announcements", _SCRIPT) + module = importlib.util.module_from_spec(spec) + sys.modules["build_announcements"] = module + spec.loader.exec_module(module) + return module + + +@pytest.fixture(scope="session") +def releases(): + path = os.path.join(os.path.dirname(__file__), "fixtures", "bazzite-releases.json") + with open(path, encoding="utf-8") as f: + return json.load(f) + + +@pytest.fixture +def stable_release(releases): + return next(r for r in releases if not r["prerelease"]) diff --git a/tests/fixtures/bazzite-releases.json b/tests/fixtures/bazzite-releases.json new file mode 100644 index 0000000..0a18166 --- /dev/null +++ b/tests/fixtures/bazzite-releases.json @@ -0,0 +1 @@ +[{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/357182161","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/357182161/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/357182161/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/testing-44.20260721","id":357182161,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4VSirR","tag_name":"testing-44.20260721","target_commitish":"main","name":"testing-44.20260721: Testing (F44.20260721, #a3281c7)","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-07-21T06:39:30Z","updated_at":"2026-07-21T07:45:45Z","published_at":"2026-07-21T07:45:45Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/testing-44.20260721","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/testing-44.20260721","body":"This is an automatically generated changelog for release `testing-44.20260721`.\n\nFrom previous `testing` version `testing-44.20260717.1` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.1.3-ogc3.4 ➡️ 7.1.3-ogc5.1 |\n| **Firmware** | 20260622-1 |\n| **Mesa** | 26.1.4-2 ➡️ 26.1.5-2 |\n| **Gamescope** | 137.9b021486-1 |\n| **Gamescope Session** | 0~20260202git.b5c2d0d-4 |\n| **InputPlumber** | 0.77.7-1 |\n| **OpenGamepadUI** | 0.45.1-1 |\n| **PowerStation** | 0.8.1-1 |\n| **SteamOS-Manager** | 0~20260528.git37d1cb6-4 |\n| **Bazaar** | 0.9.1-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.2-1 ➡️ 6.7.3-1 |\n| **Nvidia Open** | 610.43.03-1 |\n| **Nvidia LTS** | 580.173.02-1 |\n\n### Commits\n| Hash | Subject | Author |\n| --- | --- | --- |\n| **[a3281c7](https://github.com/ublue-os/bazzite/commit/a3281c7b6303c8a367334ff42557d365ce433d3a)** | chore(deps): update actions/checkout digest to 3d3c42e (#5267) | ubot-7274[bot] |\n| **[6f997b7](https://github.com/ublue-os/bazzite/commit/6f997b7c93e3df37012156f9b3c37c14c1c52c82)** | chore(deps): update actions/checkout action to v7.0.1 (#5268) | ubot-7274[bot] |\n| **[6196d63](https://github.com/ublue-os/bazzite/commit/6196d63356af67afc1a3ccbdb18e66ca2f660381)** | chore(Portal): Add comma in Waydroid description (#5259) | Crono |\n| **[7cf5fbf](https://github.com/ublue-os/bazzite/commit/7cf5fbfb378af99372f430a97d65ac0a8f25a41a)** | chore: Use our fork for the news source | Kyle Gospodnetich |\n| **[ebfa91b](https://github.com/ublue-os/bazzite/commit/ebfa91b52b5039e9ddab7ce0d34c948e03bb9f0b)** | feat: Add gamemode-news-hook package | Kyle Gospodnetich |\n| **[d7faf89](https://github.com/ublue-os/bazzite/commit/d7faf89463b80bfffdfe215bed77fc95c5634103)** | feat: Update kernel to 7.1.3-ogc5 | Kyle Gospodnetich |\n| **[d0dee68](https://github.com/ublue-os/bazzite/commit/d0dee687a1e7506798eab2c8ceee8de5afe07c52)** | fix: Set caps for kdeconnectd | Kyle Gospodnetich |\n| **[99186f6](https://github.com/ublue-os/bazzite/commit/99186f67cab19125ef2a821a58b92b45c7eaa5f5)** | chore: Correct path | Kyle Gospodnetich |\n| **[32d2ebd](https://github.com/ublue-os/bazzite/commit/32d2ebd925244f3b1921c5dd7d578571e8589bc9)** | chore: Always run bazzite-iwd-migration.service for now | Kyle Gospodnetich |\n| **[41be055](https://github.com/ublue-os/bazzite/commit/41be055c1f3ca81d589bb19ea3f8d4fc9da0e7ec)** | fix: Enable notifier for Nvidia Flatpak Runtime Mismatch (#5251) | Alex Shek |\n| **[12b3a5f](https://github.com/ublue-os/bazzite/commit/12b3a5f491bd9fb9905caf08c88650a63d5395da)** | chore: Update bluez to 5.87 | Kyle Gospodnetich |\n| **[a98bb09](https://github.com/ublue-os/bazzite/commit/a98bb09afe8583951ea2257f010f11b635a153ba)** | chore: Add mangohud spec | Kyle Gospodnetich |\n\n### All Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | ImageMagick | 7.1.2.13-2 | 7.1.2.27-1 |\n| 🔄 | LibRaw | 0.22.1-1 | 0.22.2-1 |\n| 🔄 | bluez | 5.86-2.bazzite.0.0.git.7579.e8f355ea | 5.87-2.bazzite.0.0.git.7950.32d2ebd9.dirty.3sl9q6 |\n| 🔄 | bootc | 1.15.2-1 | 1.16.4-1 |\n| 🔄 | cosign | 3.1.1-1 | 3.1.2-1 |\n| 🔄 | freerdp | 3.27.1-1 | 3.30.0-1 |\n| 🔄 | ibus | 1.5.34-2 | 1.5.34-4 |\n| 🔄 | kernel-tools | 7.1.3-201 | 7.1.4-200 |\n| 🔄 | less | 702-1 | 704-2 |\n| 🔄 | libnfsidmap | 2.8.7-5 | 2.8.7-6 |\n| 🔄 | libseccomp | 2.6.0-3 | 2.6.1-2 |\n| 🔄 | libtiff | 4.7.1-2 | 4.7.2-1 |\n| 🔄 | libuv | 1.51.0-3 | 1.52.1-2 |\n| 🔄 | mangohud | 0.8.3~rc1-2 | 0.8.4-1 |\n| 🔄 | openssh | 10.2p1-12 | 10.2p1-13 |\n| 🔄 | openssl | 3.5.7-1 | 3.5.7-2 |\n| 🔄 | passt | 0^20260611.ga9c61ff-1 | 0^20260716.g090d739-2 |\n| 🔄 | python-cryptography | 48.0.0-1 | 49.0.0-1 |\n| 🔄 | python3-boto3 | 1.43.44-1 | 1.43.50-1 |\n| 🔄 | python3-s3transfer | 0.19.0-1 | 0.19.1-1 |\n| 🔄 | qt6-qtdeclarative | 6.11.1-2 | 6.11.1-3 |\n| 🔄 | rpm-sequoia | 1.10.2-2 | 1.10.2-4 |\n| 🔄 | rsync | 3.4.1-7 | 3.4.4-1 |\n| 🔄 | vim | 9.2.780-1 | 9.2.782-1 |\n| 🔄 | virtualbox-guest-additions | 7.2.8-1 | 7.2.12-1 |\n| 🔄 | webapp-manager | master.mint22-1 | master.mint22-2 |\n| 🔄 | wlroots | 0.20.1-1 | 0.20.2-1 |\n| ❌ | kmod-sc0710 | 0^20260711git.b6ef85d-1 | |\n\n### Deck Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| ✨ | gamemode-news-hook | | 1.4.0-1 |\n| 🔄 | mbedtls | 3.6.6-2 | 3.6.7-1 |\n\n### KDE Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | gdb | 17.2-1 | 17.2-2 |\n| 🔄 | gpsd | 3.27.5-3 | 3.27.5-5 |\n| 🔄 | ibus-panel | 1.5.34-2 | 1.5.34-4 |\n| 🔄 | libtiff-devel | 4.7.1-2 | 4.7.2-1 |\n| 🔄 | m17n-db-devel | 1.8.13-1 | 1.8.14-1 |\n| 🔄 | mariadb-connector-c | 3.4.9-1 | 3.4.9-2 |\n| ❌ | plasma-discover | 6.7.2-1 | |\n\n### Gnome Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | NetworkManager-ssh | 1.4.5-1 | 1.4.5-2 |\n| 🔄 | ibus-gtk2 | 1.5.34-2 | 1.5.34-4 |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase testing\n# For this specific image:\nbazzite-rollback-helper rebase testing-44.20260721\n```\n"},{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/355514445","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/355514445/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/355514445/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/testing-44.20260717.1","id":355514445,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4VMLhN","tag_name":"testing-44.20260717.1","target_commitish":"main","name":"testing-44.20260717.1: Testing (F44.20260717, #a98bb09)","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-07-16T18:08:17Z","updated_at":"2026-07-17T06:45:40Z","published_at":"2026-07-17T06:45:40Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/testing-44.20260717.1","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/testing-44.20260717.1","body":"This is an automatically generated changelog for release `testing-44.20260717.1`.\n\nFrom previous `testing` version `testing-44.20260717` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.1.3-ogc3.4 |\n| **Firmware** | 20260622-1 |\n| **Mesa** | 26.1.4-2 |\n| **Gamescope** | 137.9b021486-1 |\n| **Gamescope Session** | 0~20260202git.b5c2d0d-4 |\n| **InputPlumber** | 0.77.7-1 |\n| **OpenGamepadUI** | 0.45.1-1 |\n| **PowerStation** | 0.8.1-1 |\n| **SteamOS-Manager** | 0~20260528.git37d1cb6-4 |\n| **Bazaar** | 0.9.1-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.2-1 |\n| **Nvidia Open** | 610.43.03-1 |\n| **Nvidia LTS** | 580.173.02-1 |\n\n### Commits\n| Hash | Subject | Author |\n| --- | --- | --- |\n| **[a98bb09](https://github.com/ublue-os/bazzite/commit/a98bb09afe8583951ea2257f010f11b635a153ba)** | chore: Add mangohud spec | Kyle Gospodnetich |\n\n### KDE Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | perl-HTTP-Date | 6.06-8 | 6.08-1 |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase testing\n# For this specific image:\nbazzite-rollback-helper rebase testing-44.20260717.1\n```\n"},{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/355432076","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/355432076/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/355432076/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/testing-44.20260717","id":355432076,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4VL3aM","tag_name":"testing-44.20260717","target_commitish":"main","name":"testing-44.20260717: Testing (F44.20260717, #e3b00ac)","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-07-16T18:08:17Z","updated_at":"2026-07-17T01:48:07Z","published_at":"2026-07-17T01:48:07Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/testing-44.20260717","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/testing-44.20260717","body":"This is an automatically generated changelog for release `testing-44.20260717`.\n\nFrom previous `testing` version `testing-44.20260715` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.1.3-ogc3.4 |\n| **Firmware** | 20260622-1 |\n| **Mesa** | 26.1.4-2 |\n| **Gamescope** | 137.9b021486-1 |\n| **Gamescope Session** | 0~20260202git.b5c2d0d-4 |\n| **InputPlumber** | 0.77.7-1 |\n| **OpenGamepadUI** | 0.45.1-1 |\n| **PowerStation** | 0.8.1-1 |\n| **SteamOS-Manager** | 0~20260528.git37d1cb6-3 ➡️ 0~20260528.git37d1cb6-4 |\n| **Bazaar** | 0.9.1-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.2-1 |\n| **Nvidia Open** | 610.43.03-1 |\n| **Nvidia LTS** | 580.173.02-1 |\n\n### Commits\n| Hash | Subject | Author |\n| --- | --- | --- |\n| **[e3b00ac](https://github.com/ublue-os/bazzite/commit/e3b00aca29776f80aeba24254778d063aae3ad07)** | Revert \"chore: remove ppfeaturemask karg setup\" | Kyle Gospodnetich |\n| **[cb02688](https://github.com/ublue-os/bazzite/commit/cb026883922f794138683ae051cf76162837aba8)** | feat: Add notifier for Nvidia Flatpak Runtime Mismatch (#5242) | Alex Shek |\n| **[34c4155](https://github.com/ublue-os/bazzite/commit/34c415566f9b39d4b1d49bb85b2423374b5d98d0)** | chore(deps): update github/codeql-action digest to 7188fc3 (#5246) | ubot-7274[bot] |\n| **[93cd131](https://github.com/ublue-os/bazzite/commit/93cd131694c6924f4f8edb6ef8ea68dbbec6711e)** | chore(deps): update actions/attest action to v4.2.0 (#5248) | ubot-7274[bot] |\n| **[1ed0517](https://github.com/ublue-os/bazzite/commit/1ed051746b6ea26e0d2efdbfcb3f41e7aaf0c79a)** | chore(deps): update system_files/desktop/silverblue/usr/share/gnome-shell/extensions/blur-my-shell@aunetx digest to a4e022e (#5244) | ubot-7274[bot] |\n| **[8452da3](https://github.com/ublue-os/bazzite/commit/8452da3dc2f499354a88adc8c30fd64dc7dfcfa6)** | fix: add kernel-tools back for useful tools like cpupower (#5231) | stellaberrant |\n\n### All Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| ✨ | kernel-tools | | 7.1.3-201 |\n| 🔄 | binutils | 2.46-3 | 2.46.1-1 |\n\n### Gnome Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | gnome-shell-extension-gsconnect | 72-2 | 72-3 |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase testing\n# For this specific image:\nbazzite-rollback-helper rebase testing-44.20260717\n```\n"},{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/354719876","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/354719876/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/354719876/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/testing-44.20260715","id":354719876,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4VJJiE","tag_name":"testing-44.20260715","target_commitish":"main","name":"testing-44.20260715: Testing (F44.20260715, #b0579fa)","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-07-13T15:50:41Z","updated_at":"2026-07-15T21:21:48Z","published_at":"2026-07-15T21:21:48Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/testing-44.20260715","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/testing-44.20260715","body":"This is an automatically generated changelog for release `testing-44.20260715`.\n\nFrom previous `testing` version `testing-44.20260714.1` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.1.3-ogc3.4 |\n| **Firmware** | 20260622-1 |\n| **Mesa** | 26.1.4-2 |\n| **Gamescope** | 137.9b021486-1 |\n| **Gamescope Session** | 0~20260202git.b5c2d0d-4 |\n| **InputPlumber** | 0.77.7-1 |\n| **OpenGamepadUI** | 0.45.0-2 ➡️ 0.45.1-1 |\n| **PowerStation** | 0.8.1-1 |\n| **SteamOS-Manager** | 0~20260528.git37d1cb6-3 |\n| **Bazaar** | 0.9.1-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.2-1 |\n| **Nvidia Open** | 610.43.03-1 |\n| **Nvidia LTS** | 580.173.02-1 |\n\n### Commits\n| Hash | Subject | Author |\n| --- | --- | --- |\n| **[b0579fa](https://github.com/ublue-os/bazzite/commit/b0579fa401ced4f330804c7fa6c04f760f46cef8)** | Add Homebrew trust for LizardByte repository (#5237) | Andy East |\n| **[08eb204](https://github.com/ublue-os/bazzite/commit/08eb2044bd0421080da0862814527253513d3076)** | feat: add specs for search packages for bazzite portal (#5228) | Alex Shek |\n\n### All Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | rust-topgrade | 17.7.0-1 | 17.8.0-1 |\n| 🔄 | tailscale | 1.98.8-1 | 1.98.9-1 |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase testing\n# For this specific image:\nbazzite-rollback-helper rebase testing-44.20260715\n```\n"},{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/353840759","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/353840759/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/353840759/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/testing-44.20260714.1","id":353840759,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4VFy53","tag_name":"testing-44.20260714.1","target_commitish":"main","name":"testing-44.20260714.1: Testing (F44.20260714, #1ab2112)","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-07-13T15:50:41Z","updated_at":"2026-07-14T14:06:27Z","published_at":"2026-07-14T14:06:27Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/testing-44.20260714.1","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/testing-44.20260714.1","body":"This is an automatically generated changelog for release `testing-44.20260714.1`.\n\nFrom previous `testing` version `testing-44.20260714` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.1.3-ogc3.4 |\n| **Firmware** | 20260622-1 |\n| **Mesa** | 26.1.4-2 |\n| **Gamescope** | 137.9b021486-1 |\n| **Gamescope Session** | 0~20260202git.b5c2d0d-4 |\n| **InputPlumber** | 0.77.7-1 |\n| **OpenGamepadUI** | 0.45.0-2 |\n| **PowerStation** | 0.8.1-1 |\n| **SteamOS-Manager** | 0~20260528.git37d1cb6-3 |\n| **Bazaar** | 0.9.1-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.2-1 |\n| **Nvidia Open** | 610.43.03-1 |\n| **Nvidia LTS** | 580.173.02-1 |\n\n### Commits\n| Hash | Subject | Author |\n| --- | --- | --- |\n| **[1ab2112](https://github.com/ublue-os/bazzite/commit/1ab2112424d840c07476ac4fce69ffe4521cfcdd)** | fix: Add ignore configs for external controllers (#5223) | HikariKnight |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase testing\n# For this specific image:\nbazzite-rollback-helper rebase testing-44.20260714.1\n```\n"},{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/353605641","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/353605641/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/353605641/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/testing-44.20260714","id":353605641,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4VE5gJ","tag_name":"testing-44.20260714","target_commitish":"main","name":"testing-44.20260714: Testing (F44.20260714, #e6787f7)","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-07-13T15:50:41Z","updated_at":"2026-07-14T06:31:53Z","published_at":"2026-07-14T06:31:53Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/testing-44.20260714","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/testing-44.20260714","body":"This is an automatically generated changelog for release `testing-44.20260714`.\n\nFrom previous `testing` version `testing-44.20260711` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.1.3-ogc3.4 |\n| **Firmware** | 20260622-1 |\n| **Mesa** | 26.1.4-2 |\n| **Gamescope** | 137.9b021486-1 |\n| **Gamescope Session** | 0~20260202git.b5c2d0d-4 |\n| **InputPlumber** | 0.77.7-1 |\n| **OpenGamepadUI** | 0.45.0-2 |\n| **PowerStation** | 0.8.1-1 |\n| **SteamOS-Manager** | 0~20260528.git37d1cb6-3 |\n| **Bazaar** | 0.9.1-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.2-1 |\n| **Nvidia Open** | 610.43.03-1 |\n| **Nvidia LTS** | 580.173.02-1 |\n\n### Commits\n| Hash | Subject | Author |\n| --- | --- | --- |\n| **[e6787f7](https://github.com/ublue-os/bazzite/commit/e6787f76d127b8d37567b608fd8a56075620522b)** | feat(deck): Enable OGUI only on known handhelds for now | Kyle Gospodnetich |\n| **[9bef617](https://github.com/ublue-os/bazzite/commit/9bef61794ae5b0ebce725b350ebfeb76d4955847)** | chore: Standardize naming convention p2 | Kyle Gospodnetich |\n| **[2767693](https://github.com/ublue-os/bazzite/commit/2767693023b4dbd298d86229adc34ad123c3a1b4)** | chore: Standardize naming convention | Kyle Gospodnetich |\n| **[ef08047](https://github.com/ublue-os/bazzite/commit/ef080476e5c3d0c214a32df93883b53ad65aae11)** | chore: No need to check, this runs only once now. | Kyle Gospodnetich |\n| **[60f1b9f](https://github.com/ublue-os/bazzite/commit/60f1b9f3bb345f61e20d4e0e91591e1f59326523)** | fix: Temporary patch for OGUI crash for some users | Kyle Gospodnetich |\n| **[0416249](https://github.com/ublue-os/bazzite/commit/04162492ba8828e32d77487b1575a8c693d59927)** | fix: Clean up IWD script | Kyle Gospodnetich |\n| **[7d098c8](https://github.com/ublue-os/bazzite/commit/7d098c893cf1ff414ac806fb03cda96233416803)** | chore(deps): update softprops/action-gh-release digest to 3d0d988 (#5225) | ubot-7274[bot] |\n| **[087e65e](https://github.com/ublue-os/bazzite/commit/087e65e5db648aefe6607b6eb0ff3d9328952448)** | chore(deps): update oras-project/setup-oras action to v2.0.1 (#5215) | ubot-7274[bot] |\n\n### All Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | acl | 2.3.2-6 | 2.4.0-1 |\n| 🔄 | attr | 2.5.2-8 | 2.6.0-1 |\n| 🔄 | breeze-icon-theme | 6.27.0-1 | 6.28.0-1 |\n| 🔄 | c-ares | 1.34.7-1 | 1.34.8-1 |\n| 🔄 | cage | 0.3.0-1 | 0.3.1-1 |\n| 🔄 | cjson | 1.7.18-5 | 1.7.19-1 |\n| 🔄 | fastfetch | 2.65.2-2 | 2.66.0-1 |\n| 🔄 | gstreamer1 | 1.28.4-1 | 1.28.5-1 |\n| 🔄 | javascriptcoregtk4.1 | 2.52.4-1 | 2.52.5-1 |\n| 🔄 | kmod-sc0710 | 0^20260702git.921ca8e-1 | 0^20260711git.b6ef85d-1 |\n| 🔄 | librabbitmq | 0.16.0-1 | 0.17.0-1 |\n| 🔄 | libsss_certmap | 2.13.1-1 | 2.13.1-2 |\n| 🔄 | python-pillow | 12.2.0-1 | 12.3.0-1 |\n| 🔄 | python3-boto3 | 1.43.42-1 | 1.43.44-1 |\n| 🔄 | python3-idna | 3.11-2 | 3.18-1 |\n\n### Deck Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | xorg-x11-server | 21.1.23-1 | 21.1.24-1 |\n\n### KDE Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | kf6-attica | 6.27.0-1 | 6.28.0-1 |\n| ❌ | ebook-tools | 0.2.2-31 | |\n\n### Gnome Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | NetworkManager-ssh | 1.4.4-1 | 1.4.5-1 |\n| 🔄 | geoclue2-libs | 2.8.1-1 | 2.8.2-1 |\n| 🔄 | gst-editing-services | 1.28.4-1 | 1.28.5-1 |\n| 🔄 | xorg-x11-server | 21.1.23-1 | 21.1.24-1 |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase testing\n# For this specific image:\nbazzite-rollback-helper rebase testing-44.20260714\n```\n"},{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/352968339","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/352968339/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/352968339/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/44.20260713","id":352968339,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4VCd6T","tag_name":"44.20260713","target_commitish":"main","name":"44.20260713: Stable (F44.20260713)","draft":false,"immutable":false,"prerelease":false,"created_at":"2026-07-11T17:29:50Z","updated_at":"2026-07-13T06:47:03Z","published_at":"2026-07-13T06:47:03Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/44.20260713","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/44.20260713","body":"This is an automatically generated changelog for release `44.20260713`.\n\nFrom previous `stable` version `44.20260629` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.0.9-ogc3.2 ➡️ 7.1.3-ogc3.4 |\n| **Firmware** | 20260519-1 ➡️ 20260622-1 |\n| **Mesa** | 26.1.3-1 ➡️ 26.1.4-2 |\n| **Gamescope** | 137.7c5ebe99-1 ➡️ 137.9b021486-1 |\n| **Bazaar** | 0.8.3-3 ➡️ 0.9.1-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.1-1 ➡️ 6.7.2-1 |\n| **Nvidia Open** | 610.43.02-1 ➡️ 610.43.03-1 |\n| **Nvidia LTS** | 580.159.04-1 ➡️ 580.173.02-1 |\n\n### Commits\n| Hash | Subject | Author |\n| --- | --- | --- |\n| **[adfd221](https://github.com/ublue-os/bazzite/commit/adfd2215ed2a43c5dedd360478ba36816ffb3a76)** | chore(deps): update oras-project/setup-oras action to v2.0.1 (#5215) | ubot-7274[bot] |\n| **[938fe74](https://github.com/ublue-os/bazzite/commit/938fe74aa2693f2e179d10a66e1dbb46230b127f)** | feat: Update to new version of Bazaar config | Kyle Gospodnetich |\n| **[1c5b7bc](https://github.com/ublue-os/bazzite/commit/1c5b7bccfbbd43c4406ba3060e74a03dd748767f)** | chore: Drop CSS from Bazaar curated | Kyle Gospodnetich |\n| **[f2bd7b6](https://github.com/ublue-os/bazzite/commit/f2bd7b666a213a1d155912702b071146c1277eb6)** | feat: Add Waywallen to Bazaar Utilities section | Kyle Gospodnetich |\n| **[958d3e6](https://github.com/ublue-os/bazzite/commit/958d3e6850e585625ceb0d795bf9305dd4d621d4)** | chore: Update to latest 7.1.3 build | Kyle Gospodnetich |\n| **[67b65b5](https://github.com/ublue-os/bazzite/commit/67b65b502ff4916a0c289b713f046983deacaaa1)** | feat(kde): Add Oxygen theme by default | Kyle Gospodnetich |\n| **[4655b1c](https://github.com/ublue-os/bazzite/commit/4655b1c3398c21c3bf2ee98615f65d379562938d)** | chore(deps): update system_files/desktop/silverblue/usr/share/gnome-shell/extensions/blur-my-shell@aunetx digest to 5a20b25 (#5207) | ubot-7274[bot] |\n| **[b5a5c46](https://github.com/ublue-os/bazzite/commit/b5a5c46f9b2517585fd13b75749b703a8ad628ae)** | chore(deps): update system_files/desktop/silverblue/usr/share/gnome-shell/extensions/blur-my-shell@aunetx digest to 900c257 (#5164) | ubot-7274[bot] |\n| **[7da924b](https://github.com/ublue-os/bazzite/commit/7da924bf933943e549613cb55d5d34c771c26713)** | chore(deps): update github/codeql-action digest to 99df26d (#5201) | ubot-7274[bot] |\n| **[179291b](https://github.com/ublue-os/bazzite/commit/179291b11dc9a402d882d779aff416fbb93d68d5)** | chore: Add new files to spec | Kyle Gospodnetich |\n| **[f3fc546](https://github.com/ublue-os/bazzite/commit/f3fc546ed827f08bfa7ee12486734e566d5a3d51)** | chore: Update bazzite-updater to 0.8.0 | Kyle Gospodnetich |\n| **[17e598c](https://github.com/ublue-os/bazzite/commit/17e598c66a693a2116c226f52ae1496608164a0a)** | feat(kde): add fcitx5-table-extra for more Chinese IME (#5196) | Kyle Kwong |\n| **[5255289](https://github.com/ublue-os/bazzite/commit/52552896edbe500b4b784418623e5d90d6ff9439)** | chore(deps): update docker/login-action digest to af1e73f (#5185) | ubot-7274[bot] |\n| **[f415525](https://github.com/ublue-os/bazzite/commit/f41552593b837befe47fd27a62918afd711f00b3)** | chore(deps): update docker/login-action digest to c99871d (#5178) | ubot-7274[bot] |\n| **[f07c1a5](https://github.com/ublue-os/bazzite/commit/f07c1a53420fca76461736ea2c0ddfeaf1528402)** | chore(deps): update github/codeql-action digest to 54f647b (#5180) | ubot-7274[bot] |\n\n### All Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| ✨ | kmod-openrazer | | 100.0.0.git.723.878ab5a5-1 |\n| 🔄 | 7zip | 26.01-1 | 26.02-1 |\n| 🔄 | SDL3 | 3.4.10-1 | 3.4.12-1 |\n| 🔄 | acl | 2.3.2-6 | 2.4.0-1 |\n| 🔄 | appstream | 1.1.0-3 | 1.1.3-1 |\n| 🔄 | at-spi2-atk | 2.60.4-1 | 2.60.5-1 |\n| 🔄 | attr | 2.5.2-8 | 2.6.0-1 |\n| 🔄 | bootupd | 0.2.34-1 | 0.2.35-1 |\n| 🔄 | c-ares | 1.34.6-3 | 1.34.8-1 |\n| 🔄 | cage | 0.3.0-1 | 0.3.1-1 |\n| 🔄 | cifs-utils | 7.6-1 | 7.6-2 |\n| 🔄 | cjson | 1.7.18-5 | 1.7.19-1 |\n| 🔄 | cockpit-podman | 127-1 | 128-1 |\n| 🔄 | container-selinux | 2.249.0-1 | 2.250.0-1 |\n| 🔄 | criu | 4.2-13 | 4.2-21 |\n| 🔄 | edk2-ovmf | 20260508-4 | 20260508-6 |\n| 🔄 | enchant2 | 2.8.16-1 | 2.8.18-1 |\n| 🔄 | fastfetch | 2.63.1-1 | 2.65.2-2 |\n| 🔄 | ffmpeg | 8.1.1-2 | 8.1.2-1 |\n| 🔄 | firewall-config | 2.4.0-2 | 2.4.4-1 |\n| 🔄 | framework-system | 0.6.4-1 | 0.6.5-1 |\n| 🔄 | fzf | 0.73.1-1 | 0.74.0-1 |\n| 🔄 | git | 2.54.0-1 | 2.55.0-1 |\n| 🔄 | glibc | 2.43-6 | 2.43-7 |\n| 🔄 | glibmm2.68 | 2.88.0-1 | 2.88.1-1 |\n| 🔄 | glycin | 2.1.1-1 | 2.1.5-1 |\n| 🔄 | gpgme | 2.0.1-4 | 2.0.1-5 |\n| 🔄 | gssdp | 1.6.5-1 | 1.6.6-1 |\n| 🔄 | gstreamer1 | 1.28.4-1 | 1.28.5-1 |\n| 🔄 | hplip | 3.26.4-6 | 3.26.4-7 |\n| 🔄 | hwdata | 0.408-1 | 0.409-1 |\n| 🔄 | icu | 77.1-2 | 77.1-3 |\n| 🔄 | input-remapper | 2.2.0-2 | 2.2.1-1 |\n| 🔄 | intel-media-driver | 26.2.2-1 | 26.2.4-1 |\n| 🔄 | ipp-usb | 0.9.31-2 | 0.9.34-2 |\n| 🔄 | javascriptcoregtk4.1 | 2.52.4-1 | 2.52.5-1 |\n| 🔄 | just | 1.51.0-1 | 1.55.1-1 |\n| 🔄 | kf6-filesystem | 6.27.0-1 | 6.28.0-1 |\n| 🔄 | kmod-evdi | 1.14.16-1 | 1.15.0-1 |\n| 🔄 | kmod-sc0710 | 0^20260627git.ba67d19-1 | 0^20260711git.b6ef85d-1 |\n| 🔄 | kmod-v4l2loopback | 0.15.3-2 | 0.15.4-1 |\n| 🔄 | leptonica | 1.87.0-3 | 1.87.0-4 |\n| 🔄 | libXfont2 | 2.0.7-4 | 2.0.8-1 |\n| 🔄 | libadwaita | 1.9.1-1 | 1.9.2-1 |\n| 🔄 | libchewing | 0.11.0-2 | 0.13.0-1 |\n| 🔄 | libldb | 4.24.3-1 | 4.24.4-1 |\n| 🔄 | librabbitmq | 0.16.0-1 | 0.17.0-1 |\n| 🔄 | libsss_certmap | 2.13.1-1 | 2.13.1-2 |\n| 🔄 | libvpl | 2.16.0-2 | 2.17.0-1 |\n| 🔄 | libwayland-client | 1.24.0-3 | 1.25.0-1 |\n| 🔄 | libxmlb | 0.3.26-1 | 0.3.28-1 |\n| 🔄 | makemkv | 1.18.3-1 | 1.18.4-1 |\n| 🔄 | openssh | 10.2p1-10 | 10.2p1-12 |\n| 🔄 | openvpn | 2.7.3-1 | 2.7.5-1 |\n| 🔄 | openxr | 1.1.60-1 | 1.1.61-1 |\n| 🔄 | pam | 1.7.2-1 | 1.7.2-2 |\n| 🔄 | pipewire | 1.6.7-1 | 1.6.8-1 |\n| 🔄 | podman | 5.8.3-1 | 5.8.4-1 |\n| 🔄 | python-pillow | 12.2.0-1 | 12.3.0-1 |\n| 🔄 | python-rpds-py | 0.29.0-2 | 0.29.0-4 |\n| 🔄 | python3-beautifulsoup4 | 4.14.3-2 | 4.15.0-1 |\n| 🔄 | python3-boto3 | 1.43.31-1 | 1.43.44-1 |\n| 🔄 | python3-idna | 3.11-2 | 3.18-1 |\n| 🔄 | python3-yubikey-manager | 5.9.1-1.20260415gitbc866e8 | 5.9.2-1.20260630git60ab055 |\n| 🔄 | rar | 7.22-1 | 7.23-1 |\n| 🔄 | rpcbind | 1.2.9-0 | 1.2.9-2 |\n| 🔄 | rust-topgrade | 17.6.2-1 | 17.7.0-1 |\n| 🔄 | selinux-policy | 44.3-1 | 44.4-1 |\n| 🔄 | solaar-udev | 1.1.19-1 | 1.1.20-1 |\n| 🔄 | steam-devices | 1.0.0.101^git20260611.bbf6cf0-2 | 1.0.0.101^git20260625.22ec85e-1 |\n| 🔄 | tailscale | 1.98.4-1 | 1.98.8-1 |\n| 🔄 | tmux | 3.6b-1 | 3.7b-2 |\n| 🔄 | upower | 1.91.2-1 | 1.91.3-1 |\n| 🔄 | vim | 9.2.725-1 | 9.2.780-1 |\n| ❌ | python3-pydbus | 0.6.0-34 | |\n\n### KDE Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| ✨ | oxygen-icon-theme | | 6.27.0-2 |\n| 🔄 | MariaDB | 11.8.6-1 | 11.8.8-1 |\n| 🔄 | akonadi-server | 26.04.2-1 | 26.04.3-2 |\n| 🔄 | appstream-qt | 1.1.0-3 | 1.1.3-1 |\n| 🔄 | breeze-icon-theme | 6.27.0-1 | 6.28.0-1 |\n| 🔄 | fcitx5 | 5.1.19-1 | 5.1.21-1 |\n| 🔄 | fcitx5-chewing | 5.1.11-1 | 5.1.12-1 |\n| 🔄 | fcitx5-configtool | 5.1.13-1 | 5.1.14-1 |\n| 🔄 | fcitx5-gtk | 5.1.6-1 | 5.1.7-1 |\n| 🔄 | fcitx5-hangul | 5.1.9-1 | 5.1.10-1 |\n| 🔄 | fcitx5-lua | 5.0.16-1 | 5.0.17-1 |\n| 🔄 | gdb | 17.1-6 | 17.2-1 |\n| 🔄 | leptonica-devel | 1.87.0-3 | 1.87.0-4 |\n| 🔄 | libime | 1.1.14-1 | 1.1.15-1 |\n| 🔄 | libkworkspace6 | 6.7.1-1 | 6.7.2-2 |\n| 🔄 | libnetapi | 4.24.3-1 | 4.24.4-1 |\n| 🔄 | m17n-db-devel | 1.8.12-1 | 1.8.13-1 |\n| 🔄 | mariadb | 11.8.6-2 | 11.8.8-3 |\n| 🔄 | qtkeychain | 0.15.0-3 | 0.16.0-1 |\n| ❌ | ebook-tools | 0.2.2-31 | |\n| ❌ | openh264 | 2.6.0-1 | |\n\n### Gnome Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | NetworkManager-ssh | 1.4.4-1 | 1.4.5-1 |\n| 🔄 | geoclue2-libs | 2.8.1-1 | 2.8.2-1 |\n| 🔄 | gjs | 1.88.0-1 | 1.88.1-1 |\n| 🔄 | glycin-thumbnailer | 2.1.1-1 | 2.1.5-1 |\n| 🔄 | gnome-user-share | 48.2-1 | 48.3-1 |\n| 🔄 | gst-editing-services | 1.28.4-1 | 1.28.5-1 |\n| 🔄 | libgexiv2 | 0.16.0-2 | 0.16.1-1 |\n| 🔄 | papers | 49.6-1 | 49.7-1 |\n| 🔄 | xorg-x11-server | 21.1.23-1 | 21.1.24-1 |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase stable\n# For this specific image:\nbazzite-rollback-helper rebase 44.20260713\n```\n","reactions":{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/352968339/reactions","total_count":18,"+1":6,"-1":0,"laugh":0,"hooray":3,"confused":0,"heart":6,"rocket":3,"eyes":0}},{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/352555357","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/352555357/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/352555357/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/testing-44.20260711","id":352555357,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4VA5Fd","tag_name":"testing-44.20260711","target_commitish":"main","name":"testing-44.20260711: Testing (F44.20260711, #054fa22)","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-07-10T20:29:09Z","updated_at":"2026-07-11T16:08:33Z","published_at":"2026-07-11T16:08:33Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/testing-44.20260711","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/testing-44.20260711","body":"This is an automatically generated changelog for release `testing-44.20260711`.\n\nFrom previous `testing` version `testing-44.20260710.3` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.1.3-ogc3.4 |\n| **Firmware** | 20260622-1 |\n| **Mesa** | 26.1.4-1 ➡️ 26.1.4-2 |\n| **Gamescope** | 137.9b021486-1 |\n| **Gamescope Session** | 0~20260202git.b5c2d0d-4 |\n| **InputPlumber** | 0.77.7-1 |\n| **OpenGamepadUI** | 0.45.0-2 |\n| **PowerStation** | 0.8.1-1 |\n| **SteamOS-Manager** | 0~20260528.git37d1cb6-3 |\n| **Bazaar** | 0.9.1-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.2-1 |\n| **Nvidia Open** | 610.43.03-1 |\n| **Nvidia LTS** | 580.173.02-1 |\n\n### Commits\n| Hash | Subject | Author |\n| --- | --- | --- |\n| **[054fa22](https://github.com/ublue-os/bazzite/commit/054fa228a582d5dd3f4b8f8ccc446c5e44a2e8ce)** | chore(Bazaar): Update Thunderbird ID (#5211) | Crono |\n| **[429d6b3](https://github.com/ublue-os/bazzite/commit/429d6b3edbffd2364183787bfa64d9fb2214d477)** | chore(Bazaar): Add Mimic to the Utilities section (#5212) | Crono |\n| **[265cce5](https://github.com/ublue-os/bazzite/commit/265cce5b30397f1a5a0d551447dfbcdbc46221d0)** | chore(Bazaar): Give the pt_BR locale another pass (#5213) | Crono |\n| **[2598cb8](https://github.com/ublue-os/bazzite/commit/2598cb81a19cbe32c5f3fdbee82d0fe8bfed5bb5)** | feat: Update to new version of Bazaar config | Kyle Gospodnetich |\n| **[0a5163c](https://github.com/ublue-os/bazzite/commit/0a5163c21811822be12b3c621aa8c3f0d7700688)** | chore: typo correction | Kyle Gospodnetich |\n| **[829895e](https://github.com/ublue-os/bazzite/commit/829895e5faf1e7f0d2bbb38238a77b40a1c9e602)** | chore: Drop CSS from Bazaar curated | Kyle Gospodnetich |\n| **[ffc7acc](https://github.com/ublue-os/bazzite/commit/ffc7acc863ef05b5c83c5422b897676ee347a9c2)** | feat: Add Waywallen to Bazaar Utilities section | Kyle Gospodnetich |\n| **[240c081](https://github.com/ublue-os/bazzite/commit/240c081931d709a2d8c4e17409f50810930b0232)** | feat: Drop IWD due to discussion with Intel team, this may be maintained by Valve in the future (speculation), but that's not enough to continue using it given they often use an older kernel and it's speculated newer kernel releases will break IWD in the future. Originally this was added to sync with SteamOS & Improve streaming latency/stability with Sunshine. | Kyle Gospodnetich |\n\n### All Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | edk2-ovmf | 20260508-4 | 20260508-6 |\n| 🔄 | fastfetch | 2.65.2-1 | 2.65.2-2 |\n| 🔄 | firewall-config | 2.4.0-2 | 2.4.4-1 |\n| 🔄 | kmod-v4l2loopback | 0.15.3-2 | 0.15.4-1 |\n| 🔄 | rust-topgrade | 17.6.2-1 | 17.7.0-1 |\n| 🔄 | tmux | 3.7-2 | 3.7b-2 |\n\n### Deck Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| ❌ | iwd | 1000.3.10-1.bazzite | |\n| ❌ | libell | 0.83-1 | |\n\n### KDE Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | fcitx5 | 5.1.19-1 | 5.1.21-1 |\n| 🔄 | fcitx5-chewing | 5.1.11-1 | 5.1.12-1 |\n| 🔄 | fcitx5-configtool | 5.1.13-1 | 5.1.14-1 |\n| 🔄 | fcitx5-gtk | 5.1.6-1 | 5.1.7-1 |\n| 🔄 | fcitx5-hangul | 5.1.9-1 | 5.1.10-1 |\n| 🔄 | fcitx5-lua | 5.0.16-1 | 5.0.17-1 |\n| 🔄 | libime | 1.1.14-1 | 1.1.15-1 |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase testing\n# For this specific image:\nbazzite-rollback-helper rebase testing-44.20260711\n```\n"},{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/352178543","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/352178543/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/352178543/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/testing-44.20260710.2","id":352178543,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4U_dFv","tag_name":"testing-44.20260710.2","target_commitish":"main","name":"testing-44.20260710.2: Testing (F44.20260710, #982d035)","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-07-10T05:27:49Z","updated_at":"2026-07-10T15:23:02Z","published_at":"2026-07-10T15:23:02Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/testing-44.20260710.2","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/testing-44.20260710.2","body":"This is an automatically generated changelog for release `testing-44.20260710.2`.\n\nFrom previous `testing` version `testing-44.20260710.1` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.1.3-ogc3.3 ➡️ 7.1.3-ogc3.4 |\n| **Firmware** | 20260622-1 |\n| **Mesa** | 26.1.3-1 |\n| **Gamescope** | 137.9b021486-1 |\n| **Gamescope Session** | 0~20260202git.b5c2d0d-4 |\n| **InputPlumber** | 0.77.7-1 |\n| **OpenGamepadUI** | 0.45.0-2 |\n| **PowerStation** | 0.8.1-1 |\n| **SteamOS-Manager** | 0~20260528.git37d1cb6-3 |\n| **Bazaar** | 0.9.1-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.2-1 |\n| **Nvidia Open** | 610.43.03-1 |\n| **Nvidia LTS** | 580.173.02-1 |\n\n### Commits\n| Hash | Subject | Author |\n| --- | --- | --- |\n| **[982d035](https://github.com/ublue-os/bazzite/commit/982d035e94ae025271bdcd642099ac4ded2ddc5d)** | chore: Update to latest 7.1.3 build | Kyle Gospodnetich |\n\n### All Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | fzf | 0.73.1-1 | 0.74.0-1 |\n| 🔄 | just | 1.53.0-1 | 1.55.1-1 |\n| 🔄 | tmux | 3.6b-1 | 3.7-2 |\n\n### Deck Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | pipewire-module-filter-chain-lv2 | 1.6.7-1 | 1.6.8-1 |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase testing\n# For this specific image:\nbazzite-rollback-helper rebase testing-44.20260710.2\n```\n"},{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/351916793","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/351916793/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/351916793/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/testing-44.20260710.1","id":351916793,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4U-dL5","tag_name":"testing-44.20260710.1","target_commitish":"main","name":"testing-44.20260710.1: Testing (F44.20260710, #982d035)","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-07-10T05:27:49Z","updated_at":"2026-07-10T05:51:09Z","published_at":"2026-07-10T05:51:09Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/testing-44.20260710.1","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/testing-44.20260710.1","body":"This is an automatically generated changelog for release `testing-44.20260710.1`.\n\nFrom previous `testing` version `testing-44.20260710` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.1.3-ogc3.3 |\n| **Firmware** | 20260622-1 |\n| **Mesa** | 26.1.3-1 |\n| **Gamescope** | 137.9b021486-1 |\n| **Gamescope Session** | 0~20260202git.b5c2d0d-4 |\n| **InputPlumber** | 0.77.7-1 |\n| **OpenGamepadUI** | 0.45.0-2 |\n| **PowerStation** | 0.8.1-1 |\n| **SteamOS-Manager** | 0~20260528.git37d1cb6-3 |\n| **Bazaar** | 0.9.1-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.2-1 |\n| **Nvidia Open** | 610.43.03-1 |\n| **Nvidia LTS** | 580.173.02-1 |\n\n### Commits\n| Hash | Subject | Author |\n| --- | --- | --- |\n| **[982d035](https://github.com/ublue-os/bazzite/commit/982d035e94ae025271bdcd642099ac4ded2ddc5d)** | chore: Update to latest 7.1.3 build | Kyle Gospodnetich |\n| **[d11cb1f](https://github.com/ublue-os/bazzite/commit/d11cb1fc20b8a53839c82167b2ec8a2a3d7e9b80)** | chore(deps): update system_files/desktop/silverblue/usr/share/gnome-shell/extensions/blur-my-shell@aunetx digest to 900c257 (#5164) | ubot-7274[bot] |\n| **[89e5750](https://github.com/ublue-os/bazzite/commit/89e575034fa16acdd08b4591b9de34db31d025dd)** | chore(deps): update github/codeql-action digest to 99df26d (#5201) | ubot-7274[bot] |\n| **[9946e34](https://github.com/ublue-os/bazzite/commit/9946e341f596f164b1c3710f11ca80d2888aaab7)** | chore(ba-hw): remove iwd fixup because upstream is dead (#5199) | Alex Shek |\n| **[0204b14](https://github.com/ublue-os/bazzite/commit/0204b141284e1647474b796ebe8a90717a99fb54)** | chore: Update logo menu | Kyle Gospodnetich |\n\n### All Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | pipewire | 1.6.7-1 | 1.6.8-1 |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase testing\n# For this specific image:\nbazzite-rollback-helper rebase testing-44.20260710.1\n```\n"},{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/351875933","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/351875933/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/351875933/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/testing-44.20260710","id":351875933,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4U-TNd","tag_name":"testing-44.20260710","target_commitish":"main","name":"testing-44.20260710: Testing (F44.20260710, #d11cb1f)","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-07-10T01:54:59Z","updated_at":"2026-07-10T02:59:08Z","published_at":"2026-07-10T02:59:08Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/testing-44.20260710","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/testing-44.20260710","body":"This is an automatically generated changelog for release `testing-44.20260710`.\n\nFrom previous `testing` version `testing-44.20260709.1` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.1.3-ogc3.1 ➡️ 7.1.3-ogc3.3 |\n| **Firmware** | 20260622-1 |\n| **Mesa** | 26.1.3-1 |\n| **Gamescope** | 137.9b021486-1 |\n| **Gamescope Session** | 0~20260202git.b5c2d0d-4 |\n| **InputPlumber** | 0.77.7-1 |\n| **OpenGamepadUI** | 0.45.0-2 |\n| **PowerStation** | 0.8.1-1 |\n| **SteamOS-Manager** | 0~20260528.git37d1cb6-3 |\n| **Bazaar** | 0.9.1-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.2-1 |\n| **Nvidia Open** | 610.43.02-1 ➡️ 610.43.03-1 |\n| **Nvidia LTS** | 580.173.02-1 |\n\n### All Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| ✨ | bazzite-updater | | 0.8.0-1 |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase testing\n# For this specific image:\nbazzite-rollback-helper rebase testing-44.20260710\n```\n"},{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/351325999","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/351325999/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/351325999/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/testing-44.20260709.1","id":351325999,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4U8M8v","tag_name":"testing-44.20260709.1","target_commitish":"main","name":"testing-44.20260709.1: Testing (F44.20260709, #c83d064)","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-07-06T04:13:06Z","updated_at":"2026-07-10T01:04:52Z","published_at":"2026-07-09T06:32:48Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/testing-44.20260709.1","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/testing-44.20260709.1","body":"This is an automatically generated changelog for release `testing-44.20260709.1`.\n\nFrom previous `testing` version `testing-44.20260709` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.1.3-ogc3.1 |\n| **Firmware** | 20260622-1 |\n| **Mesa** | 26.1.3-1 |\n| **Gamescope** | 137.9b021486-1 |\n| **Gamescope Session** | 0~20260202git.b5c2d0d-4 |\n| **InputPlumber** | 0.77.7-1 |\n| **OpenGamepadUI** | 0.45.0-2 |\n| **PowerStation** | 0.8.1-1 |\n| **SteamOS-Manager** | 0~20260528.git37d1cb6-3 |\n| **Bazaar** | 0.9.1-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.2-1 |\n| **Nvidia Open** | 610.43.02-1 |\n| **Nvidia LTS** | 580.173.02-1 |\n\n### Commits\n| Hash | Subject | Author |\n| --- | --- | --- |\n| **[c83d064](https://github.com/ublue-os/bazzite/commit/c83d064c55d8b001b242c0660704cb460bc3d0e0)** | chore: Update to latest 7.1.3 build | Kyle Gospodnetich |\n| **[034eff6](https://github.com/ublue-os/bazzite/commit/034eff62ee061ccae4556ab8e67e9ae84cba0919)** | chore: Don't use bazzite-updater from terra | Kyle Gospodnetich |\n| **[d541fd8](https://github.com/ublue-os/bazzite/commit/d541fd8b19780d9555d858ff5b51c48ed54dfb7c)** | chore: Ensure user services are enabled properly for steamos-manager | Kyle Gospodnetich |\n| **[ce64c5a](https://github.com/ublue-os/bazzite/commit/ce64c5acb33a8628a3f502914f4ce75207654b4a)** | chore: Update logo menu extension | Kyle Gospodnetich |\n| **[cfe1810](https://github.com/ublue-os/bazzite/commit/cfe181091a822c0e3a184d84dce418c5a58f9781)** | chore: Use new package name | Kyle Gospodnetich |\n| **[60be420](https://github.com/ublue-os/bazzite/commit/60be420e27498b43bfbaeba87dd2c32c3afa0eb3)** | Reapply \"feat: Use the new Bazzite GUI Updater\" | Kyle Gospodnetich |\n| **[3f0ab69](https://github.com/ublue-os/bazzite/commit/3f0ab6993d5e6ee1d3f32a87aacdec04209936b9)** | fix: Change default paths for steamos-manager to match ours | Kyle Gospodnetich |\n| **[a0018c3](https://github.com/ublue-os/bazzite/commit/a0018c3ceb2cbd476e098b68fc072562661750fd)** | chore: Update to latest 7.1.3 build | Kyle Gospodnetich |\n| **[548bb5d](https://github.com/ublue-os/bazzite/commit/548bb5d28458476a31b58fa7858918636bafff99)** | feat(kde): add fcitx5-table-extra for more Chinese IME (#5196) | Kyle Kwong |\n| **[4913e00](https://github.com/ublue-os/bazzite/commit/4913e00ea51f985466f0bc5e83dac9d8b7bfd4a7)** | chore(deps): update docker/login-action digest to af1e73f (#5185) | ubot-7274[bot] |\n| **[3d7de73](https://github.com/ublue-os/bazzite/commit/3d7de73f8d2ef5dcef915321889630e1940972f5)** | chore(deps): update docker/login-action digest to c99871d (#5178) | ubot-7274[bot] |\n| **[3815fc9](https://github.com/ublue-os/bazzite/commit/3815fc97d20572853ce09b8985a5f21c4756ae35)** | chore(deps): update github/codeql-action digest to 54f647b (#5180) | ubot-7274[bot] |\n\n### All Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | glibc | 2.43-6 | 2.43-7 |\n| 🔄 | libwayland-client | 1.24.0-3 | 1.25.0-1 |\n| 🔄 | openssh | 10.2p1-10 | 10.2p1-12 |\n| 🔄 | openxr | 1.1.60-1 | 1.1.61-1 |\n| 🔄 | steam-devices | 1.0.0.101^git20260611.bbf6cf0-2 | 1.0.0.101^git20260625.22ec85e-1 |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase testing\n# For this specific image:\nbazzite-rollback-helper rebase testing-44.20260709.1\n```\n"},{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/351281376","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/351281376/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/351281376/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/testing-44.20260709","id":351281376,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4U8CDg","tag_name":"testing-44.20260709","target_commitish":"main","name":"testing-44.20260709: Testing (F44.20260709, #1498c7d)","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-07-06T04:13:06Z","updated_at":"2026-07-09T03:35:06Z","published_at":"2026-07-09T03:35:06Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/testing-44.20260709","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/testing-44.20260709","body":"This is an automatically generated changelog for release `testing-44.20260709`.\n\nFrom previous `testing` version `testing-44.20260705.1` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.0.9-ogc3.2 ➡️ 7.1.3-ogc3.1 |\n| **Firmware** | 20260622-1 |\n| **Mesa** | 26.1.3-1 |\n| **Gamescope** | 137.7c5ebe99-1 ➡️ 137.9b021486-1 |\n| **Gamescope Session** | 0~20260202git.b5c2d0d-4 |\n| **InputPlumber** | 0.77.7-1 |\n| **OpenGamepadUI** | 0.45.0-2 |\n| **PowerStation** | 0.8.1-1 |\n| **SteamOS-Manager** | 0~20260528.git37d1cb6-3 |\n| **Bazaar** | 0.9.0-3 ➡️ 0.9.1-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.1-1 ➡️ 6.7.2-1 |\n| **Nvidia Open** | 610.43.02-1 |\n| **Nvidia LTS** | 580.173.02-1 |\n\n### Commits\n| Hash | Subject | Author |\n| --- | --- | --- |\n| **[1498c7d](https://github.com/ublue-os/bazzite/commit/1498c7d6630e6fe200050d7f73df33eacfec7caa)** | feat: Update kernel to 7.1.3-ogc3 | Kyle Gospodnetich |\n| **[f2fbd35](https://github.com/ublue-os/bazzite/commit/f2fbd357a8e6cfeb70f9df679b0f1bad98368bca)** | feat(troubleshooting): add inputplumber toggle (#5195) | Kurt Himebauch |\n\n### All Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| ✨ | kmod-openrazer | | 100.0.0.git.723.878ab5a5-1 |\n| 🔄 | appstream | 1.1.0-3 | 1.1.3-1 |\n| 🔄 | cifs-utils | 7.6-1 | 7.6-2 |\n| 🔄 | container-selinux | 2.249.0-1 | 2.250.0-1 |\n| 🔄 | criu | 4.2-13 | 4.2-21 |\n| 🔄 | fastfetch | 2.63.1-1 | 2.65.2-1 |\n| 🔄 | hplip | 3.26.4-6 | 3.26.4-7 |\n| 🔄 | hwdata | 0.408-1 | 0.409-1 |\n| 🔄 | input-remapper | 2.2.0-2 | 2.2.1-1 |\n| 🔄 | libldb | 4.24.3-1 | 4.24.4-1 |\n| 🔄 | libvpl | 2.16.0-2 | 2.17.0-1 |\n| 🔄 | podman | 5.8.3-1 | 5.8.4-1 |\n| 🔄 | python-rpds-py | 0.29.0-2 | 0.29.0-4 |\n| 🔄 | python3-yubikey-manager | 5.9.1-1.20260415gitbc866e8 | 5.9.2-1.20260630git60ab055 |\n| 🔄 | rar | 7.22-1 | 7.23-1 |\n| 🔄 | selinux-policy | 44.3-1 | 44.4-1 |\n| ❌ | python3-pydbus | 0.6.0-34 | |\n\n### KDE Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | akonadi-server | 26.04.2-1 | 26.04.3-1 |\n| 🔄 | appstream-qt | 1.1.0-3 | 1.1.3-1 |\n| 🔄 | gdb | 17.1-6 | 17.2-1 |\n| 🔄 | libkworkspace6 | 6.7.1-1 | 6.7.2-2 |\n| 🔄 | libnetapi | 4.24.3-1 | 4.24.4-1 |\n\n### Gnome Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | gnome-user-share | 48.2-1 | 48.3-1 |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase testing\n# For this specific image:\nbazzite-rollback-helper rebase testing-44.20260709\n```\n"},{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/349091346","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/349091346/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/349091346/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/testing-44.20260705.1","id":349091346,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4UzrYS","tag_name":"testing-44.20260705.1","target_commitish":"main","name":"testing-44.20260705.1: Testing (F44.20260705, #478073e)","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-07-03T18:26:08Z","updated_at":"2026-07-05T04:35:43Z","published_at":"2026-07-05T04:35:43Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/testing-44.20260705.1","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/testing-44.20260705.1","body":"This is an automatically generated changelog for release `testing-44.20260705.1`.\n\nFrom previous `testing` version `testing-44.20260705` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.1.2-ogc2.1 ➡️ 7.0.9-ogc3.2 |\n| **Firmware** | 20260622-1 |\n| **Mesa** | 26.1.3-1 |\n| **Gamescope** | 137.7c5ebe99-1 |\n| **Gamescope Session** | 0~20260202git.b5c2d0d-4 |\n| **InputPlumber** | 0.77.7-1 |\n| **OpenGamepadUI** | 0.45.0-2 |\n| **PowerStation** | 0.8.1-1 |\n| **SteamOS-Manager** | 0~20260528.git37d1cb6-3 |\n| **Bazaar** | 0.9.0-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.1-1 |\n| **Nvidia Open** | 610.43.02-1 |\n| **Nvidia LTS** | 580.173.02-1 |\n\n### Commits\n| Hash | Subject | Author |\n| --- | --- | --- |\n| **[478073e](https://github.com/ublue-os/bazzite/commit/478073e90ba311784a45fc31149e1aa8d2f51719)** | chore: Roll back kernel for now, need to debug amdgpu issue | Kyle Gospodnetich |\n\n### All Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | vim | 9.2.725-1 | 9.2.780-1 |\n| ❌ | kmod-openrazer | 100.0.0.git.723.878ab5a5-1 | |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase testing\n# For this specific image:\nbazzite-rollback-helper rebase testing-44.20260705.1\n```\n"},{"url":"https://api.github.com/repos/ublue-os/bazzite/releases/349069940","assets_url":"https://api.github.com/repos/ublue-os/bazzite/releases/349069940/assets","upload_url":"https://uploads.github.com/repos/ublue-os/bazzite/releases/349069940/assets{?name,label}","html_url":"https://github.com/ublue-os/bazzite/releases/tag/testing-44.20260705","id":349069940,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOI78thc4UzmJ0","tag_name":"testing-44.20260705","target_commitish":"main","name":"testing-44.20260705: Testing (F44.20260705, #2c40074)","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-07-03T18:26:08Z","updated_at":"2026-07-05T01:23:34Z","published_at":"2026-07-05T01:23:34Z","assets":[],"tarball_url":"https://api.github.com/repos/ublue-os/bazzite/tarball/testing-44.20260705","zipball_url":"https://api.github.com/repos/ublue-os/bazzite/zipball/testing-44.20260705","body":"This is an automatically generated changelog for release `testing-44.20260705`.\n\nFrom previous `testing` version `testing-44.20260704` there have been the following changes. **One package per new version shown.**\n\n### Major packages\n| Name | Version |\n| --- | --- |\n| **Kernel** | 7.0.9-ogc3.2 ➡️ 7.1.2-ogc2.1 |\n| **Firmware** | 20260622-1 |\n| **Mesa** | 26.1.3-1 |\n| **Gamescope** | 137.7c5ebe99-1 |\n| **Gamescope Session** | 0~20260202git.b5c2d0d-4 |\n| **InputPlumber** | 0.77.7-1 |\n| **OpenGamepadUI** | 0.45.0-2 |\n| **PowerStation** | 0.8.1-1 |\n| **SteamOS-Manager** | 0~20260528.git37d1cb6-3 |\n| **Bazaar** | 0.9.0-3 |\n| **Gnome** | 50.3-1 |\n| **KDE** | 6.7.1-1 |\n| **Nvidia Open** | 610.43.02-1 |\n| **Nvidia LTS** | 580.173.02-1 |\n\n### Commits\n| Hash | Subject | Author |\n| --- | --- | --- |\n| **[2c40074](https://github.com/ublue-os/bazzite/commit/2c4007449bff8ad50d65a5fde4c9f1dc2da0ae41)** | chore: Update kernel to 7.1.2-ogc1 | Kyle Gospodnetich |\n\n### All Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| ✨ | kmod-openrazer | | 100.0.0.git.723.878ab5a5-1 |\n| 🔄 | SDL3 | 3.4.10-1 | 3.4.12-1 |\n| 🔄 | bootupd | 0.2.34-1 | 0.2.35-1 |\n| 🔄 | enchant2 | 2.8.16-1 | 2.8.17-1 |\n| 🔄 | leptonica | 1.87.0-3 | 1.87.0-4 |\n| 🔄 | openvpn | 2.7.3-1 | 2.7.5-1 |\n| 🔄 | rpcbind | 1.2.9-0 | 1.2.9-2 |\n\n### KDE Images\n| | Name | Previous | New |\n| --- | --- | --- | --- |\n| 🔄 | leptonica-devel | 1.87.0-3 | 1.87.0-4 |\n\n\n\n### How to rebase\nFor current users, type the following to rebase to this version:\n```bash\n# For this branch (if latest):\nbazzite-rollback-helper rebase testing\n# For this specific image:\nbazzite-rollback-helper rebase testing-44.20260705\n```\n"}]
\ No newline at end of file diff --git a/tests/test_build_announcements.py b/tests/test_build_announcements.py new file mode 100644 index 0000000..d830112 --- /dev/null +++ b/tests/test_build_announcements.py @@ -0,0 +1,181 @@ +import json as _json + +import pytest + + +def test_fetch_releases_uses_opener_and_parses(mod): + calls = [] + + class FakeResp: + def __init__(self, payload): + self._payload = payload + def read(self): + return _json.dumps(self._payload).encode() + def __enter__(self): + return self + def __exit__(self, *a): + return False + + pages = [ + [{"name": "r1", "prerelease": False, "published_at": "2026-07-13T06:47:03Z", "body": ""}], + [], # empty page ends pagination + ] + + def fake_urlopen(req, timeout=None): + calls.append(req.full_url) + return FakeResp(pages[len(calls) - 1]) + + out = mod.fetch_releases("ublue-os/bazzite", "tok", urlopen=fake_urlopen) + assert out[0]["name"] == "r1" + assert "ublue-os/bazzite" in calls[0] + + +def test_module_imports(mod): + assert hasattr(mod, "md_to_bbcode") + assert hasattr(mod, "md_to_html") + + +def test_branch_config_stable(mod): + assert mod.branch_config("stable") == (False, "rel") + + +def test_branch_config_testing(mod): + assert mod.branch_config("testing") == (True, "beta") + + +def test_branch_config_unstable(mod): + assert mod.branch_config("unstable") == (True, "preview") + + +def test_branch_config_unknown_raises(mod): + with pytest.raises(ValueError): + mod.branch_config("nope") + + +def test_select_releases_stable_only(mod, releases): + out = mod.select_releases(releases, prerelease=False) + assert out, "expected at least one stable release in fixture" + assert all(r["prerelease"] is False for r in out) + + +def test_select_releases_prerelease_only(mod, releases): + out = mod.select_releases(releases, prerelease=True) + assert out, "expected at least one prerelease in fixture" + assert all(r["prerelease"] is True for r in out) + + +def test_select_releases_sorted_desc(mod, releases): + out = mod.select_releases(releases, prerelease=True) + dates = [r["published_at"] for r in out] + assert dates == sorted(dates, reverse=True) + + +def test_select_releases_drops_drafts(mod): + data = [ + {"prerelease": False, "draft": True, "published_at": "2026-07-13T06:47:03Z"}, + {"prerelease": False, "draft": False, "published_at": "2026-07-12T06:47:03Z"}, + ] + out = mod.select_releases(data, prerelease=False) + assert len(out) == 1 + assert out[0]["published_at"] == "2026-07-12T06:47:03Z" + + +def test_select_releases_limit(mod, releases): + out = mod.select_releases(releases, prerelease=True, limit=1) + assert len(out) == 1 + + +SAMPLE_BODY = """This is an automatically generated changelog for release `44.20260713`. + +From previous `stable` version there have been the following changes. + +### Major packages +| Name | Version | +| --- | --- | +| **Kernel** | 7.0.9 ➡️ 7.1.3 | + +### Commits +| Hash | Subject | Author | +| --- | --- | --- | +| **abc123** | feat: do a thing | Someone | + +### All Images +| | Name | Previous | New | +| --- | --- | --- | --- | +| 🔄 | 7zip | 26.01-1 | 26.02-1 | +""" + + +def test_extract_keeps_major_and_commits(mod): + out = mod.extract_sections(SAMPLE_BODY) + assert "### Major packages" in out + assert "### Commits" in out + assert "**Kernel**" in out + assert "feat: do a thing" in out + + +def test_extract_drops_intro(mod): + out = mod.extract_sections(SAMPLE_BODY) + assert "automatically generated changelog" not in out + + +def test_extract_drops_all_images(mod): + out = mod.extract_sections(SAMPLE_BODY) + assert "### All Images" not in out + assert "7zip" not in out + + +def test_extract_order_major_before_commits(mod): + out = mod.extract_sections(SAMPLE_BODY) + assert out.index("### Major packages") < out.index("### Commits") + + +def test_extract_missing_sections_returns_empty(mod): + assert mod.extract_sections("just some text\n\n### All Images\n| a |\n") == "" + + +def test_extract_real_body(mod, stable_release): + out = mod.extract_sections(stable_release["body"]) + assert "### All Images" not in out + assert "### Major packages" in out or "### Commits" in out + + +def test_normalize_release_date(mod): + date_str, ts = mod.normalize_release_date("2026-07-13T06:47:03Z") + assert date_str == "2026-07-13 06:47" + assert ts == 1783925223 + + +def test_release_to_entry_fields(mod): + release = { + "name": "44.20260713: Stable (F44.20260713)", + "tag_name": "44.20260713", + "prerelease": False, + "published_at": "2026-07-13T06:47:03Z", + "body": SAMPLE_BODY, + } + e = mod.release_to_entry(release, "rel") + assert e["title"] == "44.20260713: Stable (F44.20260713)" + assert e["channel"] == "rel" + assert e["lang"] == "english" + assert e["date"] == "2026-07-13 06:47" + assert isinstance(e["timestamp"], int) + assert "### Major packages" in e["body"] + assert "[b]Kernel[/b]" in e["bbcode_body"] + assert "<strong>Kernel</strong>" in e["html_body"] + assert list(e.keys()) == [ + "title", "date", "timestamp", "channel", "lang", + "body", "bbcode_body", "html_body", + ] + + +def test_release_to_entry_null_name_coalesces_to_empty_title(mod): + release = { + "name": None, + "tag_name": "44.20260713", + "prerelease": False, + "published_at": "2026-07-13T06:47:03Z", + "body": SAMPLE_BODY, + } + e = mod.release_to_entry(release, "rel") + assert e["title"] == "" |
