diff options
-rw-r--r-- | CHANGELOG.md | 96 | ||||
-rw-r--r-- | server/controllers/api/videos/index.ts | 1 |
2 files changed, 97 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 722e2b968..eaef429d2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md | |||
@@ -1,5 +1,101 @@ | |||
1 | # Changelog | 1 | # Changelog |
2 | 2 | ||
3 | ## v5.0.0-rc.1 (not released yet) | ||
4 | |||
5 | ### IMPORTANT NOTES | ||
6 | |||
7 | * **Important** Private and internal video files are now protected. See [#5370](https://github.com/Chocobozzz/PeerTube/pull/5370) for more information, but see below for most important information: | ||
8 | * For private/internal videos on filesystem: | ||
9 | * These videos are now under a `private/` subdirectory in `videos/` and `streaming-playlists/` directories | ||
10 | * Nginx doesn't serve these private files anymore, the requests are forwarded to PeerTube that will check authentication | ||
11 | * For private/internal videos in object storage: | ||
12 | * These videos have now a private ACL | ||
13 | * PeerTube proxifies requests to private object storage (using pre-signed URLs is not possible as explained in [#5370](https://github.com/Chocobozzz/PeerTube/pull/5370)) | ||
14 | * Torrent files and magnet URIs of private/internal videos don't contain a webseed URL anymore since they require authentication | ||
15 | * **Important** You need to manually execute a migration script after your upgrade to migrate private/internal video files: | ||
16 | * Classic installation: `cd /var/www/peertube/peertube-latest && sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production node dist/scripts/migrations/peertube-5.0.js` | ||
17 | * Docker installation: `cd /var/www/peertube-docker && docker-compose exec -u peertube peertube node dist/scripts/migrations/peertube-5.0.js` | ||
18 | * There is a new `secrets.peertube` configuration. You must fill it before running PeerTube v5 | ||
19 | * You must update your nginx configuration: | ||
20 | * We introduced a new `location` for plugin websocket routes | ||
21 | * We introduced a new `location` for private videos files | ||
22 | |||
23 | ### Documentation | ||
24 | |||
25 | * Add [Monitoring/Observability documentation](https://docs.joinpeertube.org/maintain-observability) using PeerTube OpenTelemetry feature | ||
26 | |||
27 | ### Maintenance | ||
28 | |||
29 | * REST API breaking change: | ||
30 | * `role` is now `role.id` and `roleLabel` is `role.label` in user response | ||
31 | * We now store the complete remote video description: | ||
32 | * Deprecate `description` in favour of `truncatedDescription` when listing videos | ||
33 | * Complete description is sent by the server in `description` when getting a specific video | ||
34 | * Deprecate `/api/v1/videos/:id/description` endpoint | ||
35 | * `search.disable_local_search` disables local search in client search bar only and doesn't disable it on server side anymore [#5411](https://github.com/Chocobozzz/PeerTube/pull/5411) | ||
36 | |||
37 | ### Plugins/Themes/Embed API | ||
38 | |||
39 | * Add server plugin hooks (https://docs.joinpeertube.org/api-plugins): | ||
40 | * `filter:activity-pub.remote-video-comment.create.accept.result` | ||
41 | * Add server plugin helpers | ||
42 | * `socket.sendNotification` and `socket.sendVideoLiveNewState` [#5239](https://github.com/Chocobozzz/PeerTube/pull/5239) | ||
43 | * Add ability for plugins to register a websocket route using `registerWebSocketRoute` | ||
44 | * Add client plugin hooks (https://docs.joinpeertube.org/api-plugins): | ||
45 | * `filter:internal.player.p2p-media-loader.options.result` [#5318](https://github.com/Chocobozzz/PeerTube/pull/5318) | ||
46 | |||
47 | ### CLI tools | ||
48 | |||
49 | * Add ability to install alpha/beta/rc plugin versions | ||
50 | |||
51 | ### Features | ||
52 | |||
53 | * :tada: Support object storage for live streams :tada: | ||
54 | * :tada: Support Two Factor authentication (OTP) :tada: | ||
55 | * UX: | ||
56 | * Add explanation on disk space used for user quota admin config [#5305](https://github.com/Chocobozzz/PeerTube/pull/5305) | ||
57 | * Display channel in my videos list | ||
58 | * Show which playlists videos are added to in my videos list | ||
59 | * Add *Channels* link in left menu | ||
60 | * Add `...` after the truncated video name in miniature | ||
61 | * Add object storage info badge in videos admin overview | ||
62 | * Add links to video files in videos admin overview | ||
63 | * Better indicate the live ended in embed by displaying a message and the live preview | ||
64 | * Force live autoplay by muting the video if necessary when the user was waiting for the live | ||
65 | * Handle network issues in video player [#5138](https://github.com/Chocobozzz/PeerTube/pull/5138) | ||
66 | * Cache chunks to upload in server to resume upload later [#5224](https://github.com/Chocobozzz/PeerTube/pull/5224) | ||
67 | * Add ability to serve custom static files under `/.well-known` URL path [#5214](https://github.com/Chocobozzz/PeerTube/pull/5214) | ||
68 | * Use account/channel avatar in account/channel RSS feeds [#5325](https://github.com/Chocobozzz/PeerTube/pull/5325) | ||
69 | * Add filter to sort videos by name [#5351](https://github.com/Chocobozzz/PeerTube/pull/5351) | ||
70 | * Add ability to configure OpenTelemetry Prometheus exporter listening hostname | ||
71 | |||
72 | ### Bug fixes | ||
73 | |||
74 | * Hide all user email block if we can't change it (remote auth for example) | ||
75 | * Display an error if trying to reset password of user configured to use a remote authentication | ||
76 | * Fix peers info width in live | ||
77 | * Fix video job error when video has been deleted | ||
78 | * Fix user channels list with increased max counter | ||
79 | * More robust channel/playlist import/sync | ||
80 | * Hide useless *Wait Transcoding* input for lives | ||
81 | * Fix responsive in account channels list | ||
82 | * Fix slow page response when listing many videos | ||
83 | * Reload data when deleting a blocked video | ||
84 | * Prevent error with metrics in HTTP player if no P2P info is available | ||
85 | * Fix playlist overflow in account channels page | ||
86 | * Fix invalid date display for jobs | ||
87 | * Fix conflict with player hotkeys and `alt + number` web browser hotkey | ||
88 | * Fix horizontal overflow on rtl languages | ||
89 | * Fix actor follow constraint error on remote videos when *Allow users to do remote URI/handle search* is disabled | ||
90 | * Fix running again transcoding on a video that doesn't contain audio or on a video that doesn't contain video | ||
91 | * Fix re-transcoding of video with odd resolution | ||
92 | * Fix embed API with playlists | ||
93 | * Fix not working P2P with permanent live | ||
94 | * Fix following/fetching remote Pleroma actor | ||
95 | * Prevent high Redis memory usage when having many jobs | ||
96 | * Fix overall viewers stats with start/end dates | ||
97 | |||
98 | |||
3 | ## v4.3.1 | 99 | ## v4.3.1 |
4 | 100 | ||
5 | ### IMPORTANT NOTES | 101 | ### IMPORTANT NOTES |
diff --git a/server/controllers/api/videos/index.ts b/server/controllers/api/videos/index.ts index ea081e5ab..41992155d 100644 --- a/server/controllers/api/videos/index.ts +++ b/server/controllers/api/videos/index.ts | |||
@@ -94,6 +94,7 @@ videosRouter.get('/', | |||
94 | asyncMiddleware(listVideos) | 94 | asyncMiddleware(listVideos) |
95 | ) | 95 | ) |
96 | 96 | ||
97 | // TODO: remove, deprecated in 5.0 now we send the complete description in VideoDetails | ||
97 | videosRouter.get('/:id/description', | 98 | videosRouter.get('/:id/description', |
98 | openapiOperationDoc({ operationId: 'getVideoDesc' }), | 99 | openapiOperationDoc({ operationId: 'getVideoDesc' }), |
99 | asyncMiddleware(videosGetValidator), | 100 | asyncMiddleware(videosGetValidator), |