Commit graph

3144 commits

Author SHA1 Message Date
syeopite
7977dc3c8b
Fix typo in argument to make_client
Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>
2024-11-09 23:31:20 -03:00
syeopite
4125dfb566
Use make_client instead of calling HTTP::Client
Using `make_client` to create `HTTP::Client`, allows for a simple way to
easily add logic to all `HTTP::Client` initialized within Invidious.
2024-11-09 23:31:18 -03:00
syeopite
53c4ffbdf3
Fix named arg syntax when passing force_resolve 2024-11-09 23:30:55 -03:00
73ec78dfe2
Remove old code that is done on the Openresty side 2024-11-09 23:28:24 -03:00
cf7d95b375
Update CI 2024-11-09 23:28:24 -03:00
0a08700b48
Videos: Add support for OpenGraph videos
To support OpenGraph clients like Discord and other platforms able to
pull the video from the OpenGraph metadata.
2024-11-09 23:28:22 -03:00
70dc1a9f11
Tokens: Better logging
All checks were successful
Invidious CI / build (push) Successful in 5m46s
2024-10-31 21:38:59 -03:00
fc910b43ba
External Proxies: Adapt it to use a NamedTuple 2024-10-31 21:38:40 -03:00
67998d1f36
Revert "External Proxies: Rotate between proxies with balance enabled"
This reverts commit 26bee068eb.
It's broken and it doesn't work when a proxy comes back up.
2024-10-31 21:26:03 -03:00
e2276ace1b
Merge remote-tracking branch 'upstream/master' into master
All checks were successful
Invidious CI / build (push) Successful in 5m35s
2024-10-31 20:25:33 -03:00
c61b2963ac
Videos: Fix audio tracks language.
Video will only return the default language. The rest of the audio
tracks are deleted since they will not be used.
2024-10-30 13:14:54 -03:00
Samantaz Fox
c427c184e2
Captions: Add "Filipino (auto-generated)" to the list of languages (#4995)
I encountered a wild
[warn] i18n: Missing translation key "Filipino (auto-generated)"
while browsing videos on the test instance.

No related issue.
2024-10-30 17:07:09 +01:00
Samantaz Fox
2eeb6a731d
SigHelper: Reconnect to signature helper (#4991)
Fijxu have been using it for more than 3 weeks on their instance and
they report that it works really well.

This only works if 'inv_sig_helper' itself crashes and restarts (via systemd
or docker restart policy) but it will not work if 'inv_sig_helper' hangs and
stops responding to invidious (but this is an issue with 'inv_sig_helper',
not Invidious).

Closes issue 4926
2024-10-30 17:02:51 +01:00
Samantaz Fox
9957da28dc
Proxy: Use connection pools for images (#4326)
Theoretically this should improve memory usage and performance by quite a bit
as we aren't creating a new HTTP::Client and in a turn a new connection for
every image we request from YouTube.

Closes issue 4009
2024-10-30 13:55:28 +01:00
Samantaz Fox
f326bcf8db
Add support for using Invidious through a HTTP Proxy (#4270)
Partially addresses issue 301
2024-10-30 13:46:49 +01:00
26bee068eb
External Proxies: Rotate between proxies with balance enabled
Closes #17
2024-10-30 01:59:08 -03:00
486c5845cd
Config: Also reload env variables 2024-10-30 01:57:06 -03:00
6f10a7c67e
Use POST requests for /videoplayback requests 2024-10-29 19:02:05 -03:00
67d7b78ac9
Config: Reload configuration on modification
It detects changes on the config.yml automtically if invidious is
running on linux. If not, the configuration can be reloaded using
`kill -s HUP $(pidof invidious)` or any other tool that sends a SIGHUP
signal to the invidious process.

Closes #16
2024-10-28 13:37:06 -03:00
3afac4d842
Tokens: Option to disable user tokens. 2024-10-25 10:36:20 -03:00
448007e5ba
Tokens: Server side generated tokens.
#18
2024-10-17 23:44:30 -03:00
3cc0dbca01
PubSub: Use external domain for pubsub feeds 2024-10-17 17:02:12 -03:00
c3e8721051
External Proxies: Proxyfi HLS Playlists 2024-10-14 17:57:52 -03:00
cf5028d09a
Videos: Completly disable annotations due to archive.org being down
Closes #15
2024-10-13 23:47:57 -03:00
eb2670fe49
Tokens: Refresh po_token and visitor_data every 5 seconds
Closes #11
2024-10-13 15:57:51 -03:00
976e1ccf5a
External Proxies: Proxyfi HD720 2024-10-13 15:19:49 -03:00
fee2acc666
Videos: Increase video cache to 4 hours 2024-10-12 02:59:36 -03:00
b5ab49e8e8
Feat: Experimental support for potoken inside redis
Using https://git.nadeko.net/Fijxu/youtube-po-token-generator
2024-10-12 02:04:14 -03:00
65f3bbcb10
External Proxies: Use list of external videoplayback proxies 2024-10-11 13:50:42 -03:00
Samantaz Fox
952b3625a0
Add "Filipino (auto-generated)" to the list of caption languages 2024-10-10 20:31:22 +02:00
Samantaz Fox
fb3ecdad9a
Videos: Fix missing host parameter on playback URLs when local=true 2024-10-09 16:15:50 +02:00
8dc0a67be3
Feat: User supplied po_token and visitor_data 2024-10-11 16:50:21 -03:00
d61043edea
Small try. 2024-10-10 15:07:33 -03:00
3111158a7c
Feeds: Get rid of feed_needs_update() since it appears to be unused 2024-10-09 18:09:23 -03:00
cf6c3a7b5b
Revert "use WEB_CREATOR when po_token with WEB_EMBED as a fallback (#4928)"
All checks were successful
Invidious CI / build (push) Successful in 8m10s
This reverts commit d9df90b5e3.
2024-10-08 19:53:35 -03:00
2f5a555ea7
Merge remote-tracking branch 'upstream/master'
All checks were successful
Invidious CI / build (push) Successful in 9m50s
2024-10-08 19:22:53 -03:00
84e4746265
SigHelper: Reconnect to signature helper
Signed-off-by: Fijxu <fijxu@nadeko.net>
2024-10-08 19:09:14 -03:00
dc2aba106c
Backends: Use backend switcher to indicate the current backend in use. 2024-10-08 18:59:01 -03:00
eff8673efc
Feat: Experimental support for external videoplayback proxies 2024-10-08 18:59:01 -03:00
b1f25a69ad
Logger: Add color support for different log levels 2024-10-08 18:59:01 -03:00
d5b8b0b19c
SigHelper: Reconnect to signature helper 2024-10-08 18:59:00 -03:00
33ffafb9e3
Feat: backend supports with cookies 2024-10-08 16:54:18 -03:00
Samantaz Fox
d5f5490aee
Search: Fix 'youtu.be' URLs in sanitizer (#4894)
Use the proper URL argument when transforming youtu.be URLs to their
youtube.com equivalents.

Thanks to Tuhgy on the fediverse for reporting this!

No related issue
2024-10-08 18:03:56 +02:00
Samantaz Fox
97895a491a
Playlists: Fix 'invalid byte sequence' error when subscribing (#4887)
In Crystal, handling multi-byte sequences in UTF-8 requires understanding that
slicing by bytes can lead to invalid sequences if the slicing isn't aligned
with character boundaries. In this case, attempting to slice a string by bytes
can cut through multi-byte UTF-8 sequences, leading to invalid sequences.

To avoid this, strings should be sliced based on characters rather than bytes.

Fixes issue 4886
2024-10-08 18:01:22 +02:00
Samantaz Fox
0ac9367322
Parse more metadata badges for SearchVideos (#4863)
This PR makes it possible to display badges in the search results for third
party Invidious applications (ex: FreeTube)

See also: https://github.com/FreeTubeApp/FreeTube/pull/5590

No related issue
2024-10-08 17:59:35 +02:00
Samantaz Fox
3cfcc16403
Videos: Convert URL before putting result into cache (#4850)
Closes issue 4837
2024-10-08 17:52:34 +02:00
Samantaz Fox
171c0a0814
HTML: Add error message to "search issues on GitHub" link (#4652)
This PR adds the error message to the "search on Github" link located on
the crash page, so that the search bar is already filled and the issues
filtered when the user opens said link.

As seen with #4584 and other critical problems, duplicate issues end up
unnecessarily flooding the issue reports. While this change won't entirely
stop this behavior, this will help the user to easily identify if the error
they have received has been reported yet and discourage them from creating
a duplicate (hopefully...).

No associated issue was open
2024-10-08 17:51:36 +02:00
Samantaz Fox
82ac9a8609
Preferences: Add option to control preloading of video data (#4122)
This PR adds a configuration option to control the preloading of video data on
page load with the HTML5 'preload'[1] attribute on the `<video>` element.

The option is enabled by default, meaning that the `preload` attribute's value
will be 'auto'. If users want to prevent preloading of video data, they
can disable the option, which will set the attribute value to 'none'.

[1](https://www.w3schools.com/tags/att_video_preload.asp)

Closes issue 4110
2024-10-08 17:38:06 +02:00
Samantaz Fox
7c79ee7cc2
Performance: Improve speed of automatic instance redirection (#4193)
The automatic instance redirection implemented in #1940 fetches a new list of
instances each time someone queries the /redirect endpoint. This is extremely
inefficient...

This PR optimizes all that into a background job that only fetches a single
list every 30 minutes. This should performance quite a bit.

No related issue was opened.
2024-10-08 17:31:20 +02:00
ChunkyProgrammer
f6e09250cd
Use "LIVE" instead of "LIVE NOW" when parsing the live_now video badge
Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2024-10-07 11:30:33 -04:00