Update changelog

This commit is contained in:
Chocobozzz 2024-04-16 14:42:22 +02:00
parent 91139b634d
commit 4f12515cc7
No known key found for this signature in database
GPG Key ID: 583A612D890159BE
1 changed files with 129 additions and 0 deletions

View File

@ -1,5 +1,134 @@
# Changelog
## v6.1.0-rc.1
### IMPORTANT NOTES
* You must update nginx configuration: https://github.com/Chocobozzz/PeerTube/blob/develop/support/nginx/peertube
* Add `location ~ ^/api/v1/users/[^/]+/imports/import-resumable$ {` block
* This release changes the way how PeerTube counts a video view:
* Views are taken into account after 10 seconds instead of 30 seconds (can be changed in YAML config)
* Views use a *Session ID* generated by the web browser instead of using the request IP (former behavior can be restored in YAML config)
* The goal of this change is to get closer to how other video platforms like Mux, Vimeo, or Instagram work
### Admin config (non-exhaustive)
* **Breaking changes**:
* Rename `views.videos.ip_view_expiration` to `views.videos.view_expiration`
* YAML & web admin configs:
* Add `storyboards.enabled` config to disable storyboard generation
* Remove `services.twitter.whitelisted`: Twitter/X doesn't seem to need this anymore. This means that PeerTube will try to inject the video player in Twitter/X by default instead of using a classic image/description
* YAML config only:
* Add `open_telemetry.metrics.playback_stats_interval` config to customize how often viewers send playback stats to server
* Add `views.videos.watching_interval.{anonymous,users}` configs to change how often the web browser sends "is watching" information to the server
* Add `stats.registration_requests.enabled` and `stats.abuses.enabled` configs to hide instance registration/abuse requests public stats (average response time, total registration/abuse requests etc.)
* Add `stats.total_moderators.enabled` and `stats.total_admins.enabled`configs to hide total admins/moderators public stats
* Add `object_storage.streaming_playlists.store_live_streams` config to not store live stream chunks into object storage (when enabled for streaming playlists)
* Set `open_telemetry.metrics.http_request_duration.enabled` to `false` by default to avoid performance issues on the Prometheus backend due to high metric cardinality
### Maintenance
* Also generate `600x600` and `1500x1500` avatar sizes
* Also generate `600x100` banner size
### Plugins/Themes/Embed API
* Add ability for plugins to create a client custom sub-page in `/my-account` page [#6218](https://github.com/Chocobozzz/PeerTube/pull/6218)
* Add access to `req.rawBody` for [plugin routes](https://docs.joinpeertube.org/contribute/plugins#add-custom-routes) [#6300](https://github.com/Chocobozzz/PeerTube/pull/6300)
* Add server plugin hooks (https://docs.joinpeertube.org/api/plugins):
* `filter:api.user.me.get.result` [#6219](https://github.com/Chocobozzz/PeerTube/issues/6219)
* Add `peertubeHelpers.videos.loadByIdOrUUIDWithFiles` helper [#6302](https://github.com/Chocobozzz/PeerTube/pull/6302)
### Features
* :tada: Implement user import/export :tada: [#6215](https://github.com/Chocobozzz/PeerTube/pull/6215)
* This is not a migration tool: data (like channels or videos) is duplicated and not moved from the previous PeerTube instance
* Export:
* A ZIP is generated by PeerTube and an email is sent to the user when the archive is ready
* The archive file contains ActivityPub data for federation compatibility and custom JSON files used by PeerTube import. It also contains video/playlist thumbnail and channel/account avatar/banner files
* User can include video files in the archive
* Archive files can be stored in object storage
* Export can be disabled by the admin. They can also set an expiration time to automatically delete archive files and limit the export file size depending on the user's video quota
* Import:
* Update account metadata (display name, description...)
* Update user settings (video autoplay policy, notification settings...)
* Create entries in the mute list
* Add watched videos in user's videos history
Add likes/dislikes
* Send a follow request to imported subscriptions
* Create channels, playlists and videos (if the video files are included in the archive)
* Admins can disable user import
* :tada: Add ability to keep the original video file :tada: [#6157](https://github.com/Chocobozzz/PeerTube/pull/6157)
* Can be stored in object storage
* Uploader can download the original file
* The original file is used in the user export archive (instead of the max quality file)
* Add Turkish language support in client
* Add ability for admins to set a banner and an avatar to the instance. The banner is used in *About instance*/*Login*/*Register an account* pages. Both the banner and the avatar can be used on the instance homepage using `<peertube-instance-banner>`/`<peertube-instance-avatar>` tag or on external websites/applications like the [JoinPeerTube website](https://joinpeertube.org/instances)
* Add ability for uploaders to download and add a video to a playlist on the *My videos* page using the dropdown button [#6008](https://github.com/Chocobozzz/PeerTube/pull/6008)
* Video views statistics:
* Count a *view* after 10 seconds and use a web browser session id to identify a viewer (see IMPORTANT CHANGES section)
* Add information about the location of the viewer subdivision/region
* More accurate retention stats where PeerTube doesn't take into account empty views anymore
* UI/UX:
* Automatically filter on *Local videos* in admin
* Add ability to sort videos by file size
* Add total video file size column in admin users list
* Improve admin runner jobs list by using badges with same colors for type/runner and add *processed/finished* columns
* Add *Recommended* tags to recommended PeerTube plugins/themes
* Improve plugins/themes default trending sort
* Trim username on login
* Warn if "Forgot password" email contains uppercase
* Use more precise buttons label to save changes in *My account* settings
* Add icon to owners/moderators only options
* Always use short UUIDs instead of full UUIDs in client to prevent URL confusion
* Add average admins/moderators response time in *Request an account* page
* Add color to registration/abuse state icon
* Player:
* Add an enable/disable subtitle button to the control bar
* Faster auto-resizing of the player when the video has a custom aspect ratio (only for videos uploaded on PeerTube >= 6.1)
* Use video aspect ratio for responsive embeds (only for videos uploaded on PeerTube >= 6.1)
* Performance:
* Optimize *watching* (`/api/v1/videos/:videoId/views`) endpoint
* Reduce `ffprobe` calls when not needed resulting in faster live stream transcoding startup and CPU/IO reduction during video upload/import
* Federation
* Introduce a new way to federate `Views` events in the federation. See [the commit details](https://github.com/Chocobozzz/PeerTube/commit/b4f4432459f22994cb8fa667c862a0edd7af0ebc) for more information
* Implements [FEP-2677](https://codeberg.org/fediverse/fep/src/branch/main/fep/2677/fep-2677.md) to identify the `Application` `Actor`
* Add Lemmy `postingRestrictedToMods` information to channels AP objects
* Improve generated video thumbnail quality
* Add notification when a subscribed video channel is live streaming
* Support `itunes:owner` in podcast feed
### Bug fixes
* Add stripes to square video thumbnails too (like we do for portrait videos)
* Prevent channels from being displayed multiple times on the *My channels* page
* Stricter video timestamp "linkification"
* Correctly fix downloading video files from object storage with some video names
* Fix broken RSS feed in some (rare) cases
* Fix local jobs count/pagination with *Waiting* jobs
* Banned users cannot live stream anymore
* Correctly escape HTML entities in meta tags [#6206](https://github.com/Chocobozzz/PeerTube/pull/6206)
* Fix broken account channels page with high `video_channels.max_per_user` config
* Add ability for moderators to approve/reject user registrations
* Do not display empty notification settings group
* Correctly fix WebTorrent video import crash
* Fix video channel synchronization crash on remote channels/playlists that contain hidden videos (unavailable, deleted etc.)
* Ensure the filename doesn't contain `/` character when downloading a video
* Fix Google Search SEO (with `Video is not the main content of the page` error)
* Remove password autocomplete in embed which causes issues when the parent page has a password input and the user uses the web browser's password autofill feature
* Don't submit the login form on forgot my password keyboard click
* Fix storyboard generation with some videos
* Fix ffmpeg encoder after custom plugin transcoding profile deletion
* Fix navigating from one channel related page (playlist, videos...) to another one
* More robust live stream transcoded by a remote runner
* Fix first video in playlist that doesn't start at "starts at"
* Fix embed HTML code for videos/playlists that have passwords
* Display external account/channel playlists if user is allowed to escape the federation
* Fix view endpoint crash on geoip update failure
* Fix setting video subtitle from URL query
* Fix selecting "Display all languages/categories/licences" in videos search resulting in an empty search
## v6.0.4
### IMPORTANT NOTES