Commit Graph

5836 Commits

Author SHA1 Message Date
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
Fijxu
b9114cbb9d
feat(frontend): config option to disable video downloads 2025-05-08 00:31:03 -04:00
Fijxu
ea587758a5
Merge branch 'graceful-parse-errors'
Some checks failed
Build and release container directly from master / release (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.2, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.0, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.0, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (nightly, false) (push) Has been cancelled
Invidious CI / build-docker (push) Has been cancelled
Invidious CI / build-docker-arm64 (push) Has been cancelled
Invidious CI / lint (push) Has been cancelled
From: https://github.com/iv-org/invidious/pull/5196
2025-05-04 15:32:37 -04:00
Fijxu
3c5d37810d
Merge remote-tracking branch 'upstream/master' 2025-05-04 14:17:11 -04:00
Fijxu
2d49601066
feat: option to increase the number of videos shown on the popular page 2025-05-04 14:10:37 -04:00
Emilien
d1bc15b8bf Release v2.20250504.0 2025-05-04 11:59:42 +02:00
Vyquos
1f028fee0f
Reflect companion secret character limit in example config comment (#5269)
Update the comments in the example config to show that the companion secret key must be exactly 16 characters long as per https://github.com/iv-org/invidious-companion/pull/81#issuecomment-2750675405.
2025-05-04 07:47:42 +00:00
absidue
2c1400c41e
Fix proxying live DASH streams (#4589) 2025-05-03 20:28:19 +00:00
Alex Maras
8fd0b82c38
feat: route to invidious companion on downloads (#5224) 2025-05-03 01:28:18 +02:00
Émilien (perso)
7579adc3a3
fix: fallback other yt clients no url found for adaptive formats (#5262) 2025-05-02 16:57:02 +02:00
efb4f5ff-1298-471a-8973-3d47447115dc
d567c6be6e
Fix minor casing issues in brand names (#5258) 2025-05-02 15:36:31 +02:00
Fijxu
05b99df49a
fix(typo): 'Salect' -> 'Select' 2025-04-17 16:55:30 -04:00
Fijxu
4a0e61812e
chore(locales): update spanish translations
Some checks failed
Invidious CI / build-docker (push) Has been cancelled
Build and release container directly from master / release (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.2, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.0, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.0, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (nightly, false) (push) Has been cancelled
Invidious CI / build-docker-arm64 (push) Has been cancelled
Invidious CI / lint (push) Has been cancelled
2025-04-14 16:56:04 -04:00
Fijxu
ad95f0e2c0
feat(backends): redirect to another backend if one is unavailable
Only works with cookies for now. Support for numbered backends will be
added later since it requires some black magic.
2025-04-14 16:53:09 -04:00
Fijxu
e13800e859
fix: support for I2P backends! (again!)
Some checks are pending
Build and release container directly from master / release (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.1, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.2, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.0, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.0, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (nightly, false) (push) Waiting to run
Invidious CI / build-docker (push) Waiting to run
Invidious CI / build-docker-arm64 (push) Waiting to run
Invidious CI / lint (push) Waiting to run
2025-04-13 18:35:00 -04:00
Fijxu
69e351770d
chore(backends): change logic used to detect if the user accessed via a numbered backend or main domain
Numbered backends will only work if the domain has a number at the end, for example:

inv1.nadeko.net will redirect to backend 1
inv2.nadeko.net will redirect to backend 2
2inv.nadeko.net will use cookies
nadeko1.net will redirect to backend 1

The number of the backend in the domain should be always on the end of it to be able to use numbered backends.
2025-04-13 18:18:06 -04:00
Fijxu
3e33c9b70f
redis: update library and use the recently added #ping method 2025-04-13 15:53:54 -04:00
Fijxu
0ce17d91eb
chore(config): change server_id cookie name 2025-04-13 15:53:54 -04:00
Fijxu
c9eed028b0
ci: update to crystal 1.16.0 2025-04-13 15:53:42 -04:00
Fijxu
ff3d008a6f
ci: remove unused crystal spec from Dockerfile 2025-04-13 15:52:31 -04:00
Fijxu
49ae71a6ac
ci: only build production docker images 2025-04-13 15:52:08 -04:00
Fijxu
fac53ce721
ci: enable docker cache 2025-04-13 15:50:18 -04:00
Fijxu
b4e146fb60
redis: replace lib by jgaskins/redis
https://github.com/jgaskins/redis

It's faster and in active development, old one gave me this using a TCP
connection:

test   5.94k (168.34µs) (±56.73%)  144B/op  fastest
test   5.11k (195.76µs) (±58.89%)  144B/op  fastest
test   5.48k (182.33µs) (±73.39%)  144B/op  fastest
test   3.42k (292.56µs) (±66.19%)  144B/op  fastest

meanwhile, the jgaskins/redis one gives:

test   6.96k (143.66µs) (±58.73%)  96.0B/op  fastest
test   6.36k (157.16µs) (±55.95%)  96.0B/op  fastest
test   7.06k (141.65µs) (±57.03%)  96.0B/op  fastest
2025-04-13 02:30:37 -04:00
Fijxu
d7aeb1a89f
minify-js: add missing subscribe_widget.js script 2025-04-13 00:39:07 -04:00
Fijxu
7b072200f6
add support for i2p backends and onion numbered backends
Some checks failed
Build and release container directly from master / release (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.2, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.0, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.0, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (nightly, false) (push) Has been cancelled
Invidious CI / build-docker (push) Has been cancelled
Invidious CI / build-docker-arm64 (push) Has been cancelled
Invidious CI / lint (push) Has been cancelled
2025-04-06 01:33:08 -04:00
syeopite
6c063436d4
Fix issues raised by code review
Remove explicit `self.` from #process of parsers

Remove explicit return tuple in get_issue_template

Fix formatting

Move inline issue template style to stylesheet

Use @id in ProblematicTimelineItem xml repr

Fix naming
2025-04-05 12:40:38 -07:00
Fijxu
bbec111997
feat(experimental): minify js files using esbuild
Some checks are pending
Build and release container directly from master / release (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.1, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.2, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.0, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.0, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (nightly, false) (push) Waiting to run
Invidious CI / build-docker (push) Waiting to run
Invidious CI / build-docker-arm64 (push) Waiting to run
Invidious CI / lint (push) Waiting to run
2025-04-05 03:03:04 -03:00
Fijxu
e3d60a0517
fix missing scheme on meta elements
move scheme logic
2025-04-05 03:03:00 -03:00
Émilien (perso)
0c07e9d27a
chore: set dash by default (#5216) 2025-04-04 14:00:29 +02:00
Fijxu
ce052103e7
deprecate support for external video playback proxy 2025-04-03 03:12:36 -03:00
Fijxu
c57a4f4920
add CSP based on backend selected by the user
xd
2025-04-03 03:12:36 -03:00
Fijxu
426e7bfbdb
use Host header on img-src 'self' data: CSP 2025-04-03 03:12:36 -03:00
Fijxu
3d85519ec9
Only show embed link on error pages if v query param is present 2025-04-03 03:12:36 -03:00
Fijxu
a74d89b6d9
Safely handle missing current_companion just in case 2025-04-03 03:12:36 -03:00
Fijxu
fd8c40e0da
fix: fix wrong invidious companion logic on backends
do not change to another companion if request fails
2025-04-03 03:12:36 -03:00
Fijxu
5f1944925b
remove unused Content-Security-Policy generated on every request to watch end embed 2025-04-01 18:51:13 -03:00
Fijxu
015c9ec5d1
support for numbered backends
Some checks are pending
Build and release container directly from master / release (push) Waiting to run
Invidious CI / build-docker (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.1, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.2, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.0, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.0, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (nightly, false) (push) Waiting to run
Invidious CI / build-docker-arm64 (push) Waiting to run
Invidious CI / lint (push) Waiting to run
2025-03-31 19:26:33 -03:00
Fijxu
be9a3794e9
cookies: remove port number from domain if it exists
Some checks are pending
Invidious CI / lint (push) Waiting to run
Build and release container directly from master / release (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.1, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.2, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.0, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.0, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (nightly, false) (push) Waiting to run
Invidious CI / build-docker (push) Waiting to run
Invidious CI / build-docker-arm64 (push) Waiting to run
2025-03-31 01:42:25 -03:00
Fijxu
642b2e8bf0
cookies: replace alternative domains and backend domains by Host header instead 2025-03-31 01:42:25 -03:00
Fijxu
ce97a41301
views/template.ecr: remove trailing | character on backend switcher 2025-03-31 01:42:25 -03:00
Fijxu
b29f5b39de
add note to backend 2025-03-31 00:04:52 -03:00
Fijxu
895745934b
generate CSP each time the backend checker runs instead of each request made to invidious 2025-03-31 00:03:40 -03:00
Fijxu
d47aa3dd6a
feat: do all the backend balancing on the invidious side
This will make invidious easier to maintain and escalate without the need of an overcomplicated reverse proxy configuration and multiple invidious instances with each one with a different configuration (in this case, invidious companion)
2025-03-30 20:08:15 -03:00
Fijxu
ddf6802d76
chore: add message if checkbackend job is disabled 2025-03-30 19:19:47 -03:00
Fijxu
626fb2d1a8
add option to disable livestreams since they don't work right now
Some checks failed
Build and release container directly from master / release (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.2, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.0, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.0, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (nightly, false) (push) Has been cancelled
Invidious CI / build-docker (push) Has been cancelled
Invidious CI / build-docker-arm64 (push) Has been cancelled
Invidious CI / lint (push) Has been cancelled
2025-03-29 02:50:19 -03:00
Fijxu
56f309d6bb
Merge remote-tracking branch 'upstream/master' 2025-03-28 21:46:32 -03:00
Émilien (perso)
23ff6135bb
chore: enforce 16 characters for invidious_companion_key (#5220) 2025-03-26 15:27:59 +01:00
Fijxu
7c9f79e1f1 feat: add option to force proxying of videos
Some checks failed
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.2, true) (push) Has been cancelled
Build and release container directly from master / release (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.0, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.0, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (nightly, false) (push) Has been cancelled
Invidious CI / build-docker (push) Has been cancelled
Invidious CI / build-docker-arm64 (push) Has been cancelled
Invidious CI / lint (push) Has been cancelled
2025-03-24 21:15:38 -03:00
syeopite
7b27585454
Support ProblematicTimelineItem in trending feed 2025-03-19 23:50:41 -07:00
syeopite
f7810ba007
Use ProblematicTimelineItem as needed in playlists 2025-03-19 23:32:46 -07:00