Commit graph

889 commits

Author SHA1 Message Date
saltycrys 3dac33ffba
Add backtraces to errors (#1498)
Error handling has been reworked to always go through the new `error_template`,
`error_json` and `error_atom` macros.
They all accept a status code followed by a string message or an exception
object. `error_json` accepts a hash with additional fields as third argument.

If the second argument is an exception a backtrace will be printed, if it is a
string only the string is printed. Since up till now only the exception message
was printed a new `InfoException` class was added for situations where no
backtrace is intended but a string cannot be used.

`error_template` with a string message automatically localizes the message.
Missing error translations have been collected in https://github.com/iv-org/invidious/issues/1497
`error_json` with a string message does not localize the message. This is the
same as previous behavior. If translations are desired for `error_json` they
can be added easily but those error messages have not been collected yet.

Uncaught exceptions previously only printed a generic message ("Looks like
you've found a bug in Invidious. [...]"). They still print that message
but now also include a backtrace.
2020-11-30 10:59:21 +01:00
Matthew McGarvey 192d2b86b6 Extract playlist routes from global file 2020-11-19 19:21:48 -06:00
Matthew McGarvey dda02f783f Extract embed routes into separate classes 2020-11-06 16:44:36 -06:00
Perflyst cda322e311
Merge pull request #1449 from raycheung/master
Fix stale playlist video counting on add/drop (#1448)
2020-11-03 17:39:34 +01:00
Matthew McGarvey 2cded8dcac Extract /watch route from main file 2020-11-02 18:06:06 -06:00
Ray Cheung babe0c31ad Fix stale playlist video counting on add/drop (https://github.com/iv-org/invidious/issues/1448)
The return of `cardinality()` is not affected by the `array_append()`
and `array_remove()` of the same statement.
2020-11-01 12:20:44 +08:00
saltycrys 9a8b81fcbe Fix storyboards 2020-10-25 09:35:16 +01:00
Matthew McGarvey 0520e67303
[refactor] Finish converting jobs to new job setup (#1420)
[refactor] Finish converting jobs to new job setup
2020-10-17 12:25:57 +00:00
Matthew McGarvey d571573e52
Set preferences before conditional breaks in before_all (#1412) 2020-10-16 10:23:18 +00:00
Matthew McGarvey 989317e5d3
Extract RefreshChannelsJob (#1403) 2020-10-15 14:22:41 +00:00
Matthew McGarvey 85c212aee3 Provide rough draft of better project organization 2020-10-05 23:57:19 -05:00
Omar Roth b88872d54b
Fix sub refresh (#1370) 2020-09-09 23:03:27 +00:00
stranger195 13f58d602f
Replace omarroth with iv-org where applicable (#1353)
Fixes #1353
2020-08-25 16:07:16 +00:00
Omar Roth 62f015fc34
Fix playlist export for playlists with more than 100 videos 2020-07-28 17:21:39 -04:00
Omar Roth 452d1e8307
Fix warnings with latest version of Crystal 2020-07-26 10:59:31 -04:00
Omar Roth 92f337c67e
Add playlist import/export 2020-07-26 10:59:31 -04:00
Omar Roth 1eca969cf6
Add support for polymer redesign 2020-06-15 18:18:04 -05:00
Omar Roth c1cbdae5ee
Make HOST_URL constant 2020-06-15 18:13:14 -05:00
Omar Roth 4d4b6a2fa0
Remove top page 2020-06-15 18:11:36 -05:00
Omar Roth d30a972a90
Support Crystal 0.35.0 2020-06-15 18:11:06 -05:00
Dmitry Sandalov 5d8de5fde2
Allow user to subscribe to playlist (#17) 2020-05-17 14:28:00 +03:00
Omar Roth 454ae8656a
Cleanup request headers 2020-05-08 09:00:53 -05:00
Omar Roth 97eb01a28d
Merge weblate 2020-04-20 16:46:00 -05:00
Omar Roth 7bb7003c9d
Fix authorThumbnails in /api/v1/channels 2020-04-10 11:49:51 -05:00
Omar Roth 920463f2ff
Fix playlist_ajax 2020-04-10 11:49:18 -05:00
Omar Roth ca1185d0be
Fix warnings in latest version of Crystal 2020-04-09 12:18:09 -05:00
Omar Roth 3f97bebd69
Support adding video to playlist from watch page 2020-04-09 10:55:32 -05:00
Omar Roth 2e378da922
Add support for Swedish locale 2020-04-04 15:57:29 -05:00
Omar Roth b37f51bd7f
Fix /c/ redirect 2020-04-04 15:31:24 -05:00
Omar Roth 92798abb5d Add manifest-src to CSP 2020-03-19 13:41:08 -05:00
leonklingele 70cbe91776
Migrate to a good Content Security Policy (#1023)
So attacks such as XSS (see [0]) will no longer be of an issue.

[0]: https://github.com/omarroth/invidious/issues/1022
2020-03-15 16:46:08 -05:00
Omar Roth 1443335315
Switch textcaptcha to HTTPS 2020-03-10 11:12:11 -04:00
Omar Roth bb72672dd9
Replace static asset requests with QUIC 2020-03-06 13:53:35 -05:00
Omar Roth d96dee3aa6
Add debug info to videoplayback 2020-03-06 13:50:00 -05:00
Omar Roth bd0aaa343b
Prevent storyboards from hanging 2020-03-05 13:49:06 -05:00
Omar Roth 697c00dccf
Sanitize PLID 2020-02-28 14:10:01 -05:00
Omar Roth 1caf6a3298
Fix deadlock when updating notifications 2020-02-28 13:13:48 -05:00
Omar Roth 02fd02d482
Remove DB array concatenation 2020-02-28 12:14:29 -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
Leon Klingele e3c10d779d
Add support to read config from environment variable
Try to read app config from the "INVIDIOUS_CONFIG" environment variable.
If the variable is undefined, read config from config.yml file as before.

Required by https://github.com/omarroth/invidious/pull/1015 et al.
2020-02-04 15:53:46 +01:00
Omar Roth 648cc0f006
Refactor signature extraction 2020-01-24 17:02:28 -05:00
Omar Roth 7baced75e5
Fix channel redirect 2020-01-14 08:21:17 -05:00
Omar Roth 7b88d0efe3
Minor refactor 2020-01-08 20:27:21 -05:00
Omar Roth 0e844edacb
Add support for pt-BR 2019-12-05 15:26:35 -05:00
Omar Roth 1499ce43bf
Add support for Romanian locale 2019-12-03 19:41:58 -05:00
Omar Roth 062867a38d
Strip domain from caption URLs 2019-12-01 17:52:39 -05:00
Omar Roth 04d56420d1 Run 'crystal tool format' 2019-11-28 08:20:44 -06: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 276bf09238
Skip preferences for assets 2019-11-20 12:04:53 -05:00