3300 Commits

Author SHA1 Message Date
syeopite
6badb80082
Channels: Fix fetching channel playlists (#5418) 2025-08-23 03:26:49 -07:00
syeopite
41e0e77d33
HTML: Add Missing Noreferrers (#5368) 2025-08-23 03:23:05 -07:00
syeopite
9ebc76462f
Channels: Fix fetching of individual community posts (#5361) 2025-08-23 03:20:04 -07:00
syeopite
0308acb624
Videos: Add fallback to TvSimply client (#5345) 2025-08-23 03:18:41 -07:00
syeopite
cac2397494
YTAPI: Add TvSimply client (#5344) 2025-08-23 03:17:28 -07:00
syeopite
cf640d808e
YtAPI: Bump client versions (#5325) 2025-08-23 03:16:55 -07:00
Kristian Vos
dd8086e6d9
fix: fetching channel playlists returned 500 error 2025-08-13 15:43:54 +02:00
ChunkyProgrammer
803311713d make sort_by code more legible 2025-06-27 11:38:08 -04:00
epicsam123
64ac3b5203
add missing noreferrers 2025-06-26 18:40:06 -04:00
ChunkyProgrammer
f8febbe2b2 format changes 2025-06-25 23:53:07 -04:00
ChunkyProgrammer
436f955e0f update fetch_community_post_comments protobuf to match currently used protobuf, add sort_by option 2025-06-25 23:34:30 -04:00
ChunkyProgrammer
4155f15bf7 update resolve_url api to better support new post endpoint 2025-06-25 23:33:28 -04:00
ChunkyProgrammer
b9171d9dab Update protobuf for individual community post 2025-06-25 22:35:16 -04:00
ChunkyProgrammer
f3f6937ffc Fix community tab not loading 2025-06-25 22:22:30 -04:00
Fijxu
d51e1cb051
remove fallback to TV client 2025-06-15 17:45:53 -04:00
Fijxu
cf0a68bd77
store adaptiveFormats data into a variable 2025-06-15 17:43:07 -04:00
Fijxu
01cdb384e0
add suggestions from syeopite 2025-06-12 17:25:19 -04:00
Fijxu
b1e7e0c45e
replace url by signatureCipher if url is not present 2025-06-12 16:18:01 -04:00
Fijxu
0c96e0977f
check for signatureCipher too 2025-06-12 16:07:58 -04:00
Fijxu
37be513e14
Add fallback to TvSimply client 2025-06-12 01:25:59 -04:00
Fijxu
4daf1f0818
Add TvSimply client
Data taken from: 8cf658151f, 689fb0b90e and b15f623dab
2025-06-12 01:24:45 -04:00
syeopite
df8839d1f0
Make base-Invidious video info extraction more resilient (#5312)
Try next fallback client if one raises

Convert `dig` to `dig?`

Optimize companionless stream retrieval
2025-05-28 20:18:51 +00:00
Fijxu
4b37d47ebb
Add missing xml.text on "title" element for channels RSS (#5320) 2025-05-22 20:12:54 -04:00
Fijxu
09d342b84d
Update src/invidious/yt_backend/youtube_api.cr
Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com>
2025-05-22 17:55:46 -04:00
Fijxu
3a8d4f333f
update IOS_APP_VERSION 2025-05-22 17:17:01 -04:00
Fijxu
97354adf0f
Update src/invidious/yt_backend/youtube_api.cr
Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com>
2025-05-22 17:15:45 -04:00
Fijxu
6497e1c418
YtAPI: Bump client versions 2025-05-22 16:06:13 -04:00
syeopite
2c857b5ab6
Remove text captchas from Invidious (#5308)
textcaptcha.com seems to be down since April and it does not appear that
service will be restored.

Text captchas can be easily automated using free LLMs, so keeping the
text captcha is more like a gate to create accounts in mass on public
Invidious instances.

It also gives headaches like bots automating account creation to modify
the videos that appear popular page of each instance (since the popular
page is based on the subscriptions of the registered users).
2025-05-17 16:37:55 -07:00
syeopite
475bf7448a
Add Javascript licence information automatically (#5297) 2025-05-17 16:20:38 -07:00
syeopite
50e0a4361b
Add missing javascript licenses (#5292) 2025-05-17 16:19:21 -07:00
syeopite
6bfb61e9b4
fix: safely access "label" key (#5282) 2025-05-17 16:18:58 -07:00
syeopite
ef07c542dc
fix: pass user to query.process if present (#5277) 2025-05-17 16:18:37 -07:00
syeopite
a9180aa6c1
fix: do not strip '+' character from referer (#5276) 2025-05-17 16:18:15 -07:00
syeopite
4b2f9ffffc
fix: set CSP header after setting preferences of registered users (#5275) 2025-05-17 16:17:43 -07:00
syeopite
64ad97f308
fix(typo): 'Salect' -> 'Select' (#5242) 2025-05-17 16:17:08 -07:00
syeopite
d5cb653fd1
Handle parse errors gracefully on timeline items (#5196) 2025-05-17 16:16:20 -07:00
syeopite
0b23dd12e1
require base_job before the other jobs (#5194) 2025-05-17 16:15:32 -07:00
syeopite
df41cb9588
Update Kemal to 1.6.0 and remove Kilt (#5120) 2025-05-17 16:14:40 -07:00
Fijxu
6376fd55db
Remove text captcha due to textcaptcha.com being down
Fixes https://github.com/iv-org/invidious/issues/5295

textcaptcha.com seems to be down since April and it does not appear that service will be restored.

Text captchas can be easily automated using free LLMs, so keeping the text captcha is more like a gate to create accounts in mass on public Invidious instances.

It also gives headaches like bots automating account creation to modify the videos that appear popular page of each instance (since the popular page is based on the subscriptions of the registered users).
2025-05-17 13:17:26 -04:00
Fijxu
6fe21a7523
Revert "Update src/invidious/routes/before_all.cr"
This reverts commit aab6ff4bb6e4d3174ab812e5a2cdeec841d2358e.
2025-05-10 23:08:48 -04:00
Fijxu
aab6ff4bb6
Update src/invidious/routes/before_all.cr
Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com>
2025-05-10 23:02:34 -04:00
syeopite
20cf913a4e
Add Javascript licence information automatically
This commit automates the process of documenting the licenses of
Invidious Javascript files through a compile time macro in the
licenses.ecr template file.

This should hopefully help keep the license documentation up-to-date
and allow extensions like LibreJS to always be able to load the latest
Javascript files of Invidious.

Currently only Invidious's first-party Javascript files are supported.
In the future it should be possible to leverage videojs-dependencies.yml
to automatically document the Javascript licenses for
VideoJS and co. as well.
2025-05-10 18:44:53 -07:00
Fijxu
1492453c60
update comment 2025-05-10 16:31:14 -04:00
Fijxu
401bc110d6
fix: set CSP header after setting preferences of registered users
Fixes https://github.com/iv-org/invidious/issues/5142

add reason why extra_media_csp is after reading user preferences from the database and cookies

set media-src after loading database user preferences
2025-05-10 13:26:30 -04:00
Fijxu
30ae222bf2
Add missing javascript licenses 2025-05-09 23:02:19 -04:00
Fijxu
b120abdcc5
fix: safely access "label" key
Fixes https://github.com/iv-org/invidious/issues/5095

On some videos, `label` is missing from the video information. Invidious
assumed that the `label` key existed.

Videos with label have this inside `metadataBadgeRenderer`:

```
{"style" => "BADGE_STYLE_TYPE_SIMPLE",
 "label" => "4K",
 "trackingParams" => "COMDENwwGAoiEwiCrebe6JWNAxWIxz8EHSQRFTU="}
```

but other videos, for some reason, look like this:

```
{"icon" => {"iconType" => "PERSON_RADAR"},
 "style" => "BADGE_STYLE_TYPE_SIMPLE",
 "trackingParams" => "CM4DENwwGAsiEwiCrebe6JWNAxWIxz8EHSQRFTU="}
```
2025-05-09 02:58:29 -04:00
Émilien (perso)
9e3c0dfd85
fix: fallback first with TVHTML then MWEB
fixes #5273
2025-05-08 19:55:22 +02:00
Fijxu
25eade589f
fix: pass user to query.process if present.
Fixes https://github.com/iv-org/invidious/issues/5097
2025-05-08 03:12:00 -04:00
Fijxu
35896d086b
fix: do not strip '+' character from referer
Fix that a user of my instance (https://inv.nadeko.net) sent me by email.
2025-05-08 01:00:46 -04:00
absidue
2c1400c41e
Fix proxying live DASH streams (#4589) 2025-05-03 20:28:19 +00:00