Alex Maras
8fd0b82c38
feat: route to invidious companion on downloads ( #5224 )
2025-05-03 01:28:18 +02: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!)
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
7b072200f6
add support for i2p backends and onion numbered backends
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
e3d60a0517
fix missing scheme on meta elements
...
move scheme logic
2025-04-05 03:03:00 -03: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
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
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
642b2e8bf0
cookies: replace alternative domains and backend domains by Host header instead
2025-03-31 01:42:25 -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
626fb2d1a8
add option to disable livestreams since they don't work right now
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
syeopite
f7810ba007
Use ProblematicTimelineItem as needed in playlists
2025-03-19 23:32:46 -07:00
Fijxu
7aba1f7ba3
Revert "Merge branch 'add-prometheus-metrics-endpoint'"
...
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
This reverts commit e5c0f15398 due to
https://github.com/iv-org/invidious/pull/3576#issuecomment-2727898574
, reversing changes made to ecacbab2a5 .
2025-03-16 23:51:16 -03:00
Fijxu
facd01b52e
feat: add support for encrypted query parameters
...
Related:
- 6bd0f28d77
- 7eae31613e
2025-03-16 19:54:40 -03:00
Fijxu
db53ee21ee
Merge remote-tracking branch 'upstream/master'
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-14 12:26:53 -03:00
Émilien (perso)
70ff463cc6
Add invidious companion support ( #4985 )
...
* add support for invidious companion
* redirect latest_version and dash manifest to invidious companion
* fix Shadowing outer local variable `response`
* fixing condition for Content-Security-Policy
* throw error if inv_sig_helper and invidious_companion used same time
* Use sample instead of Random.rand
Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com >
* Remove debug puts functions
Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com >
* modify the description for config.example.yaml about invidious companion
* move config checks for invidious companion
* separate invidious_companion logic + better config.yaml config
* fixing "end" misplacement
* fix linting + use .empty?
* crystal handle decompression already by itself
* fix download function when invidious companion used
* fix linting
* invidious companion always used so always add CSP and redirect latest_version
* apply all the suggestions + rework invidious_companion parameter
* format watch.cr
* fix ameba Redundant use of `Object#to_s` in interpolation
* add ability for invidious companion to check request from invidious
* Better document private_url and public_url
* Better doc for invidious_companion_key
* !empty? to present?
* skip proxy for invidious companion
* fixing format
* missing ,
* add companion pooling http
* fix: don't use http proxy when sending requests to companion
* fix: logic where we want to have the invidious logic if companion is not used
* chore: remove baseurl usage from invidious companion
* chore: change from inv-sig-helper to companion for required playback
* fix: use puts + add warning for inv-sig-helper deprecated
---------
Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com >
2025-03-13 16:44:00 +01:00
Fijxu
a4cb5f094c
fix: add missing check for c.youtube.com host
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-10 15:40:59 -03:00
Fijxu
01ccd55829
feat: add option to change username
...
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
fix: rename subscriptions materialized view of the user too
remove materialized views from username change
fix: downcase username and limit username lenght (from routes/login.cr)
Users that changed their username to something like `User`, were unable
to login because the username is downcased on routes/login.cr
2025-03-08 02:47:42 -03:00
Fijxu
e5c0f15398
Merge branch 'add-prometheus-metrics-endpoint'
...
From https://github.com/iv-org/invidious/pull/3576
2025-03-01 03:39:21 -03:00
Fijxu
bceb7a61ef
feat: Detect videoplayback proxy from invidious-companion and add it to the CSP header
2025-02-28 20:06:09 -03:00
Fijxu
50fa7de901
Merge remote-tracking branch 'upstream/master'
2025-02-27 02:02:47 -03:00
syeopite
dbbcacc955
Images: fix typo in thumbnail logic
2025-02-26 14:13:58 -08:00
syeopite
58ad848d56
Channels: Support YouTube's change to from /community to /posts ( #5183 )
2025-02-26 14:13:22 -08:00
syeopite
9fbe3944b0
Channels: Add Courses to channel page and channel API ( #5158 )
...
Closes #5144
2025-02-26 14:08:44 -08:00
syeopite
c5e9447f41
Pick a different instance upon redirect ( #5154 )
...
The automatic instance redirection has the potential to pick
the same instance the user is currently on. This is especially
prevalent when the instance list is limited in number like how it is
today.
This PR checks the domain of the instance and ensures that it is not
the same as the current instane before redirecting the user to it.
Otherwise, it just sends the user to rediret.invidious.io
2025-02-26 14:05:21 -08:00
syeopite
3d77635a5c
Add API endpoint for fetching transcripts from YouTube ( #4788 )
2025-02-26 13:56:39 -08:00
syeopite
4ea4878d1a
User: Batch notifications together
2025-02-26 13:55:25 -08:00
syeopite
1f0a89fb5f
RSS: Channel + Playlist improvements ( #4298 )
2025-02-26 13:55:01 -08:00
Fijxu
d8ecfd9c04
feat(dev): add option to disable CSP (for development purposes only)
2025-02-21 14:09:16 -03:00
Fijxu
99224b9f60
fix(storyboards): Add HOST_URL to CSP so clients are able to get the storyboards from alternative domains)
2025-02-19 01:10:47 -03:00
Fijxu
e0d4272070
Channels: Fix community tab
2025-02-19 01:10:47 -03:00
syeopite
d853b9f6dc
Typo
...
Co-authored-by: Samantaz Fox <coding@samantaz.fr >
2025-02-18 14:46:18 -08:00
Fijxu
d70681538a
Channels: Fix community tab
2025-02-18 19:20:55 -03:00
Fijxu
1df1945849
fix(images.cr): use i.ytimg.com instead of i9.ytimg.com for thumbnails
2025-02-18 16:04:48 -03:00
epicsam123
a77f083a0a
remove ! on reject
2025-01-26 16:42:59 -05:00
ChunkyProgrammer
eaf47385c5
Add Courses to channel page and channel API
2025-01-25 14:43:39 -05:00
Fijxu
d75d860888
Merge remote-tracking branch 'upstream/master'
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
Stale issue handler / stale (push) Has been cancelled
2025-01-25 11:51:05 -03:00
Fijxu
f68d7bcbc7
Revert "Videos: Fix audio tracks language."
...
Reverting this commit before merging https://github.com/iv-org/invidious/pull/5149 from upstream
This reverts commit c61b2963ac .
2025-01-25 11:44:27 -03:00
epicsam123
0fd480bae2
lint edits, refactor
2025-01-25 03:24:38 -05:00
epicsam123
afb0aad7d3
moved comments
2025-01-24 21:54:10 -05:00
epicsam123
6816ded0fa
add missing end statement
2025-01-23 22:17:46 -05:00
epicsam123
0546a73bfa
Pick a different instance upon redirect
2025-01-22 17:33:54 -05:00
syeopite
831017f403
Frontend: Carry over audio-only mode in playlist links ( #4784 )
2025-01-22 11:35:33 -08:00
syeopite
52daafe047
Videos: Fix missing host parameter on playback URLs when local=true ( #4992 )
2025-01-22 11:34:46 -08:00
syeopite
dca130ca6f
Routes: Clean ajax actions handlers ( #5036 )
2025-01-22 11:33:51 -08:00