Skip to content

Releases: Chocobozzz/PeerTube

v2.4.0

08 Sep 09:16
v2.4.0
b43d19c
Compare
Choose a tag to compare

Since v2.3.0

IMPORTANT NOTES

  • The minimum ffmpeg version required is now 4.1
  • Deprecate static routes that will be removed in 3.0 (you may not have to do anything if you used paths returned by the video REST API):
    • /static/avatars/: use /lazy-static/avatars/ instead
    • /static/previews/: use /lazy-static/previews/ instead
    • /static/video-captions/: use /lazy-static/video-captions/ instead
  • Use playlistPosition URL parameter for playlists instead of videoId to set the current playlist position

Maintenance

  • Better error message on PostgreSQL connection error
  • Add ssl option support for PostgreSQL connection

Official PeerTube plugins

Plugins/Themes/Embed API

Features

  • Moderation:
    • 🎉 Add ability to report comments and accounts
    • 🎉 Add messaging system between local reporter of an abuse and moderators so they can easily communicate
    • 🎉 Users can now see their abuse reports, and have notifications when an abuse state changed (accepted/rejected) or when moderators added a new message
    • Add embed to block list details @rigelk in #2926
  • Video playlists:
    • 🎉 Add ability to embed playlists
    • 🎉 Add ability to put a video multiple times in a playlist (with different startAt/stopAt parameters or not)
  • Video comments:
  • Accessibility/UI:
  • Add alert and hide upload view when no upload is possible @Kimsible in #2966
  • Allow sorting notifications by unread/newest @rigelk
  • Add open-graph and twitter-card metas for accounts, video-channels and playlists urls @Kimsible in #2996
  • Add channel name to create-user admin form @Kimsible in #2984
  • Support Kabile for video languages/captions
  • Translate page titles
  • Add .ac3, .aac, .qt, .mqv, .3gpp, .3gpp2, .m1v, .mpg, .mpe, .vob extensions support on upload if transcoding is enabled @rigelk
  • Performance:
    • Improved front-end performance by reducing localized bundle sizes (~ 2MB instead of 3MB for the homepage)
    • Optimize comments RSS feed SQL query
    • Optimize default sort SQL query when listing videos

Bug fixes

  • Handle webp images from youtube-dl
  • Fix embed p2p warning localization
  • iOS fixes:
    • Fix HLS only videos playback
    • Fix fullscreen
    • Fix iPad desktop mode playback
    • Try to fix autoplay with iOS/Safari
  • Fix anonymous user theme
  • Fix player hotkeys after mouse interaction
  • Fix resolution transcoding for portrait videos
  • Do not display videojs poster when video is starting to avoid blinking effect @Kimsible in #3056
  • Correctly scroll to anchors in my-settings @Kimsible in #3032
  • Forbid reset password links reuse
  • Fix low default resolution on webtorrent videos
  • Fix instance features table responsive in about page @test2a in #3090
  • Fix playlist element deletion/edition in my account
  • Fix video playlist playback resuming
  • Correctly display error message for Internet Explorer
  • Fix videos RSS feed when HLS only is enabled
  • Add site_name to opengraph tags

Since v2.4.0-rc.1

Bug fixes

  • Add site_name to opengraph tags
  • Fix privacy/channel select on upload

v2.4.0-rc.1

27 Aug 06:59
v2.4.0-rc.1
5520f66
Compare
Choose a tag to compare
v2.4.0-rc.1 Pre-release
Pre-release

IMPORTANT NOTES

  • The minimum ffmpeg version required is now 4.1
  • Deprecate static routes that will be removed in 3.0 (you may not have to do anything if you used paths returned by the video REST API):
    • /static/avatars/: use /lazy-static/avatars/ instead
    • /static/previews/: use /lazy-static/previews/ instead
    • /static/video-captions/: use /lazy-static/video-captions/ instead
  • Use playlistPosition URL parameter for playlists instead of videoId to set the current playlist position

Maintenance

  • Better error message on PostgreSQL connection error
  • Add ssl option support for PostgreSQL connection

Official PeerTube plugins

Plugins/Themes/Embed API

Features

  • Moderation:
    • 🎉 Add ability to report comments and accounts
    • 🎉 Add messaging system between local reporter of an abuse and moderators so they can easily communicate
    • 🎉 Users can now see their abuse reports, and have notifications when an abuse state changed (accepted/rejected) or when moderators added a new message
    • Add embed to block list details @rigelk in #2926
  • Video playlists:
    • 🎉 Add ability to embed playlists
    • 🎉 Add ability to put a video multiple times in a playlist (with different startAt/stopAt parameters or not)
  • Video comments:
  • Accessibility/UI:
  • Add alert and hide upload view when no upload is possible @Kimsible in #2966
  • Allow sorting notifications by unread/newest @rigelk
  • Add open-graph and twitter-card metas for accounts, video-channels and playlists urls @Kimsible in #2996
  • Add channel name to create-user admin form @Kimsible in #2984
  • Support Kabile for video languages/captions
  • Translate page titles
  • Add .ac3, .aac, .qt, .mqv, .3gpp, .3gpp2, .m1v, .mpg, .mpe, .vob extensions support on upload if transcoding is enabled @rigelk
  • Performance:
    • Improved front-end performance by reducing localized bundle sizes (~ 2MB instead of 3MB for the homepage)
    • Optimize comments RSS feed SQL query
    • Optimize default sort SQL query when listing videos

Bug fixes

  • Handle webp images from youtube-dl
  • Fix embed p2p warning localization
  • iOS fixes:
    • Fix HLS only videos playback
    • Fix fullscreen
    • Fix iPad desktop mode playback
    • Try to fix autoplay with iOS/Safari
  • Fix anonymous user theme
  • Fix player hotkeys after mouse interaction
  • Fix resolution transcoding for portrait videos
  • Do not display videojs poster when video is starting to avoid blinking effect @Kimsible in #3056
  • Correctly scroll to anchors in my-settings @Kimsible in #3032
  • Forbid reset password links reuse
  • Fix low default resolution on webtorrent videos
  • Fix instance features table responsive in about page @test2a in #3090
  • Fix playlist element deletion/edition in my account
  • Fix video playlist playback resuming
  • Correctly display error message for Internet Explorer
  • Fix videos RSS feed when HLS only is enabled

v2.3.0

21 Jul 09:15
v2.3.0
97aaead
Compare
Choose a tag to compare

Since v2.2.0

IMPORTANT NOTES

  • Add client_overrides directory in configuration file. You must configure it in your production.yaml
  • Deprecate /videos/abuse endpoint.
    A new endpoint to report videos will be created in PeerTube 2.4 and will also allow to report accounts and comments (/videos/abuse will be removed in 3.0)
  • Renamed videos blacklist feature to videos blocks/blocklist

Documentation

  • Add feeds routes to the openapi spec @rigelk
  • Add notifications routes to the openapi spec @rigelk
  • Add redundancy routes to the openapi spec @rigelk
  • Add plugins routes to the openapi spec @rigelk
  • Add examples, descriptions and missing filters for abuses routes in the openapi spec @rigelk
  • Update CentOS insutructions in dependencies.md @cgarwood82 in 2904

Maintenance

  • Switched image processing library from native dependency sharp to pure JS implementation jimp. Admins don't have to compile sharp anymore and jimp is lighter
  • Provide specific engine boundaries for NodeJS and Yarn @rigelk in 0c4bacb
  • Add ability to set database.name config option @gramakri in #2898

Docker

Official PeerTube plugins

Plugins/Themes/Embed API

  • Add ability to override client assets: logo - favicon - PWA icons - PWA manifest name and description @kimsible in #2897

Features

  • 🎉 Add global search support (has to be explicitely enabled by admins)
  • 🎉 Add ability for admins to display a banner on their instance
  • 🎉 Support Vietnamese and Kabyle languages. Also re-establish Occitan language locale despite lack of support in Angular
  • Federation:
    • Make federation of unlisted videos an instance-level server preference @Tak in #2802
    • Sort ActivityPub video object files by resolution in descending order (fix issue with Pleroma)
    • Send complete video description in ActivityPub video objects
  • Moderation:
    • Add ability to bulk delete comments of an account
    • Add ability to mute accounts from video miniature
    • Improve report modal: @rigelk in #2842
      • Add ability to provide predefined reasons
      • Embed of the video in the modal
      • Add ability to set a startAt parameter
  • Accessibility:
  • Replaced softies icons by feather icons @rigelk
  • Support player hotkeys when it is not focused
  • Improve video miniature grids to fill the space as much as possible @rigelk
  • Add video miniature dropdown in Discover page
  • Add channel information in My videos page
  • Add videos count per channel in My channels page
  • Improve channel deletion warning by explaining how many videos will be deleted
  • Simplify navigation within most admin menus @rigelk
  • Tracker:
  • Allow limiting video-comments rss feeds to an account or video channel @rigelk in 00494d6

Bug fixes

  • Fix default anonymous theme that should use instance default
  • Fix configuration form issue when auto follow index URL is empty
  • Fix URL import of some videos
  • Fix quota representation in profile settings @rigelk
  • Exclude 0p from auto webtorrent quality
  • Fix scroll on some pages with hash in URL
  • Fix search filter in video reports
  • Fix anonymous user nsfw policy
  • Don't cache embed HTML page resulting in broken embed after a PeerTube upgrade
  • Accessibility:
  • Fix iOS player with HLS-only videos
  • Fix action buttons selection mode styles @kimsible in #2983

Since v2.3.0-rc.1

Bug fixes

  • Fix broken locales
  • Fix embed URL in share modal
  • Handle webp images from youtube-dl
  • Fix iOS player with HLS-only videos
  • Fix popup issues on video miniature click when searching on the global index
  • Fix username in password-reset email @kimsible in #2960
  • Fix maximized icon padding in markdown textarea @kimsible in #2963
  • Fix action buttons selection mode styles @kimsible in #2983
  • Fix user creation in admin @kimsible in #2985
  • Fix accessibility action buttons and display on imports and followers list @kimsible in #2986

v2.3.0-rc.1

06 Jul 10:14
v2.3.0-rc.1
27647da
Compare
Choose a tag to compare
v2.3.0-rc.1 Pre-release
Pre-release

IMPORTANT NOTES

  • Deprecate /videos/abuse endpoint.
    A new endpoint to report videos will be created in PeerTube 2.4 and will also allow to report accounts and comments (/videos/abuse will be removed in 3.0)
  • Renamed videos blacklist feature to videos blocks/blocklist

Documentation

  • Add feeds routes to the openapi spec @rigelk
  • Add notifications routes to the openapi spec @rigelk
  • Add redundancy routes to the openapi spec @rigelk
  • Add plugins routes to the openapi spec @rigelk
  • Add examples, descriptions and missing filters for abuses routes in the openapi spec @rigelk
  • Update CentOS insutructions in dependencies.md @cgarwood82 in 2904

Maintenance

  • Switched image processing library from native dependency sharp to pure JS implementation jimp. Admins don't have to compile sharp anymore and jimp is lighter
  • Provide specific engine boundaries for NodeJS and Yarn @rigelk in 0c4bacb
  • Add ability to set database.name config option @gramakri in #2898

Docker

Official PeerTube plugins

Features

  • 🎉 Add global search support (has to be explicitely enabled by admins)
  • 🎉 Add ability for admins to display a banner on their instance
  • 🎉 Support Vietnamese and Kabyle languages. Also re-establish Occitan language locale despite lack of support in Angular
  • Federation:
    • Make federation of unlisted videos an instance-level server preference @Tak in #2802
    • Sort ActivityPub video object files by resolution in descending order (fix issue with Pleroma)
    • Send complete video description in ActivityPub video objects
  • Moderation:
    • Add ability to bulk delete comments of an account
    • Add ability to mute accounts from video miniature
    • Improve report modal: @rigelk in #2842
      • Add ability to provide predefined reasons
      • Embed of the video in the modal
      • Add ability to set a startAt parameter
  • Accessibility:
  • Replaced softies icons by feather icons @rigelk
  • Support player hotkeys when it is not focused
  • Improve video miniature grids to fill the space as much as possible @rigelk
  • Add video miniature dropdown in Discover page
  • Add channel information in My videos page
  • Add videos count per channel in My channels page
  • Improve channel deletion warning by explaining how many videos will be deleted
  • Simplify navigation within most admin menus @rigelk
  • Tracker:
  • Allow limiting video-comments rss feeds to an account or video channel @rigelk in 00494d6

Bug fixes

  • Fix default anonymous theme that should use instance default
  • Fix configuration form issue when auto follow index URL is empty
  • Fix URL import of some videos
  • Fix quota representation in profile settings @rigelk
  • Exclude 0p from auto webtorrent quality
  • Fix scroll on some pages with hash in URL
  • Fix search filter in video reports
  • Fix anonymous user nsfw policy
  • Don't cache embed HTML page resulting in broken embed after a PeerTube upgrade
  • Accessibility:

v2.2.0

02 Jun 09:13
v2.2.0
a55c980
Compare
Choose a tag to compare

Since v2.1.0

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 crawli...
Read more

v2.2.0-rc.1

18 May 07:13
v2.2.0-rc.1
d9cb522
Compare
Choose a tag to compare
v2.2.0-rc.1 Pre-release
Pre-release

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 ...
Read more

v2.1.1

27 Feb 08:09
v2.1.1
195ba6c
Compare
Choose a tag to compare

Bug fixes

  • Fix youtube-dl in docker image
  • Fix playlist creation/update
  • Fix fetch of instance config in client
  • Manual approves followers only for the instance (and not accounts/channels)
  • Fix avatar update
  • Fix CSP for embeds
  • Fix scroll of the menu on mobile
  • Fix CPU usage of PostgreSQL
  • Fix embed for iOS

v2.1.0

11 Feb 08:34
v2.1.0
6b7e246
Compare
Choose a tag to compare

Since v2.0.0

IMPORTANT NOTES

  • /!\ VERY IMPORTANT /!\ You need to execute manually a script (can be executed after your upgrade, while your PeerTube instance is running) to create HLS video torrents:
    • cd /var/www/peertube/peertube-latest && sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production node dist/scripts/migrations/peertube-2.1.js
  • /!\ VERY IMPORTANT /!\ In the next PeerTube release (v2.2.0), we'll add a unique index on actors usernames to fix some federation bugs.
    Please check now if you have conflicts using:
    • 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
  • We now use Buster for the docker image, so the image name changed:
    • production-stretch becomes production-buster
    • v2.x.x-stretch becomes v2.x.x-buster
  • Users cannot create more than 20 channels now to avoid UX and actor name squatting issues
  • We added a warning if the videos directory is the same than the redundancy one in your configuration file: it can create some bugs

Documentation

We added some sections in the documentation website:

Docker

  • Sticking to one env-var management system (@Leopere) (See #2247)
  • Simplify Dockerfile and slim Docker image (@Nutomic)
  • Add HLS support in Docker container by using the latest Debian stable (Buster) image

Plugins/Themes API

  • Add checkbox and textarea as possible input types for settings (@rigelk)
  • Add isLoggedIn helper to client plugins (@rigelk)
  • Add client plugin hooks:
    • action:video-watch.player.loaded with player instance
    • action:video-watch.video.loaded with a videojs instance
    • action:signup.register.init (@rigelk)
    • filter:api.signup.registration.create.params (@rigelk)
    • filter:internal.video-watch.player.build-options.params
    • filter:internal.video-watch.player.build-options.result
    • filter:internal.common.svg-icons.get-content.params
    • filter:internal.common.svg-icons.get-content.result
  • Add server plugins hooks:
    • action:api.user.blocked
    • action:api.user.unblocked
    • action:api.user.registered
    • action:api.user.created
    • action:api.user.deleted
    • action:api.user.updated
    • action:api.user.oauth2-got-token
  • Accept . _ and 0-9 characters in plugin names

Maintenance

Features

  • 🎉 Add internal video privacy mode. Internal videos are only available to other logged in users of your instance, and are not federated
  • 🎉 Add hyperlink video timestamps in comments & video descriptions (@Lesterpig & @rigelk)
  • 🎉 Comments improvements:
    • Support basic markdown
    • Soft delete video comments instead of destroying them (@alcalyn)
    • Add commentator name alongside fid for video comments (@rigelk)
    • Add a cancel button in comment form (@rigelk)
    • Show number of comments under a video in watch page (@rigelk)
    • Add user moderation dropdown (@rigelk)
    • Add ability to sort comments by total replies or created date (@rigelk)
    • Add total replies from video author indicator (@rigelk)
    • Comment name emphasis for video author (@rigelk)
  • Add "Watch later" button in video miniature overlay (@rigelk)
  • Add ability to transcode videos in an audio only video container (@Yetangitu)
  • Add playlist search input in add to playlist dropdown (@rigelk)
  • Add search bars for a user's videos and playlists (@rigelk)
  • Support playlists in share modal
  • Better UI for a better world:
    • Add play/pause bezels to the video player (@rigelk)
    • Use icons instead of buttons in watch page (like/dislike, support...) (@rigelk)
    • Improve PeerTube section in About page and add links to the documentation
    • Improve comment tree in Watch page
    • Improve dropdown box shadow (@rigelk)
    • Add channel avatar to watch view (@rigelk)
    • Improve likes-dislikes bar usability
    • Alter titles section header style (@rigelk)
    • Enhance jobs list display on smaller screens (@alcalyn)
    • Add a button in the videos from subscriptions page to manage subscriptions (@rigelk)
    • Add duration to video attributes in watch view (@rigelk)
    • Add a message in the login form when signup is disabled for people that are looking for an account (@rigelk)
    • Add "Manage" button in owned account and channels pages (@rigelk)
    • Improve password input accessibility (@rigelk)
    • Add descriptions in moderation dropdown (@rigelk)
  • Performances improvements:
    • Lazy load categories, licences, languages and video/playlist privacies in the client
    • Only update remote actor avatar if the filename changed
    • Optimize transcoding by using the lowest resolution as input file
    • Speedup embed first paint
    • Optimize videos list SQL query
    • Optimize local videos list SQL query
    • Cache peertube instance actor SQL result
    • Cache HLS/WebTorrent InfoHash SQL result
    • Optimize notification endpoint on specific cases
    • Optimize "list my playlists" SQL query
  • Improve search filters: (@rigelk)
    • Add ability to sort results
    • Improve tags filter inputs
    • Add a button to reset filters
  • Improve autoplay: (@rigelk)
    • Autoplay next video switch for both user and visitors
    • Add up next screen on autoplay
    • Autoplay next video support for playlists
    • Add next video button to the player
    • Add loop setting when watching a playlist
  • Add option to download subtitles in download modal (@rigelk)
  • Add a button in account page to follow all account channels (@rigelk)
  • Add ability to search a video directly by its UUID
  • Case insensitive tags search
  • Add ability to disable WebTorrent (and only enable HLS) (experimental and breaks federation with PeerTube instances < 2.1)
  • Don't seed if the client is on a cellular network in the HLS player
  • Load HLS player in embed by default if enabled
  • Admin panels:
    • Add ability to sort by state, score and redundancy allowed columns in following/followers admin table
    • Add ability to filter per job type in admin
    • Add Audit logs section in admin Logs panel
  • Improve Media-RSS support (@rigelk)
  • Explicit the tag limit in video form (@bikepunk)
  • Add a warning when uploading videos using root
  • Clearer video quota label in user settings
  • Pause the video when the user opens a modal
  • Handle basic HTML in account descriptions
  • Support m4v videos
  • Improve 4k resolution bitrate
  • Add missing hotkeys documentation in the watch page
  • Add a button to copy the channel handle (@rigelk)
  • Add server config to the nodeinfo metadata (@rigelk)
  • Improve notification popup interactivity (@rigelk)

Bug fixes

  • Don't notify if the account in on a muted instance
  • Don't leak other notified addresses in notification emails
  • Allow...
Read more

v2.1.0-rc.1

27 Jan 08:54
v2.1.0-rc.1
5aafc6f
Compare
Choose a tag to compare
v2.1.0-rc.1 Pre-release
Pre-release

IMPORTANT NOTES

  • /!\ VERY IMPORTANT /!\ You need to execute manually a script (must be executed after the upgrade and a PeerTube restart, while your instance is running) to create HLS video torrents:
    • cd /var/www/peertube/peertube-latest && sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production node dist/scripts/migrations/peertube-2.1.js
  • /!\ VERY IMPORTANT /!\ In the next PeerTube release (v2.2.0), we'll add a unique index on actors usernames to fix some federation bugs.
    Please check now if you have conflicts using:
    • 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
  • We now use Buster for the docker image, so the image name changed:
    • production-stretch becomes production-buster
    • v2.x.x-stretch becomes v2.x.x-buster
  • Users cannot create more than 20 channels now to avoid UX and actor name squatting issues
  • We added a warning if the videos directory is the same than the redundancy one in your configuration file: it can create some bugs

Documentation

We added some sections in the documentation website:

Docker

  • Sticking to one env-var management system (@Leopere) (See #2247)
  • Simplify Dockerfile and slim Docker image (@Nutomic)
  • Add HLS support in Docker container by using the latest Debian stable (Buster) image

Plugins/Themes API

  • Add checkbox and textarea as possible input types for settings (@rigelk)
  • Add isLoggedIn helper to client plugins (@rigelk)
  • Add client plugin hooks:
    • action:video-watch.player.loaded with player instance
    • action:video-watch.video.loaded with a videojs instance
    • action:signup.register.init (@rigelk)
    • filter:api.signup.registration.create.params (@rigelk)
    • filter:internal.video-watch.player.build-options.params
    • filter:internal.video-watch.player.build-options.result
    • filter:internal.common.svg-icons.get-content.params
    • filter:internal.common.svg-icons.get-content.result
  • Add server plugins hooks:
    • action:api.user.blocked
    • action:api.user.unblocked
    • action:api.user.registered
    • action:api.user.created
    • action:api.user.deleted
    • action:api.user.updated
    • action:api.user.oauth2-got-token
  • Accept . _ and 0-9 characters in plugin names

Maintenance

Features

  • 🎉 Add internal video privacy mode. Internal videos are only available to other logged in users of your instance, and are not federated
  • 🎉 Add hyperlink video timestamps in comments & video descriptions (@Lesterpig & @rigelk)
  • 🎉 Comments improvements:
    • Support basic markdown
    • Soft delete video comments instead of destroying them (@alcalyn)
    • Add commentator name alongside fid for video comments (@rigelk)
    • Add a cancel button in comment form (@rigelk)
    • Show number of comments under a video in watch page (@rigelk)
    • Add user moderation dropdown (@rigelk)
    • Add ability to sort comments by total replies or created date (@rigelk)
    • Add total replies from video author indicator (@rigelk)
    • Comment name emphasis for video author (@rigelk)
  • Add "Watch later" button in video miniature overlay (@rigelk)
  • Add ability to transcode videos in an audio only video container (@Yetangitu)
  • Add playlist search input in add to playlist dropdown (@rigelk)
  • Add search bars for a user's videos and playlists (@rigelk)
  • Support playlists in share modal
  • Better UI for a better world:
    • Add play/pause bezels to the video player (@rigelk)
    • Use icons instead of buttons in watch page (like/dislike, support...) (@rigelk)
    • Improve PeerTube section in About page and add links to the documentation
    • Improve comment tree in Watch page
    • Improve dropdown box shadow (@rigelk)
    • Add channel avatar to watch view (@rigelk)
    • Improve likes-dislikes bar usability
    • Alter titles section header style (@rigelk)
    • Enhance jobs list display on smaller screens (@alcalyn)
    • Add a button in the videos from subscriptions page to manage subscriptions (@rigelk)
    • Add duration to video attributes in watch view (@rigelk)
    • Add a message in the login form when signup is disabled for people that are looking for an account (@rigelk)
    • Add "Manage" button in owned account and channels pages (@rigelk)
    • Improve password input accessibility (@rigelk)
    • Add descriptions in moderation dropdown (@rigelk)
  • Performances improvements:
    • Lazy load categories, licences, languages and video/playlist privacies in the client
    • Only update remote actor avatar if the filename changed
    • Optimize transcoding by using the lowest resolution as input file
    • Speedup embed first paint
    • Optimize videos list SQL query
    • Optimize local videos list SQL query
    • Cache peertube instance actor SQL result
    • Cache HLS/WebTorrent InfoHash SQL result
    • Optimize notification endpoint on specific cases
    • Optimize "list my playlists" SQL query
  • Improve search filters: (@rigelk)
    • Add ability to sort results
    • Improve tags filter inputs
    • Add a button to reset filters
  • Improve autoplay: (@rigelk)
    • Autoplay next video switch for both user and visitors
    • Add up next screen on autoplay
    • Autoplay next video support for playlists
    • Add next video button to the player
    • Add loop setting when watching a playlist
  • Add option to download subtitles in download modal (@rigelk)
  • Add a button in account page to follow all account channels (@rigelk)
  • Add ability to search a video directly by its UUID
  • Case insensitive tags search
  • Add ability to disable WebTorrent (and only enable HLS) (experimental and breaks federation with PeerTube instances < 2.1)
  • Don't seed if the client is on a cellular network in the HLS player
  • Load HLS player in embed by default if enabled
  • Admin panels:
    • Add ability to sort by state, score and redundancy allowed columns in following/followers admin table
    • Add ability to filter per job type in admin
    • Add Audit logs section in admin Logs panel
  • Improve Media-RSS support (@rigelk)
  • Explicit the tag limit in video form (@bikepunk)
  • Add a warning when uploading videos using root
  • Clearer video quota label in user settings
  • Pause the video when the user opens a modal
  • Handle basic HTML in account descriptions
  • Support m4v videos
  • Improve 4k resolution bitrate
  • Add missing hotkeys documentation in the watch page
  • Add a button to copy the channel handle (@rigelk)
  • Add server config to the nodeinfo metadata (@rigelk)
  • Improve notification popup interactivity (@rigelk)

Bug fixes

  • Don't notify if the account in on a muted instance
  • Don't leak other notified addresses in notification emails
  • Allow the embed ifram...
Read more

v2.0.0

12 Nov 08:04
v2.0.0
e8e09e2
Compare
Choose a tag to compare

Since v1.4.1

IMPORTANT NOTES

  • Removed old JSON LD signature implementation. There will be some federation incompatibilities with forwarded activities sent by PeerTube instances < v2.0.0
  • Replaced configuration key email.object with email.subject: 916937d

Plugins/Themes API

  • Add plugin hook on registration filter:api.user.signup.allowed.result

Docker

  • Fix traefik version docker compose (you need to update your docker-compose.yml file: f1b3888)

Maintenance

  • Add --tmpdir, --first, --last and --verbose [level] parameters to peertube-import-videos script (Yetangitu)
  • Improve REST API documentation (@frankstrater)
  • Improve plugin management documentation

Features

  • Better instance admin responsibility:
    • Add ability to set more information about your instance. This will be used in the future on https://joinpeertube.org to help people find
      the appropriate PeerTube instance on which they can register:
      • Main Categories
      • Languages you/your moderators speak
      • Code of Conduct
      • Moderation information (who moderates your instance, NSFW policy etc)
      • Who is behind the instance (a single person? non-profit?)
      • Why did the admin create this instance
      • How long the admin plan to maintain the instance
      • How the administrator will finance the PeerTube server
      • Hardware information
    • Add these information in the about page and in the signup page
    • Add a welcome modal at first admin login with some explanations of PeerTube and some useful links
    • Add warning modal when administrators enable or enabled signup but did not fill some important instance information
      (for now the instance name, terms, administrator and maintenance lifetime information)
  • Add ability to automatically follow back other instances
  • Add ability to automatically follow the public registry instances
  • Add Most liked videos page (@alcalyn)
  • Add a drag&drop delay on playlist videos to allow user scroll on small screens (@alcalyn)
  • Allow to toggle video publication date to display absolute date (@alcalyn)
  • Add statistics in about page (@alcalyn)
  • Improve the feature table in about page
  • Add contributors in about page
  • Clearer warning of IP address leaking on embedded videos (@robinkooli)
  • Case insensitive search on video tags
  • Add video name in "video publish notification"
  • Add ability to autoplay next recommended video (opt in) (@LoveIsGrief)
  • Add link behind the subscribe via RSS button (@frankstrater)
  • Support text/plain caption files
  • Speedup theme injection
  • Add ability to enable HLS in the admin panel

Bug fixes

  • Fix audio upload
  • Handle video reports from mastodon
  • Fix videos redundancy exceeding the limit
  • Fix search when user defined video languages in their preferences
  • Don't quick transcode with the wrong pixel format
  • Hide videos abuses of muted accounts
  • Fix account avatar widths
  • Fix default commentsEnabled and downloadEnabled values on video upload/import (@frankstrater)
  • Disable auto complete of email field when editing another user information in admin panel (@Knackie)
  • Fix federation issues with some actors (that have long descriptions, or missing optional AP fields)
  • Remove down redundancy endpoints in HLS player
  • Fix user notifications with multiple opened tabs
  • Replace "overview" by "discover" in webpage titles
  • Clearer IP debug message in admin panel
  • Fix checkbox styles when using a theme
  • Don't redirect on verify account page after login
  • Fix player captions menu after choosing a subtitle
  • Fix CLI scripts with URLs ending with a /
  • Fix --since and --until timezone in peertube-import-videos script
  • Avoid circular error in logger
  • Fix start/stop of first element when loading a playlist

Since v2.0.0-rc.1

Features

  • Improve welcome/warning modals
  • Add ability to enable HLS in the admin panel

Bug fixes

  • Fix auto index follow
  • Fix CLI scripts with URLs ending with a /
  • Fix --since and --until timezone in peertube-import-videos script (@fflorent)
  • Avoid circular error in logger
  • Fix start/stop of first element when loading a playlist