Emilien 842b12a551 Rebase onto master: graceful fallback to /next endpoint for major watch page data
- Display watch page even when player endpoint fails, using data from /next
- Show error message in player container placeholder (like YouTube does)
- Extract title, description, views, likes, comments etc. from /next
- Handle missing videoDetails gracefully with fallback to renderer data
- Fix is_listed detection from video badges when videoDetails unavailable
- Add subreason display for better error messages
- Add has_unlisted_badge? helper function
- Bump SCHEMA_VERSION to 4
- Integrate embed page with the same error handling
- Guard against empty streams when video has errors
- Fix JSON::Any.new(nil) crash for shortDescription
- Add locale key: error_from_youtube_unplayable

PR TODO status:
[x] Integrate the embed page with the changes
[x] Display the subreason on the watch page when there is an error
[x] Fix description (nil safety)
[ ] Add mocks for a video without videoDetails
2026-06-26 16:58:11 +02:00
..
2023-06-29 23:52:41 +02:00
2025-09-12 15:05:16 +00:00
2023-08-07 21:29:48 +02:00
2023-10-07 17:35:04 +00:00
2025-09-12 15:03:53 +00:00
2025-09-12 15:06:32 +00:00
2025-09-12 15:03:42 +00:00
2025-09-12 15:04:11 +00:00
2025-09-12 15:04:24 +00:00
2025-09-12 15:04:18 +00:00
2025-09-12 15:02:29 +00:00
2025-09-12 15:02:22 +00:00
2025-09-12 15:02:38 +00:00
2025-09-12 15:02:45 +00:00
2025-09-12 15:05:42 +00:00
2025-09-12 15:03:11 +00:00
2025-09-12 15:02:59 +00:00
2025-09-12 15:05:55 +00:00
2025-09-12 15:05:58 +00:00
2025-09-12 15:05:46 +00:00
2025-09-12 15:06:37 +00:00
2025-09-12 15:04:57 +00:00
2025-09-12 15:04:54 +00:00
2025-09-12 15:04:43 +00:00
2025-09-12 15:04:46 +00:00
2025-09-12 15:05:21 +00:00
2025-09-12 15:05:28 +00:00
2025-09-12 15:04:39 +00:00
2025-09-12 15:05:11 +00:00
2025-09-12 15:04:05 +00:00
2025-09-12 15:06:06 +00:00
2025-09-12 15:06:45 +00:00
2025-09-12 15:02:14 +00:00
2025-09-12 15:02:12 +00:00
2025-09-12 15:06:42 +00:00
2025-09-12 15:05:36 +00:00
2023-08-07 21:29:48 +02:00
2025-09-12 15:05:05 +00:00
2025-09-12 15:04:30 +00:00
2025-09-12 15:03:31 +00:00
2025-09-12 15:03:22 +00:00
2025-09-12 15:06:12 +00:00
2025-09-12 15:06:09 +00:00
2025-09-12 15:06:16 +00:00
2025-09-12 15:06:03 +00:00
2025-09-12 15:06:00 +00:00
2025-09-12 15:05:49 +00:00
2025-09-12 15:02:18 +00:00
2025-09-12 15:02:17 +00:00
2025-01-25 14:02:51 +01:00
2025-09-12 15:02:11 +00:00
2025-09-12 15:03:59 +00:00
2025-09-12 15:04:34 +00:00