tag name | v2.20240825 (3da53bc48498ad57ad6289763eecadf13cb38bba) |
tag date | 2024-08-25 21:19:49 +0200 |
tagged by | Samantaz Fox <coding@samantaz.fr> |
tagged object | commit ffc70a5298... |
Release v2.20240825
New features & important changes
--------------------------------
For users
* The search bar now has a button that you can click!
* Youtube URLs can be pasted directly in the search bar. Prepend search query
with a backslash (`\`) to disable that feature (useful if you need to search
for a video whose title contains some youtube URL).
* On the channel page the "streams" tab can be sorted by either:
"newest", "oldest" or "popular"
* Lots of translations have been updated
(thanks to our contributors on Weblate!)
* Videos embedded in local HTML files (e.g: a webpage saved from a blog)
can now be played
For instance owners
* Invidious now has the ability to provide a `po_token` and `visitordata` to
Youtube in order to circumvent current Youtube restrictions.
* Invidious can use an (optional) external signature server like
[inv_sig_helper]. Please note that some videos can't be played without
that signature server.
* The Helm charts were moved to a separate repo:
https://github.com/iv-org/invidious-helm-chart
* We have changed how containers are released: the `latest` tag now tracks
tagged releases, whereas the `master` tag tracks the most recent commits of
the `master` branch ("nightly" builds).
[inv_sig_helper]: https://github.com/iv-org/inv_sig_helper
For developpers
* The versions of Crystal that we test in CI/CD are now: `1.9.2`, `1.10.1`,
`1.11.2`, `1.12.1`. Please note that due to a bug in the `libxml` bindings
(See [#4256]), versions prior to `1.10.0` are not recommended to use.
* Thanks to @syeopite, the code is now [ameba] compliant.
* Ameba is part of our CI/CD pipeline, and its rules will be enforced in future PRs.
* The transcript code has been rewritten to permit transcripts as a feature
rather than being only a workaround for captions. Trancripts feature is
coming soon!
* Various fixes regarding the logic interacting with Youtube
* The `sort_by` parameter can be used on the `/api/v1/channels/{id}/streams`
endpoint. Accepted values are: "newest", "oldest" and "popular"
[ameba]: https://github.com/crystal-ameba/ameba
[#4256]: https://github.com/iv-org/invidious/issues/4256
Bugs fixed
----------
User-side
* Channels: fixed broken "subscribers" and "views" counters
* Watch page: playback position is reset at the end of a video, so that the
next time this video is watched, it will start from the beginning rather
than 15 seconds before the end
* Watch page: the items in the "add to playlist" drop down are now sorted alphabetically
* Videos: the "genre" URL is now always pointing to a valid webpage
* Playlists: Fixed "Could not parse N episodes" error on podcast playlists
* All external links should now have the ['rel'] attibute set to 'noreferrer noopener' for
increased privacy.
* Preferences: Fixed the admin-only "modified source code" input being ignored
* Watch/channel pages: use the full image URL in 'og:image' and 'twitter:image' meta tags
['rel']: https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/rel
API
* fixed the 'local' parameter not applying to 'formatStreams'
on '/api/v1/videos/{id}'
* fixed an "Index out of bounds" error hapenning when a playlist had no videos
* fixed duplicated query parameters in proxied video URLs
* Return actual video height/width/fps rather than hard coded values
* Fixed the `/api/v1/popular` endpoint not returning a proper error
code/message when the popular page/endpoint are disabled.
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEogMS5UT3ucxXki1A9CghBZGGF24FAmbLhakACgkQ9CghBZGG
F27JiA/+NIQ7CYKFt3c+xw88EeE4/7oh3pfGoygNznU0a3d1Qj2ZdDIJABVEyNTu
vOZmfL83sFiwjNWICAZQiJz1m1VgnF/kObOoGiwnKKrUOl+I37dpGrM8gxcFzlyk
Jw0PAH+XSv6nt0XhYZ5pMJSrG9SaJkOb/DXrfF5xg1Nureae3b8eX0OrbKxCWwja
2WcU1lXEfhmqJ3iaVVz5Q1vngibxUWzFZmwn11fFAbUCLDKUwjbHgM4qTTEEBgUt
UqKSu4h+FwJ+q2ZdcSFavL2MhHAARTVnKjtr5oBBSoWz5rCzVbsqeYpf8AobuazY
Z+NGE3m9lB7IONsOjUvkJgIwdJL95aybdK7wFbDDnLxmqGs0fZfqAjCVXr6Uwm19
l+VLR+eHmNXgtc970flNdXhM4+GaK2+FTQWIqUy5u/KZtMfC53OXrkpgk6AGwXKa
Zy1tSgjSCRto4wHQ03kORl3g3ar7n2a7kdjbMrdn5KSI0YyvOg2lcZixGa5IquFG
GgTXQTd3ZRiWFPMbOat4/48CkhgUOZGB1iI8uzgHudLPSkCUwKDXLkynvSrjJ3Kw
/pg5CBVDLpizi6qT5ip6AFKlKTTLJ5iAfGZpDKsLQDabIxXUmWs5qenEDXksEi9m
suOj5vnnEGt7mNwiBYBfy66aJMofvCE2BjckSrLU5ZxGNQDidZE=
=npIZ
-----END PGP SIGNATURE-----