IMPORTANT NOTES
- /!\ VERY IMPORTANT /!\ We added a unique index on actors usernames to fix some federation bugs.
Please check now if you have conflicts:- Go inside your database using
sudo -u postgres psql peertube_prod
and runselect "preferredUsername" from actor where "serverId" is null group by "preferredUsername" having count(*) > 1;
- If you have some results, it seems you have duplicate channels/accounts.
For every entry, you'll have to change the preferredUsername of the entry you want (so they are unique).
The updated actors could have some federations issues
- Go inside your database using
- Changed
auto_follow_index
setting configuration: you now have to use the complete URL inindex_url
.
If you used the default one, you now need to usehttps://instances.joinpeertube.org/api/v1/instances/hosts
.
This way, you can also use a direct raw URL (Gitlab, Github, pastebin, etc.) using a simple text format and easily maintain small communities or instance recommendation lists. - PeerTube requires NodeJS v10 or v12
CLI tools
- Add redundancy CLI: https://docs.joinpeertube.org/#/maintain-tools?id=peertube-redundancyjs
- Add ability to pass remaining options to youtube-dl binary in peertube-import script (@drzraf)
Docker
- Important Fix HLS storage configuration (@xcffl): https://github.com/Chocobozzz/PeerTube/blob/develop/support/docker/production/config/production.yaml#L48
- Add DKIM support to Docker (@kimsible)
Maintenance
- Add nginx configuration to redirect videos to an S3 bucket (@rigelk) and update of the corresponding documentation.
Plugins/Themes/Embed API
- Add embed API (https://docs.joinpeertube.org/#/api-embed-player):
playbackState
can beended
playbackStatusUpdate
has aduration
fieldsetCaption
andgetCaptions
methods
- Add client plugin hooks (https://docs.joinpeertube.org/#/api-plugins):
action:login.init
action:video-watch.video-threads.loaded
action:video-watch.video-thread-replies.loaded
(@ipbc-dev)
- Add server plugin hooks (https://docs.joinpeertube.org/#/api-plugins):
filter:api.video.pre-import-url.accept.result
filter:api.video.pre-import-torrent.accept.result
filter:api.video.post-import-url.accept.result
filter:api.video.post-import-torrent.accept.result
- Add server helpers:
database.query
to do SQL queriesvideos.removeVideo
config.getWebserverUrl
moderation.blockServer
,moderation.unblockServer
,moderation.blockAccount
,moderation.unblockAccount
,moderation.blacklistVideo
,moderation.unblacklistVideo
- Add client helpers:
- Add ability for plugins to define custom routes
- Add ability for plugins to remove video/playlist privacies
- Add ability for plugins to support additional auth methods
- Add
onSettingsChange
support
Official PeerTube plugins
Features
- 🎉 Add HTML support in PeerTube emails, improve text-only version (@rigelk)
- 🎉 Add settings panel for anonymous users so they can change NSFW/P2P/autoplay/displayed videos policy (@rigelk)
- 🎉 Improve redundancy management:
- Add quick action on video miniature to mirror a specific video using the web interface
- Add admin dashboard to list remote and local redundancies
- Add ability for admins to define remote redundancies policy (accept/reject)
- 🎉 Many responsive & UI improvements:
- Add maximized mode to markdown textarea (@kimsible)
- Detect and prevent sub menu overflow on small screens using a dropdown or a modal (@rigelk)
- Use a typeahead component for the search bar (@rigelk)
- Use a modal instead of a dropdown menu in small/mobile views (@kimsible)
- Improve display of accounts and channel pages on small and medium screens (@rigelk)
- Improve forms layout (@rigelk)
- Replace helpers icons with descriptions in admin configuration (@rigelk)
- Improve tables on mobile devices to prevent layout breakage (@kimsible)
- Fix multiple broken views on small screens (@kimsible)
- Make video add tabs scrollable on small devices (@kimsible)
- Better use of space and icons in the plugin administration interface (@rigelk)
- Restyle toast notifications to tone down colors (@rigelk)
- Add/move links at the bottom of the left menu (@rigelk)
- Improve avatar upload UI (@rigelk)
- Use progress bars for quota used in my account (@rigelk)
- Add variable pagination size to all tables (@rigelk)
- Add empty states to all tables (@rigelk)
- Add generic text filter to all admin tables (@rigelk)
- Fix
z-index
for tooltips, modals and their button to prevent overlaps (@rigelk) - And many others!
- 🎉 Improve video abuses admin table (@rigelk):
- Add in-text specific search filters
- Reports can be linked to directly
- Rich reporter field
- Add video thumbnail with abuse count for the video and position of the abuse in that list
- Expand row to see more information about the video, the reporter and the reportee
- Add many actions (on the video, on the reporter)
- Don't remove a report when a video is deleted
- Add information on a video abuse within its notification email (@rigelk)
- Add ability for video owners to delete comments
- Add filter inputs for blacklisted videos and muted accounts/servers (@rigelk)
- Video import improvements:
- Support WMA and WAV audio files upload
- Support drag and drop for video upload/torrent import (@rigelk)
- Add video file metadata to download modal (@rigelk)
- Add views stats for channels (@rigelk)
- Add more information about the user in the edit form (@rigelk)
- Server optimizations:
- Add cache for some immutable models
- Don't refresh videos when processing a view
- Optimize view endpoint
- Completely rewritten SQL query to list videos
- Optimize SQL request when broadcasting an activity
- Support infinite scrolling in the discover page
- Add ability for admins to create a user without a password. PeerTube will send a reset password link to the user (@JohnXLivingston)
- Improve embed title background opacity
- Add origin instance URL in watch page
- Clearer description of advanced search options
- Always copy full actor handle in video channels view (@rigelk)
- Add
sendmail
support (@immae) tosmtp
configuration - Support
rel="me"
links in markdown - Use
originallyPublishedAt
from body on import if it exists - Sort outbox by DESC createdAt order
- Increase video comment max length limit
Bug fixes
- Update default user theme to
instance-default
(Jorge Silva) - Fix user dropdown menu with long texts (@rigelk)
- Fix load more comments on infinite scroll (@ipbc-dev)
- Fix CSP issue on WebFinger service (@ZanyMonk)
- Fix federation with Pleroma
- Fix Safari and iOS video play
- Fix broken HLS player on old Edge
- Fix running HLS transcoding on existing HLS video
- Fix user role edition
- Fix video duration display
- Fix error when adding a video in a playlist that does not have a thumbnail
- Fix internal video display in playlists
- Fix add comment in threads with deleted comments
- Fix video codec in HLS playlist resulting in a broken video
- Fix torrent import on Windows
- Respect browser autoplay policy: don't autoplay videos in mute mode
- Fix playlist videos autoplay/next play (@rigelk)
- Fix admin table column invalid sort error
- Fix outbox crawling max page/timeout (when an admin follows an instance with many videos)
- Add CORS to ActivityPub routes
- Fix my video imports table display when a video gets deleted (@rigelk)
- Fix peertube/import scripts
comment-enabled
,wait-transcoding
anddownload-enabled
options - Don't leak unlisted videos in comments feed
- Do not display deleted comments or muted accounts/instances in RSS feed
- Fix HLS audio only transcoding
- Fix playlist creation/update with a long description
- Fix links of same instance in video description
- Fix REPL script