Skip to content

v2.2.0-rc.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@Chocobozzz Chocobozzz released this 18 May 07:13
· 8889 commits to develop since this release
v2.2.0-rc.1
d9cb522

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 run select "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
  • Changed auto_follow_index setting configuration: you now have to use the complete URL in index_url.
    If you used the default one, you now need to use https://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

Docker

Maintenance

Plugins/Themes/Embed API

  • Add embed API (https://docs.joinpeertube.org/#/api-embed-player):
    • playbackState can be ended
    • playbackStatusUpdate has a duration field
    • setCaption and getCaptions 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 queries
    • videos.removeVideo
    • config.getWebserverUrl
    • moderation.blockServer, moderation.unblockServer, moderation.blockAccount, moderation.unblockAccount, moderation.blacklistVideo, moderation.unblacklistVideo
  • Add client helpers:
    • notifier to notify users using the toast component (@kimsible)
    • showModal to show a modal (@kimsible)
    • markdownRenderer to render markdown (@kimsible)
  • 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 subtitles when importing a video (@kimsible)
    • Generate thumbnail/preview from URL and inject them in the video edit form (@kimsible)
    • Support licence and language fields
    • Support audio file imports
  • 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) to smtp 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 and download-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