Commit Graph

226 Commits

Author SHA1 Message Date
Omar Roth 02d4186b11 Fix player matching 2020-04-09 10:55:50 -05:00
Omar Roth 3f97bebd69 Support adding video to playlist from watch page 2020-04-09 10:55:32 -05:00
Omar Roth 59a15ceef6 Remove VarInt class 2020-03-15 17:47:16 -04:00
Omar Roth 4011a113cc Strip invalid characters from referer URLs 2020-03-15 17:47:16 -04:00
Omar Roth a117d87f33 Skip validation checks for videoplayback, ggpht 2020-03-04 13:06:17 -05:00
leonklingele 0d536d11e3 Verify token signature in constant time, Run cheap checks first in token validation process (#1032)
* Verify token signature in constant time

To prevent timing side channel attacks

* Run cheap checks first in token validation process

Expensive checks such as the nonce lookup on the database or the
signature check can be run after cheap/fast checks.
2020-03-02 10:04:36 -06:00
Omar Roth 43da06a354 Remove temp fix for crystal/crystal-lang#7383 2020-02-20 18:30:46 -05:00
Leon Klingele bc9dc3bf1e Update code formatting for Crystal 0.33.0
Crystal 0.33.0 introduced some changes to to the code formatter.
Run "crystal tool format" so CI doesn't fail anymore.
2020-02-15 19:52:28 +01:00
Omar Roth a2c5211b20 Check /browse_ajax for channel blocks 2020-02-01 11:23:12 -05:00
Omar Roth 648cc0f006 Refactor signature extraction 2020-01-24 17:02:28 -05:00
Omar Roth 823603650f Add support for /sorry/index CAPTCHA 2019-12-03 19:14:11 -05:00
Omar Roth a017574f74 Add support for force_resolve to QUIC client 2019-11-28 08:19:28 -06:00
Omar Roth 0e3a48ff76 Update QUICPool 2019-11-24 13:41:47 -05:00
Omar Roth d46b26e3bc Use QUIC for connections to YouTube 2019-11-18 17:28:32 -05:00
Omar Roth 71bc9eea28 Add support for Anti-Captcha 2019-11-09 14:22:39 -05:00
Omar Roth 142d974641 Use force_resolve for search suggestions 2019-11-07 12:25:34 -05:00
Omar Roth bcdb8cd770 Fix default fo dark_mode 2019-11-04 17:08:13 -05:00
Omar Roth 833a60f29c Update pubsub to use client pool 2019-11-01 07:34:36 -04:00
Omar Roth 13e7cca1a4 Bump read timeout 2019-10-28 12:34:50 -04:00
Omar Roth 03e24cccd0 Add support for configurable administrator email 2019-10-27 14:18:07 -04:00
Omar Roth 0cf187dee7 Add support for image captcha in Google login 2019-10-27 00:19:05 -04:00
Omar Roth bdeb325bad Fix monkeypatch for HTTP::Client 2019-10-26 11:51:23 -04:00
Omar Roth a1225b6d0d Sanitize input to decode_length_seconds 2019-10-26 10:17:25 -04:00
Omar Roth 202de1436d Fix broken connections in pool 2019-10-25 23:06:08 -04:00
Omar Roth 7f8746fcd4 Remove invalid connections from pool 2019-10-25 22:40:53 -04:00
Omar Roth e05a25d701 Vary user-agent 2019-10-25 18:02:33 -04:00
Omar Roth 6930570fa2 Add HTTPClient pool 2019-10-25 12:58:16 -04:00
Omar Roth 7524b5e349 Move feed_menu and default_home into user preferences 2019-10-20 20:43:33 -04:00
Omar Roth 2a4b252a9d Only force resolve for www.youtube.com 2019-10-18 12:41:03 -04:00
Omar Roth be055d9dcb Add support for custom playlists 2019-10-15 21:17:14 -04:00
Omar Roth 7aada3f328 Avoid override for X-Client headers 2019-10-10 23:45:46 -04:00
Omar Roth dad885c051 Add YouTube-Client headers to HTTP requests 2019-10-10 22:03:39 -04:00
Omar Roth da07f99d3d Bump supported Crystal version 2019-09-30 15:36:54 -04:00
Omar Roth f69f0b97f5 Add fix for index out of bounds during high load 2019-09-24 13:38:50 -04:00
Omar Roth 4361ea9686 Update DB calls for 0.31.0 2019-09-24 13:38:50 -04:00
Omar Roth 8c2ddb0255 Add config options for host binding and port 2019-09-24 13:38:50 -04:00
leonklingele 1aefc5b540 Update to Crystal 0.31.0, resolve compiler deprecation warnings, update dependencies (#764)
* shard: update to crystal 0.31.0

Additionally, no longer use the Crystal "markdown" library which has
been removed from the Crystal stdlib in version 0.31.0.
See https://github.com/crystal-lang/crystal/pull/8115.

Also fix some deprecation warnings using the following commands:

    find . \( -type d -name .git -prune \) -o -type f -exec sed -i 's/URI\.escape/URI\.encode_www_form/g' "{}" \;
    find . \( -type d -name .git -prune \) -o -type f -exec sed -i 's/URI\.unescape/URI\.decode_www_form/g' "{}" \;
    sed -i 's/while \%pull\.kind \!\= \:end_object/until \%pull\.kind\.end_object\?/g' src/invidious/helpers/patch_mapping.cr
2019-09-24 13:31:33 -04:00
Omar Roth b1fc80b79a Update sub_count extractor 2019-09-12 21:09:23 -04:00
Omar Roth 50d793e49b Hide video count for auto-generated channels 2019-09-12 13:11:21 -04:00
Omar Roth 34c43b8349 Add support for abbreviated sub count in search 2019-09-12 13:06:27 -04:00
Omar Roth 7c75111c41 Refactor error handling for API endpoints 2019-09-05 14:12:14 -04:00
Omar Roth 7b53b6bfef Shrink continuation cursor for YouTube comments 2019-09-04 15:47:27 -04:00
Omar Roth 26107bd6c3 Minor refactor 2019-08-27 08:08:26 -05:00
Omar Roth 059f50dad4 Add 'playlistThumbnail' to playlist objects 2019-08-21 19:08:11 -05:00
Omar Roth 9f9cc1ffb5 Refactor search extractor 2019-08-21 18:23:20 -05:00
Omar Roth 2b94975345 Fix playlist_thumbnail extractor 2019-08-16 20:06:21 -05:00
Omar Roth a19cdb5e72 Fix season playlists 2019-08-16 15:46:59 -05:00
psvenk f54fbd057e Add prefers-color-scheme support (#601)
* Add prefers-color-scheme support

This should fix <https://github.com/omarroth/invidious/issues/559>.
The cookie storage format has been changed from boolean
("true"/"false") to tri-state ("dark"/"light"/""), so that users
without a cookie set will get dark mode if they have enabled the dark
theme in their operating system. The code for handling the cookie
state, along with the user's operating system theme, has been factored
out into a new function `update_mode`, which is called both at window
load and at the "storage" event listener, because the "storage" event
listener is only trigerred when a change is made to the localStorage
from another tab/window (for more info - see
<https://stackoverflow.com/a/4679754>).
2019-08-15 11:29:55 -05:00
Leon Klingele 2a9a348164 Format Crystal files
Crystal 0.30.1 apparently introduced some breaking changes to their
code formatter which made CI fail.

The code was automatically formatted by running

    crystal tool format
2019-08-14 23:31:07 +02:00
Omar Roth b63f469110 Fix typo in ConfigPreferences 2019-08-09 14:09:24 -05:00