Commit Graph

2641 Commits

Author SHA1 Message Date
adccca366e Fix invidious version for old git versions
The `%cs` format was only added to git in version 2.25 while `%ci` has been
around forever.
2020-12-04 01:58:27 +01:00
76cad41382 Merge pull request #1525 from saltycrys/fix-video-descriptions
Fix `extract_polymer_config`
2020-12-03 23:31:39 +00:00
cc684ff0b1 Fix redirect channels
Redirect channels may use JS to redirect now, instead of only a response header
as it used to be. This fix reads the channel to redirect to from `ytInitialData`.
2020-12-03 21:02:52 +01:00
7823c07f1a Fix extract_polymer_config
The `ytInitialPlayerResponse` regex can now handle `var` and `window`
assignments.

The video streams can now be extracted from `player_response` and
`initial_data`.

This fixes the descriptions on videos and videos themselves. Videos are
technically broken right now, but work becasue of a fallback that goes through
embeds.
2020-12-03 18:10:41 +01:00
d7377015a2 Extracting search endpoints 2020-12-01 18:02:39 -06:00
b409cdece5 Improve error message 2
Electric Boogaloo

The long backtrace has been moved into a `<details>` HTML element, as suggested
by @B0pol. To make the error still visible it has been added to the top under
`Title:`. This also encourages informative issue titles.
2020-12-01 13:41:19 +01:00
2478e67d16 Switch to date based versioning scheme
Since no new tags are created for releases the version has been frozen for some
time, with only the commit hash changing.

Versions based on the latest commit date make it much easier to identify them.
2020-12-01 13:29:30 +01:00
df3f9a2ae8 fix: channel info parsing 2020-11-30 19:35:45 +01:00
ca781651cb Fix formatting of #1504 2020-11-30 15:56:01 +01:00
92bb477f68 Improve error message
The error message has been reworded and the issue template now includes the
date, route, version and backtrace.
2020-11-30 13:02:35 +01:00
0f08cc5aa9 Remove backtrace on YouTube error
YouTube returning an error is not a bug in Invidious, so it should not print
a backtrace.
2020-11-30 12:57:25 +01:00
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
fe73eccb90 Merge pull request #1479 from saltycrys/theme-flash
Apply dark theme immediately
2020-11-28 20:54:45 +00:00
b41ca72d2b revert: remove 'JSON.parse("' 2020-11-26 18:22:31 +01:00
1ba17a0e14 feat: centralize ytInitialData parsing 2020-11-26 13:43:53 +01:00
480d31eb5e fix: ytInitialData parsing with regex 2020-11-26 07:22:47 +01:00
1973f93d4a Merge pull request #1482 from matthewmcgarvey/extract-playlist-routes
Extract playlist routes from global file
2020-11-20 21:48:34 +00:00
3a2f4d4def allow to set a custom anti-captcha api url (#1473) 2020-11-20 22:21:26 +01:00
192d2b86b6 Extract playlist routes from global file 2020-11-19 19:21:48 -06:00
6ca948ac3c Merge pull request #1477 from saltycrys/empty-preference-values
Fill empty preference values
2020-11-19 21:45:00 +00:00
ff46c18164 Move themes into default.css
Now that themes are controlled with a class instead of setting
media="none" on the stylesheet link and both themes already being
duplicated in default.css for the automatic themeing it makes sense
to have all theme related CSS in the same place.

This commit also fixes the missing dark theme on embeds.
2020-11-17 22:53:45 +01:00
de777907f2 Apply dark theme immediately
Themes are now controlled with a class on the body element.

If a preference is set the body element will have either "dark-theme"
or "light-theme" class. If no preference is set or the preference is
empty the class will be "no-theme".

"dark-theme" and "light-theme" are handled by darktheme.css and
lighttheme.css respectively.

"no-theme" is handled by default.css where depending on the value of
"prefers-color-scheme" the styles corresponding to "dark-theme" or
"light-theme" are applied.

Unfortunately this means that both themes are duplicated, once in the
theme .css and once in default.css.
2020-11-16 04:19:41 +01:00
72c4fd868a Fill empty preference values 2020-11-16 01:33:55 +01:00
c9c6c1f769 Remove duplicate Referrer-Policy 2020-11-15 10:02:45 +00:00
bb7d8735cb Merge branch 'master' into patch-1 2020-11-12 17:06:38 +01:00
557b0d76ab Merge pull request #919 from edumoreira1506/feature/add-buttons-top-page
Add Previous/Next page buttons at the top of the page
2020-11-12 17:00:23 +01:00
13073411cc Merge pull request #1465 from saltycrys/storyboards
Update videojs-vtt-thumbnails to latest upstream version and improve storyboard display
2020-11-12 16:54:28 +01:00
6d29e9c1b7 Fix missing videos tab on some channels (#1462)
* Fix missing videos tab on some channels

* Fixed formatting

Co-authored-by: Linux User <user@localhost.local>
2020-11-12 15:35:12 +00:00
d3e4739745 Improve storyboard display 2020-11-08 22:23:24 +01:00
38b617d848 Formatting 2020-11-07 08:22:44 -06:00
dda02f783f Extract embed routes into separate classes 2020-11-06 16:44:36 -06:00
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
2cded8dcac Extract /watch route from main file 2020-11-02 18:06:06 -06:00
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
9a8b81fcbe Fix storyboards 2020-10-25 09:35:16 +01:00
138f38aade more polish (#1437) 2020-10-24 03:26:17 +00:00
ec4a22687f Update get_about_info for polymer (iv-org/invidious#1423) (#1429)
Update get_about_info for polymer (iv-org/invidious#1423)
2020-10-23 01:40:07 +00:00
22d9d16a7a Update parsing of ytInitialData (#1427)
Update parsing of ytInitialData
2020-10-22 10:02:15 +00:00
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
d571573e52 Set preferences before conditional breaks in before_all (#1412) 2020-10-16 10:23:18 +00:00
989317e5d3 Extract RefreshChannelsJob (#1403) 2020-10-15 14:22:41 +00:00
812a21bce6 Merge pull request #1372 from tleydxdy/patch-1
Add exponential backoff to refresh_channels
2020-10-10 14:01:47 +02:00
e02608edf8 Use channel API v3 2020-10-10 12:15:30 +02:00
1a7e160956 Merge pull request #1402 from matthewmcgarvey/feed-menu-overlap
Fix feed menu overlap at iPad screen widths
2020-10-08 08:35:50 +00:00
5937e0289e Fix feed menu overlap at ipad screen widths 2020-10-07 23:01:18 -05:00
85c212aee3 Provide rough draft of better project organization 2020-10-05 23:57:19 -05:00
1978c3d3bd Merge pull request #1379 from Rjevski/patch-1
Remove on-hover tooltip from player
2020-10-05 11:11:25 +00:00
f65e57ee82 Fix formatting 2020-10-03 15:19:12 +02:00
1595eaeb74 Fix #1382 : Playlists missing first video
The index was set to index - 1, causing the first video to be shifted in fetch_playlist_videos
(because of its index being -1 lower than it should) and thus not displayed on playlist page.
2020-09-25 14:26:07 +02:00
a54cbe896d Remove on-hover tooltip from player
Using the player on latest Safari, the tooltip appears and stays stuck for long even when switching to fullscreen which is annoying. You need to explicitly click anywhere to dismiss that stuck tooltip.

This doesn't seem to happen in Firefox so I am not sure whether this is a browser bug, but in any case I don't see any value in keeping this tooltip so maybe we can just remove it?
2020-09-15 18:50:17 +01:00