aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.md96
-rw-r--r--server/controllers/api/videos/index.ts1
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
97videosRouter.get('/:id/description', 98videosRouter.get('/:id/description',
98 openapiOperationDoc({ operationId: 'getVideoDesc' }), 99 openapiOperationDoc({ operationId: 'getVideoDesc' }),
99 asyncMiddleware(videosGetValidator), 100 asyncMiddleware(videosGetValidator),