-
5.5.0 Stable
released this
2026-08-08 23:22:39 +00:00 | 2 commits to main since this releaseSageTube 5.5.0
A watch-first desktop YouTube client with an embedded mpv player.
This release is mostly about things that were quietly wrong.
It checked for the wrong program's updates. The version check asked PyPI
about theytsagepackage and GitHub about oop7/YTSage's releases, then
offered upstream's downloads -- and compared them against a package version
that had been left at the scaffolded 0.1.0 while the released tag said v5.4.0,
so it fired on every start. It now reads this repository's releases from
git.houmeres.sk, runs at most once a day, and has a "Skip this version".The player could take the application down with it. Qt destroys and
recreates a widget's OpenGL context whenever it moves to another top-level
window; libmpv allows one render context per handle, so the second creation
failed, and the failure path dropped the last reference to a context libmpv
still held a function pointer into. Fullscreen, tab switching and every dialog
could trigger it. The render context is now torn down before it is recreated
and freed before the GL context that owns it, fullscreen no longer reparents
the video, and neither the tab fade nor the dialog blur screenshots an OpenGL
surface any more.The YouTube account was three levels deep. Signing in with browser cookies
lived behind Downloads -> Custom Options -> Login with Cookies, while the
features needing it are other tabs; the method that opens it on the right tab
had no caller at all. There is now an account button in the tab bar, and
applying cookies no longer needs a restart to reach playback.The player ignored the keyboard and the mouse. Its key handler could never
fire, because nothing in the player could hold focus. There is now a full set
of mpv/YouTube-style bindings, click and double-click, wheel volume and seek, a
context menu, previous/next/mute buttons and a buffering indicator.It looked unfinished, and much of that was literal. There was no icon
system -- the transport buttons used the platform's dark monochrome glyphs on
red, and the rest were emoji -- three widgets in the whole application had a
tooltip, and the tab bar, combo boxes, sliders, lists, menus, splitters and
tooltips were never styled at all.Also: the tab order is Feed, Search, Browse, Downloads, Watch, and the Feed
refreshes when opened -- carefully, since that is one yt-dlp subprocess per
subscribed channel. A non-English interface no longer shows raw translation
keys. Configs merge deeply, so settings added in a new version stop being
silently discarded.See CHANGELOG.md for the full list.
-----BEGIN SSH SIGNATURE-----
U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgzKdqMXKfj8DtmdSWGF3dgqaPwy
gjckxXPr00Hj1Q7OgAAAADZ2l0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5
AAAAQMOwzzxwjKx8MbQGqPe2PqFfnt+82/I87So70Gb+OOjfAOwgmPU68J2013Z72pZGb6
X7BltxYxGx/nVN3aoUbg4=
-----END SSH SIGNATURE-----Downloads