Fijxu
f9cf70f9d7
Add default playlist preference ( #5449 )
...
Build and release container directly from master / release (docker/Dockerfile, AMD64, ubuntu-latest, linux/amd64, ) (push) Has been cancelled
Build and release container directly from master / release (docker/Dockerfile.arm64, ARM64, ubuntu-24.04-arm, linux/arm64/v8, -arm64) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.2, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.3, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.16.3, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (nightly, false) (push) Has been cancelled
Invidious CI / Test ${{ matrix.name }} Docker build (AMD64, ubuntu-latest) (push) Has been cancelled
Invidious CI / Test ${{ matrix.name }} Docker build (ARM64, ubuntu-24.04-arm) (push) Has been cancelled
Invidious CI / lint (push) Has been cancelled
* Add default playlist preference
Closes https://github.com/iv-org/invidious/issues/5421
* Add option to set default playlist to none
* Move it to player preferences
2025-09-11 11:05:09 -03:00
Fijxu
ba02a4cdf5
Prevent player microformat from being overwritten by the next microformat ( #5453 )
...
Build and release container directly from master / release (docker/Dockerfile, AMD64, ubuntu-latest, linux/amd64, ) (push) Waiting to run
Build and release container directly from master / release (docker/Dockerfile.arm64, ARM64, ubuntu-24.04-arm, linux/arm64/v8, -arm64) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (nightly, false) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.2, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.3, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.1, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.1, true) (push) Waiting to run
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.16.3, true) (push) Waiting to run
Invidious CI / Test ${{ matrix.name }} Docker build (AMD64, ubuntu-latest) (push) Waiting to run
Invidious CI / Test ${{ matrix.name }} Docker build (ARM64, ubuntu-24.04-arm) (push) Waiting to run
Invidious CI / lint (push) Waiting to run
* Prevent player microformat from being overwritten by the next microformat
Closes https://github.com/iv-org/invidious/issues/5443
The player microformat is what we need to get the published date,
premiere timestamp, allowed regions and more information of the video.
Youtube introduced a new `microformat.microformatDataRenderer` in the
next endpoint which overwrote the player microformat
`microformat.playerMicroformatRenderer` when merged
* Update src/invidious/videos/parser.cr
Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com >
---------
Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com >
2025-09-08 17:16:22 -03:00
Emilien
cf2dfbb75d
chore: remove debug
2025-09-08 21:34:47 +02:00
Emilien
21c13bba9d
chore: use api captions from companion when available
2025-09-08 21:34:47 +02:00
syeopite
5e9d51c06e
Refactor FilteredCompressHandler to inherit from stdlib
...
This changes its behavior to align with the stdlib variant in that
compression is now delayed till the moment that the server begins to
send a response.
This allows the handler to avoid compressing empty responses,and
safeguards against any double compression of content that may occur
if another handler decides to compressi ts response.
This does however come at the drawback(?) of it now removing
`content-length` headers on requests if it exists; since compression
makes the value inaccurate anyway.
See: https://github.com/crystal-lang/crystal/pull/9625
2025-09-08 21:34:47 +02:00
Emilien
1653dd629e
fix formatting
2025-09-08 21:34:47 +02:00
Emilien
cba2adc6ef
fix csp + progress proxy + allow omit public_url
2025-09-08 21:34:47 +02:00
Emilien
42b955d713
chore: add the suggestions
2025-09-08 21:34:47 +02:00
Emilien
324a416fd4
initial support for base_url with invidious companion + proxy invidious_companion
2025-09-08 21:34:47 +02:00
syeopite
fd8dc93569
Show message when connection to the database is not possible ( #5346 )
Build and release container directly from master / release (docker/Dockerfile, AMD64, ubuntu-latest, linux/amd64, ) (push) Has been cancelled
Build and release container directly from master / release (docker/Dockerfile.arm64, ARM64, ubuntu-24.04-arm, linux/arm64/v8, -arm64) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.2, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.3, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.16.3, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (nightly, false) (push) Has been cancelled
Invidious CI / Test ${{ matrix.name }} Docker build (AMD64, ubuntu-latest) (push) Has been cancelled
Invidious CI / Test ${{ matrix.name }} Docker build (ARM64, ubuntu-24.04-arm) (push) Has been cancelled
Invidious CI / lint (push) Has been cancelled
2025-08-23 04:04:06 -07:00
syeopite
67f93e55d8
Fix "ex" variable collision in invidious.cr
...
The exception handling for database connections results in an
`ex` variable which Ameba sees as overshadowing the `ex` used by the
`ex` block arg used to define the HTTP status code 500 handler below.
Although this is a non-issue since the db connection exception handling
will cause Invidious to exit, Ameba's nature as a static checker means
that it isn't aware of this.
The simplest fix without a dirty ameba ignore comment is to rename `ex`
within the Kemal handler block below, since `ex` within a begin rescue
block is a Crystal convention that will also cause Ameba to raise when
not adhered to.
2025-08-23 03:35:59 -07:00
syeopite
f35f529adc
Videos: Fix missing .id to retrieve first playlist video ID ( #5366 )
2025-08-23 03:30:00 -07:00
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
Samantaz Fox
b0c9f87fbe
Fix missing .id to retrieve first playlist video ID
...
This was missed in the review of PR 5196
2025-06-26 19:09:52 +00: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
8723fdca06
Update src/invidious.cr
...
Co-authored-by: Samantaz Fox <coding@samantaz.fr >
2025-06-21 12:02:32 -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
8cd9d53fb1
show message when connection to the database is not possible
2025-06-12 18:44:01 -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 )
...
Build and release container directly from master / release (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.2, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.3, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.16.3, 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
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 )
Build and release container directly from master / release (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.2, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.3, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.16.3, 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-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 )
...
Build and release container directly from master / release (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.2, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.3, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.15.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.16.3, 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
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