Skip to content

Releases: Chocobozzz/PeerTube

v3.4.0

09 Sep 08:59
v3.4.0
c6fb386
Compare
Choose a tag to compare

IMPORTANT NOTES

  • Important: Due to a bug in ffmpeg, PeerTube is not compatible with ffmpeg 4.4. See #3990
  • Debian Bullseye admins: Debian Bullseye removed python binary/link in favour of explicit python2/python3 binaries. But youtube-dl used by PeerTube needs it so you'll have to install python-is-python2 or python-is-python3 before upgrading PeerTube
  • PeerTube now supports NodeJS 16

Plugins/Themes/Embed API

Documentation: https://docs.joinpeertube.org/api-plugins

  • Server helpers
    • Deprecate videoLanguageManager.addLanguage and videoLanguageManager.deleteLanguage: use videoLanguageManager.addConstant and videoLanguageManager.deleteConstant instead
    • Deprecate videoCategoryManager.addCategory and videoCategoryManager.deleteCategory: use videoCategoryManager.addConstant and videoCategoryManager.deleteConstant instead
    • Deprecate videoLicenceManager.addLicence and videoLicenceManager.deleteLicence: use videoLicenceManager.addConstant and videoLicenceManager.deleteConstant instead
    • Deprecate videoPrivacyManager.deletePrivacy: videoPrivacyManager.deleteConstant instead
    • Deprecate playlistPrivacyManager.deletePlaylistPrivacy: playlistPrivacyManager.deleteConstant instead
    • Introduce .getConstantValue(), .getConstants() and .resetConstants() for videoLanguageManager, videoCategoryManager, videoLicenceManager, videoPrivacyManager and playlistPrivacyManager
  • Add server plugin hooks:
    • filter:api.overviews.videos.list.params and filter:api.overviews.videos.list.result

Custom markup API

Documentation: https://docs.joinpeertube.org/api-custom-client-markup

  • Add ability to only display VOD or live videos in <peertube-videos-list> element
  • <peertube-container> fills all available width. Can be changed using data-justify-content attribute

Maintenance

  • Remove StandardOutput and StandardError settings from systemd service template #4300
  • Use random UUIDs for video, torrent and streaming playlist files
    • Filename is regenerated when the file content changes: allows admins to use aggressive caching

CLI tools

  • Remove unmaintened optimize-old-videos.js script
  • Add short UUID support in video scripts

Features

  • 🎉 Add video filters to common video pages (account videos, channel videos, recently added/local/trending videos...)
    • Change video sort (recently added, hot, views...)
    • Only display live/VOD videos
    • Filter by languages/categories
    • Hide or display sensitive content
    • Choose to display all videos or only local videos
  • 🎉 Beta: Add support for saving video files in object storage #4290
  • 🎉 Add ability for instances to follow any actor (so specific accounts and channels)
  • Updated HLS.js (library to play HLS playlists in PeerTube player) to V1:
    • Remember last bandwidth to prevent resolution change at the beginning of the video
    • Automatically downgrade resolution if bandwidth is too low
    • Add latency metric for live videos in stats for nerd card
    • Immediate quality change when the user clicks on a specific resolution
  • Add ability to search by PeerTube host in search filters
  • Disallow search engine indexation of remote channels/accounts
  • Transcoding:
    • Improve bitrate calculation using "bit per pixel" method
    • Limit live bitrate to input bitrate
  • Accessibility/UI:
    • Alert user for low quota and video auto-block on upload page #4336
    • Display a modal when logged in to explain why and where set up the account profile #4352
    • Display messages to inform why and where set up channels in My library pages #4352
    • Display a warning when using capitalized letter for the email/username in the login form
    • Display a message in embed on unsupported web browser
  • Support out proxy using env variables (HTTP_PROXY and HTTPS_PROXY) #4346
  • Support Latin language for videos

Bug fixes

  • Fix PeerTube button link in embed
  • Don't remove existing redundancies on host redundancy update
  • Remove thumbnail flash when autoplay is enabled in embed
  • Fetch data in bulk for the homepage, fixing API rate limit errors
  • Fix channel name validator consistency between client and server
  • Fix resumable upload without preview file in the body
  • Fix redundancy of big HLS files
  • Fix stats for nerd card label width
  • Fix stats for nerd card resolution
  • Fix uploading videos with empty tags in CLI tools
  • Fix HLS player on non HTTPS instances
  • Hide schedule privacy if private was removed by a plugin
  • Fix moderation embeds
  • Fix description timestamp click
  • Fix privacy descriptions
  • Safer avatar, banner and video preview
  • Fix broken delete buttons of admin federation lists #4378
  • More robust webtorrent redundancy download
  • Fix hls redundancy in pruning script
  • Fix compat' with old web browsers (Pale Moon, Safari 11, iOS 11, old webkit...))
  • Fix silent 500 after resumable upload
  • Fix HTML config injection with custom HTML/CSS
  • Fix video upload on iOS

v3.4.0-rc.1

31 Aug 06:47
v3.4.0-rc.1
92cb986
Compare
Choose a tag to compare
v3.4.0-rc.1 Pre-release
Pre-release

IMPORTANT NOTES

  • Important: Due to a bug in ffmpeg, PeerTube is not compatible with ffmpeg 4.4. See #3990
  • Debian Bullseye admins: Debian Bullseye removed python binary/link in favour of explicit python2/python3 binaries. But youtube-dl used by PeerTube needs it so you'll have to install python-is-python2 or python-is-python3 before upgrading PeerTube
  • PeerTube now supports NodeJS 16

Plugins/Themes/Embed API

Documentation: https://docs.joinpeertube.org/api-plugins

  • Server helpers
    • Deprecate videoLanguageManager.addLanguage and videoLanguageManager.deleteLanguage: use videoLanguageManager.addConstant and videoLanguageManager.deleteConstant instead
    • Deprecate videoCategoryManager.addCategory and videoCategoryManager.deleteCategory: use videoCategoryManager.addConstant and videoCategoryManager.deleteConstant instead
    • Deprecate videoLicenceManager.addLicence and videoLicenceManager.deleteLicence: use videoLicenceManager.addConstant and videoLicenceManager.deleteConstant instead
    • Deprecate videoPrivacyManager.deletePrivacy: videoPrivacyManager.deleteConstant instead
    • Deprecate playlistPrivacyManager.deletePlaylistPrivacy: playlistPrivacyManager.deleteConstant instead
    • Introduce .getConstantValue(), .getConstants() and .resetConstants() for videoLanguageManager, videoCategoryManager, videoLicenceManager, videoPrivacyManager and playlistPrivacyManager
  • Add server plugin hooks:
    • filter:api.overviews.videos.list.params and filter:api.overviews.videos.list.result

Custom markup API

Documentation: https://docs.joinpeertube.org/api-custom-client-markup

  • Add ability to only display VOD or live videos in <peertube-videos-list> element
  • <peertube-container> fills all available width. Can be changed using data-justify-content attribute

Maintenance

  • Remove StandardOutput and StandardError settings from systemd service template #4300
  • Use random UUIDs for video, torrent and streaming playlist files
    • Filename is regenerated when the file content changes: allows admins to use aggressive caching

CLI tools

  • Remove unmaintened optimize-old-videos.js script
  • Add short UUID support in video scripts

Features

  • 🎉 Add video filters to common video pages (account videos, channel videos, recently added/local/trending videos...)
    • Change video sort (recently added, hot, views...)
    • Only display live/VOD videos
    • Filter by languages/categories
    • Hide or display sensitive content
    • Choose to display all videos or only local videos
  • 🎉 Beta: Add support for saving video files in object storage #4290
  • 🎉 Add ability for instances to follow any actor (so specific accounts and channels)
  • Updated HLS.js (library to play HLS playlists in PeerTube player) to V1:
    • Remember last bandwidth to prevent resolution change at the beginning of the video
    • Automatically downgrade resolution if bandwidth is too low
    • Add latency metric for live videos in stats for nerd card
    • Immediate quality change when the user clicks on a specific resolution
  • Add ability to search by PeerTube host in search filters
  • Disallow search engine indexation of remote channels/accounts
  • Transcoding:
    • Improve bitrate calculation using "bit per pixel" method
    • Limit live bitrate to input bitrate
  • Accessibility/UI:
    • Alert user for low quota and video auto-block on upload page #4336
    • Display a modal when logged in to explain why and where set up the account profile #4352
    • Display messages to inform why and where set up channels in My library pages #4352
    • Display a warning when using capitalized letter for the email/username in the login form
  • Support out proxy using env variables (HTTP_PROXY and HTTPS_PROXY) #4346

Bug fixes

  • Fix PeerTube button link in embed
  • Don't remove existing redundancies on host redundancy update
  • Remove thumbnail flash when autoplay is enabled in embed
  • Fetch data in bulk for the homepage, fixing API rate limit errors
  • Fix channel name validator consistency between client and server
  • Fix resumable upload without preview file in the body
  • Fix redundancy of big HLS files
  • Fix stats for nerd card label width
  • Fix stats for nerd card resolution
  • Fix uploading videos with empty tags in CLI tools
  • Fix HLS player on non HTTPS instances
  • Hide schedule privacy if private was removed by a plugin
  • Fix moderation embeds
  • Fix description timestamp click
  • Fix privacy descriptions

v3.3.0

20 Jul 13:13
v3.3.0
f49ff55
Compare
Choose a tag to compare

IMPORTANT NOTES

  • Important: v3.2.0 introduced a pg_dump export bug in the auto upgrade script. v3.2.1 fixed this bug. To upgrade from v3.2.0:
  • Important: Due to a bug in ffmpeg, PeerTube is not compatible with ffmpeg 4.4. See #3990

Maintenance

  • Increase max image/caption/torrent upload size to 4MB. You need to update your nginx configuration to handle this change
  • Increase fetcher job concurrency to 3

Docker

  • Support log level env parameter PEERTUBE_LOG_LEVEL #4149

Plugins/Themes/Embed API

Features

  • 🎉 Add ability to create a custom homepage using HTML, markdown and custom HTML tags #4007
  • 🎉 Add ability to search playlists in PeerTube instance and SepiaSearch
  • 🎉 Shorter public URLs (old URLs are still supported):
    • Handle short UUID (8r4jooaQpHp8tw1E1qpSeYq instead of 3caf7bea-5ceb-4959-81a0-b44d184e897c) for playlists and videos
    • Use /w/:id instead of /videos/watch/:id and /w/p/:id instead of /videos/watch/playlist/:id
    • Use /a/:accountName instead of /accounts/:accountName and /c/:channelName instead of /video-channels/:channelName #4009
    • Provide /@:username page that automatically redirect to the account or channel page #4009
  • 🎉 Add RTL layout support
  • Add ability to use HTML, markdown and custom HTML tags in instance description
  • Default to dark theme (if available) if requested by the web browser
  • Add ability for admins to configure minimum age required in signup page #4010
  • Use a dedicated URL for each tab in publish page
  • Add ability to prefill contact form using query parameters in URL #4161
  • Accessibility/UI:
    • Show logo in mobile view #4141
    • Improve download modal to download video subtitles
    • Better error message when trying to import a torrent containing multiple files
  • REST API errors:
    • Use RFC 7807 format to display errors #4143
    • Improve date format error messages
    • Improve video name and tag error messages
  • Performance:
    • Use raw SQL to fetch a video from database (~ latency / 2)
    • Inject server config in HTML
    • Speed up client plugin loading
    • Cache refresh actor promises
    • Optimize activity pub video update
    • Relax some database transactions
    • Use an internal cache for DNS resolution.
      This should speed up federation and fix weird acquire timeouts in sequelize pool (causing slowness in the client interface)

Bug fixes

  • Fix video upload with a capitalized extension
  • Fix "height not divisible by 2" ffmpeg error
  • Don't count deleted comment for replies
  • Fix UI bug when a plugin deleted the public privacy setting #4163
  • Fix player.getResolutions() embed API when the video is has not been played yet
  • Fix live placeholder image aspect ratio in theatre mode
  • Fix plugin modal/notifier
  • Fix some 404 errors for remote avatar
  • Fix daily quota display
  • Fix ownership change with a live video
  • Correctly handle broken plugin install
  • Fix channel deletion when it has videos
  • Force TLS for webfinger in production
  • Correctly support wav mimetype
  • Fix default video privacy when plugins deleted private video privacy
  • Fix subscribe hotkey
  • Fix HTTP fallback with a video that does not have webtorrent files
  • Fill video information when importing a peertube video

v3.3.0-rc.1

05 Jul 13:24
v3.3.0-rc.1
deecf33
Compare
Choose a tag to compare
v3.3.0-rc.1 Pre-release
Pre-release

IMPORTANT NOTES

  • Important: v3.2.0 introduced a pg_dump export bug in the auto upgrade script. v3.2.1 fixed this bug. To upgrade from v3.2.0:
  • Important: Due to a bug in ffmpeg, PeerTube is not compatible with ffmpeg 4.4. See #3990

Maintenance

  • Increase max image/caption/torrent upload size to 4MB. You need to update your nginx configuration to handle this change
  • Increase fetcher job concurrency to 3

Docker

  • Support log level env parameter PEERTUBE_LOG_LEVEL #4149

Plugins/Themes/Embed API

Features

  • 🎉 Add ability to create a custom homepage using HTML, markdown and custom HTML tags #4007
  • 🎉 Add ability to search playlists in PeerTube instance and SepiaSearch
  • 🎉 Shorter public URLs (old URLs are still supported):
    • Handle short UUID (8r4jooaQpHp8tw1E1qpSeYq instead of 3caf7bea-5ceb-4959-81a0-b44d184e897c) for playlists and videos
    • Use /w/:id instead of /videos/watch/:id and /w/p/:id instead of /videos/watch/playlist/:id
    • Use /a/:accountName instead of /accounts/:accountName and /c/:channelName instead of /video-channels/:channelName #4009
    • Provide /@:username page that automatically redirect to the account or channel page #4009
  • 🎉 Add RTL layout support
  • Add ability to use HTML, markdown and custom HTML tags in instance description
  • Default to dark theme (if available) if requested by the web browser
  • Add ability for admins to configure minimum age required in signup page #4010
  • Use a dedicated URL for each tab in publish page
  • Add ability to prefill contact form using query parameters in URL #4161
  • Accessibility/UI:
    • Show logo in mobile view #4141
    • Improve download modal to download video subtitles
    • Better error message when trying to import a torrent containing multiple files
  • REST API errors:
    • Use RFC 7807 format to display errors #4143
    • Improve date format error messages
    • Improve video name and tag error messages
  • Performance:
    • Use raw SQL to fetch a video from database (~ latency / 2)
    • Inject server config in HTML
    • Speed up client plugin loading
    • Cache refresh actor promises
    • Optimize activity pub video update
    • Relax some database transactions
    • Use an internal cache for DNS resolution.
      This should speed up federation and fix weird acquire timeouts in sequelize pool (causing slowness in the client interface)

Bug fixes

  • Fix video upload with a capitalized extension
  • Fix "height not divisible by 2" ffmpeg error
  • Don't count deleted comment for replies
  • Fix UI bug when a plugin deleted the public privacy setting #4163
  • Fix player.getResolutions() embed API when the video is has not been played yet
  • Fix live placeholder image aspect ratio in theatre mode
  • Fix plugin modal/notifier
  • Fix some 404 errors for remote avatar
  • Fix daily quota display
  • Fix ownership change with a live video
  • Correctly handle broken plugin install
  • Fix channel deletion when it has videos
  • Force TLS for webfinger in production

v3.2.1

01 Jun 09:19
v3.2.1
d55c466
Compare
Choose a tag to compare

IMPORTANT NOTES

Bug fixes

  • Fix create account button style
  • Fix auto upgrade script
  • Fix live image aspect ratio in theatre mode

v3.2.0

27 May 12:03
v3.2.0
4e67a45
Compare
Choose a tag to compare

IMPORTANT NOTES

Docker

  • Support SSL database env parameter #4114

Maintenance

CLI tools

  • Add regenerate-thumbnails script to regenerate thumbnails of local videos

Plugins/Themes/Embed API

  • Theme:
    • --submenuColor becomes --submenuBackgroundColor
  • Support HTML placeholders for plugins. See the documentation for more information
    • player-next next to the PeerTube player
  • Support storing files for plugins in a dedicated directory. See the documentation for more information
  • Transcoding:
    • Add inputOptions option support for transcoding profile #3917
    • Add scaleFilter.name option support for transcoding profile #3917
  • Plugin settings:
    • Add ability to register html and select setting
    • Add ability to hide a plugin setting depending on the form state
  • Plugin form fields (to add inputs to video form...):
    • Add ability to hide a plugin field depending on the form state using .hidden property
  • Add client helpers:
    • getServerConfig()
    • getAuthHeader()
  • Add server helpers:
    • config.getServerConfig()
    • plugin.getBaseStaticRoute()
    • plugin.getBaseRouterRoute()
    • plugin.getDataDirectoryPath()
    • user.getAuthUser()
  • Add client plugin hooks (https://docs.joinpeertube.org/api-plugins):
    • action:modal.video-download.shown
    • action:video-upload.init
    • action:video-url-import.init
    • action:video-torrent-import.init
    • action:go-live.init
    • action:auth-user.logged-in & action:auth-user.logged-out
    • action:auth-user.information-loaded
    • action:admin-plugin-settings.init
  • Add server plugin hooks (https://docs.joinpeertube.org/api-plugins):
    • filter:api.download.video.allowed.result & filter:api.download.torrent.allowed.result to forbid download
    • filter:html.embed.video-playlist.allowed.result & filter:html.embed.video.allowed.result to forbid embed
    • filter:api.search.videos.local.list.params & filter:api.search.videos.local.list.result
    • filter:api.search.videos.index.list.params & filter:api.search.videos.index.list.result
    • filter:api.search.video-channels.local.list.params & filter:api.search.video-channels.local.list.result
    • filter:api.search.video-channels.index.list.params & filter:api.search.video-channels.index.list.result

Features

  • 🎉 Most robust uploads using a resumable upload endpoint #3933
  • Accessibility/UI:
    • 🎉 Redesign channel and account page
    • 🎉 Increase video miniature size
    • 🎉 Add channel banner support
    • Use a square avatar for channels and a round avatar for accounts
    • Use account initial as default account avatar #4002
    • Prefer channel display in video miniature
    • Add support button in channel page
    • Set direct download as default in video download modal #3880
    • Show less information in video download modal by default #3890
    • Autofocus admin plugin search input
    • Add 1.75 playback rate to player #3888
    • Add title attribute to embed code #3901
    • Don't pause player when opening a modal #3909
    • Add link below the player to open the video on origin instance #3624
  • Notify admins on new available PeerTube version
  • Notify admins on new available plugin version
  • Sort channels by last uploaded videos
  • Video player:
    • Add loop toggle to context menu #3949
    • Add icons to context menu #3955
    • Add a Previous button in playlist watch page #3485
    • Automatically close the settings menu when clicking outside the player
    • Add "stats for nerds" panel in context menu #3958
  • Add channel and playlist stats to stats endpoint #3747
  • Support playlistPosition=last and negative index (playlistPosition=-2) URL query parameters for playlists #3974
  • My videos:
    • Add ability to sort videos (publication date, most viewed...)
    • Add ability to only display live videos
  • Automatically resume videos for non logged-in users #3885
  • Admin plugins:
    • Show a modal when upgrading a plugin to a major version
    • Display a setting button after plugin installation
  • Add ability to search live videos
  • Use bigger thumbnails for feeds
  • Parse video description markdown for Opengraph/Twitter/HTML elements
  • Open the remote interaction modal when replying to a comment if we are logged-out
  • Handle .srt captions with broken durations
  • Performance:
    • Player now lazy loads video captions
    • Faster admin table filters
    • Optimize feed endpoint

Bug fixes

  • More robust comments fetcher of remote video
  • Fix database ssl connection
  • Remove unnecessary black border above and below video in player #3920
  • Reduce tag input excessive padding #3927
  • Fix disappearing hamburger menu for narrow screens #3929
  • Fix Youtube subtitle import with some languages
  • Fix transcoding profile update in admin config
  • Fix outbox fetch with subtitled videos
  • Correctly unload a plugin on update/uninstall #3940
  • Ensure to install plugins that are supported by PeerTube
  • Fix welcome/warning modal displaying twice
  • Fix h265 video import using CLI
  • Fix context menu when watching a playlist
  • Fix transcoding job priority preventing video publication when there are many videos to transcode
  • Fix remote account/channel "joined at"
  • Fix CLI plugins list command options #4055
  • Fix HTTP player defaulting to audio resolution
  • Logger warning level is "warn"
  • Fix default boolean plugin setting #4107
  • Fix duplicate ffmpeg preset option for live
  • Avoid federation error when file has no torrent file
  • Fix local user auth select
  • Fix live ending banner display
  • Fix redundancy max size
  • Fix broken lives handling

v3.2.0-rc.1

11 May 07:11
v3.2.0-rc.1
4622121
Compare
Choose a tag to compare
v3.2.0-rc.1 Pre-release
Pre-release

IMPORTANT NOTES

Maintenance

CLI tools

  • Add regenerate-thumbnails script to regenerate thumbnails of local videos

Plugins/Themes/Embed API

  • Theme:
    • --submenuColor becomes --submenuBackgroundColor
  • Support HTML placeholders for plugins. See the documentation for more information
    • player-next next to the PeerTube player
  • Support storing files for plugins in a dedicated directory. See the documentation for more information
  • Transcoding:
    • Add inputOptions option support for transcoding profile #3917
    • Add scaleFilter.name option support for transcoding profile #3917
  • Plugin settings:
    • Add ability to register html and select setting
    • Add ability to hide a plugin setting depending on the form state
  • Plugin form fields (to add inputs to video form...):
    • Add ability to hide a plugin field depending on the form state using .hidden property
  • Add client helpers:
    • getServerConfig()
    • getAuthHeader()
  • Add server helpers:
    • config.getServerConfig()
    • plugin.getBaseStaticRoute()
    • plugin.getBaseRouterRoute()
    • plugin.getDataDirectoryPath()
    • user.getAuthUser()
  • Add client plugin hooks (https://docs.joinpeertube.org/api-plugins):
    • action:modal.video-download.shown
    • action:video-upload.init
    • action:video-url-import.init
    • action:video-torrent-import.init
    • action:go-live.init
    • action:auth-user.logged-in & action:auth-user.logged-out
    • action:auth-user.information-loaded
    • action:admin-plugin-settings.init
  • Add server plugin hooks (https://docs.joinpeertube.org/api-plugins):
    • filter:api.download.video.allowed.result & filter:api.download.torrent.allowed.result to forbid download
    • filter:html.embed.video-playlist.allowed.result & filter:html.embed.video.allowed.result to forbid embed
    • filter:api.search.videos.local.list.params & filter:api.search.videos.local.list.result
    • filter:api.search.videos.index.list.params & filter:api.search.videos.index.list.result
    • filter:api.search.video-channels.local.list.params & filter:api.search.video-channels.local.list.result
    • filter:api.search.video-channels.index.list.params & filter:api.search.video-channels.index.list.result

Features

  • 🎉 More robust uploads using a resumable upload endpoint #3933
  • Accessibility/UI:
    • 🎉 Redesign channel and account page
    • 🎉 Increase video miniature size
    • 🎉 Add channel banner support
    • Use a square avatar for channels and a round avatar for accounts
    • Use account initial as default account avatar #4002
    • Prefer channel display in video miniature
    • Add support button in channel page
    • Set direct download as default in video download modal #3880
    • Show less information in video download modal by default #3890
    • Autofocus admin plugin search input
    • Add 1.75 playback rate to player #3888
    • Add title attribute to embed code #3901
    • Don't pause player when opening a modal #3909
    • Add link below the player to open the video on origin instance #3624
  • Notify admins on new available PeerTube version
  • Notify admins on new available plugin version
  • Sort channels by last uploaded videos
  • Video player:
    • Add loop toggle to context menu #3949
    • Add icons to context menu #3955
    • Add a Previous button in playlist watch page #3485
    • Automatically close the settings menu when clicking outside the player
    • Add "stats for nerds" panel in context menu #3958
  • Add channel and playlist stats to stats endpoint #3747
  • Support playlistPosition=last and negative index (playlistPosition=-2) URL query parameters for playlists #3974
  • My videos:
    • Add ability to sort videos (publication date, most viewed...)
    • Add ability to only display live videos
  • Automatically resume videos for non logged-in users #3885
  • Admin plugins:
    • Show a modal when upgrading a plugin to a major version
    • Display a setting button after plugin installation
  • Add ability to search live videos
  • Use bigger thumbnails for feeds
  • Parse video description markdown for Opengraph/Twitter/HTML elements
  • Open the remote interaction modal when replying to a comment if we are logged-out
  • Handle .srt captions with broken durations
  • Performance:
    • Player now lazy loads video captions
    • Faster admin table filters
    • Optimize feed endpoint

Bug fixes

  • More robust comments fetcher of remote video
  • Fix database ssl connection
  • Remove unnecessary black border above and below video in player #3920
  • Reduce tag input excessive padding #3927
  • Fix disappearing hamburger menu for narrow screens #3929
  • Fix Youtube subtitle import with some languages
  • Fix transcoding profile update in admin config
  • Fix outbox fetch with subtitled videos
  • Correctly unload a plugin on update/uninstall #3940
  • Ensure to install plugins that are supported by PeerTube
  • Fix welcome/warning modal displaying twice
  • Fix h265 video import using CLI
  • Fix context menu when watching a playlist
  • Fix transcoding job priority preventing video publication when there are many videos to transcode
  • Fix remote account/channel "joined at"
  • Fix CLI plugins list command options #4055

v3.1.0

24 Mar 16:54
v3.1.0
2955384
Compare
Choose a tag to compare

IMPORTANT NOTES

  • Important: Drop PostgreSQL 9.6 support
  • Important: Deprecate NodeJS 10
  • Important: Migrations for this release could be long. Please plan a downtime
  • Support NodeJS 14 and 15
  • Remove ES5 module support (breaks compatibility with web browsers we didn't support)
  • PeerTube releases now contain client source maps helping client debugging (for developers and admins).
    It's the reason why the release size is bigger (we think it's worth it)
  • Remove deprecated static routes (/static/avatars/, /static/previews/ and /static/video-captions/)
  • PeerTube now uses a unique name for thumbnails, previews and captions allowing to correctly cache these resources.
    It could break some third party clients that guessed these filenames depending on the video UUID. We'll continue this work in the future
    for video filenames, so admins can easily cache these files (using multiple reverse proxies etc)

Maintenance

  • Fix nginx max body size configuration

CLI tools

  • Add script printing command to generate a resolution for a given file #3507
  • Add --wait-interval <seconds> option to video-import script to wait between two video imports #3310

Plugins/Themes/Embed API

Features

  • Transcoding:
    • Fair transcoding jobs priority: give an higher priority to optimize jobs and decrease priority of transcoding jobs depending on the amount of videos uploaded by the user during the last 7 days #3637
    • Higher niceness priority for live transcoding compared to vod transcoding #3577
    • Allow admins to choose a transcoding profile. New transcoding profiles can be added by PeerTube plugins that can inject custom ffmpeg encoders/parameters
    • Add transcoding support for 1440p (Quad HD/QHD/WQHD) videos #3518
    • Add transcoding progress in admin transcoding jobs list
    • Use veryfast preset for default transcoding profile (same result size but faster)
    • Transcode audio uploads to lower configured resolutions
    • Transcode HLS playlists in a tmp directory (less bugs/inconsistencies)
    • Allow admins to choose the transcoding jobs concurrency
  • Support Albanian locale
  • Video upload:
    • Async torrent creation on video upload. We hope that it should fix some weird upload errors
    • Add .m4a audio upload support
  • Accessibility/UI:
    • Move orange admin buttons on the left side
    • Hide title to left menu toggle icon
    • Add username information in profile settings
    • Improve about page layout
    • Add refresh button in jobs list
    • Add ability to set a custom user quota
    • Rewrite prose for JavaScript disabled message #3684
  • Video import:
    • Stricter youtube-dl format selectors for import (don't import HDR videos and cap to the max supported resolution) #3516
    • Don't publish imported videos before the user submitted the second step form
    • Allow admins to choose the import jobs concurrency
  • Implement hot and best trending algorithms #3625 & #3681
  • Admin config:
    • Add URL fragment support in admin config page to go on the appropriate tab
    • Improve submit error message
    • Allow admins to disable ping requests logging #3550
    • Add a setting so PeerTube periodically cleans up remote AP interactions
  • Add ability for admins to update plugin auth field of a particular user
  • Support webp avatar upload
  • Implement remote comment/subscription
  • Register a service worker #3464
  • Add ability to remove one's avatar for account and channels #3467
  • Show first decimal for video views above a thousand #3564
  • Allow user to search through their watch history #3576
  • Allow users/visitors to search through an account's videos #3589
  • Use an HTML link to display feed url
  • Allow AP resolution for default account/channel pages (/accounts/:name/video-channels and /video-channels/:name/videos)
  • Redirect to login on 401, display 403 variant #3632
  • Performance:
    • Optimize videos list API endpoint
    • Optimize videos list views sort SQL query
    • Avoid as much as possible to process remote thumbnail
    • Proxify remote torrent requests from local clients (like we do for captions and previews)
    • Optimize rate POST endpoint
  • Tighten hotkeys definitions to not conflict with the web browser hotkeys #3702
  • Add more AP stats to stats endpoint
  • Increase jobs request timeout to 7 seconds
  • Increase broadcast request concurrency to 30

Bug fixes

  • Fix remote subscribe input alignment
  • Fix loading bar for HTTP requests
  • Fix table header overflow
  • Disable wait transcoding checkbox instead of hiding it when uploading an incompatible video for the web
  • Fix sendmail emailer configuration
  • Add missing niceness to ffmpeg thumbnail process
  • Videos with only HLS files:
    • Fix RSS feed
    • Correctly wait transcoding before federating
    • Fix redundancy
    • Correctly remove torrents
  • Localize decimal separator in video miniatures #3643
  • Check banned status on external authentication
  • Remove all video redundancies when purging the cache
  • Fix URI search admin config update
  • Fix broken HLS playback with videos that contain an unknown channel layout
  • Fix HLS generation after file import script
  • Ensure we don't receive things from local actors
  • Try to recover from network errors in HLS player
  • Fix comments sorting dropdown z-index
  • Fix create transcoding job script depending on the transcoding configuration
  • Fix NSFW policy in my videos, account videos and channel videos pages
  • Fix complete description loading of a previous video
  • Fix video comments display with deleted comments
  • Don't override preview image on import
  • Fix Accept AP messages sending to previously accepted followers
  • Fix import script when using the instance uses the search index
  • Fix player freeze on Safari with a video that has many subtitles
  • Fix anonymous user settings
  • Fix preview upload with capitalized ext
  • Fix abuses list crash on deleted video
  • More robust channel change federation
  • Fix emptying video tags
  • Fix broken local actors that do not have a public/private key
  • Fix bad PeerTube URL for playlist embed
  • Live:
    • Don't update live attributes if they did not change (allowing to update live metadata even if the live has started)
    • Fix live RAM usage when ffmpeg is too slow to transcode the RTMP stream
    • Correctly load live information (description and preview) when not started
  • Fix mention notification with deleted comment
  • Fix default boolean plugin setting
  • Fix long text on modals #3840

v3.1.0-rc.1

04 Mar 10:00
v3.1.0-rc.1
4468e1e
Compare
Choose a tag to compare
v3.1.0-rc.1 Pre-release
Pre-release

IMPORTANT NOTES

  • Important: Deprecate NodeJS 10
  • Support NodeJS 14 and 15
  • Remove ES5 module support (breaks compatibility with web browsers we didn't support)
  • PeerTube releases now contain client source maps helping client debugging (for developers and admins).
    It's the reason why the release size is bigger (we think it's worth it)
  • Remove deprecated static routes (/static/avatars/, /static/previews/ and /static/video-captions/)
  • PeerTube now uses a unique name for thumbnails, previews and captions allowing to correctly cache these resources.
    It could break some third party clients that guessed these filenames depending on the video UUID. We'll continue this work in the future for video filenames, so admins can easily cache these files (using multiple reverse proxies etc)

Maintenance

  • Fix nginx max body size configuration

CLI tools

  • Add script printing command to generate a resolution for a given file #3507
  • Add --wait-interval <seconds> option to video-import script to wait between two video imports #3310

Plugins/Themes/Embed API

Features

  • Transcoding:
    • Fair transcoding jobs priority: give an higher priority to optimize jobs and decrease priority of transcoding jobs depending on the amount of videos uploaded by the user during the last 7 days #3637
    • Higher niceness priority for live transcoding compared to vod transcoding #3577
    • Allow admins to choose a transcoding profile. New transcoding profiles can be added by PeerTube plugins that can inject custom ffmpeg encoders/parameters
    • Add transcoding support for 1440p (Quad HD/QHD/WQHD) videos #3518
    • Add transcoding progress in admin transcoding jobs list
    • Use veryfast preset for default transcoding profile (same result size but faster)
    • Transcode audio uploads to lower configured resolutions
    • Transcode HLS playlists in a tmp directory (less bugs/inconsistencies)
    • Allow admins to choose the transcoding jobs concurrency
  • Video upload:
    • Async torrent creation on video upload. We hope that it should fix some weird upload errors
    • Add .m4a audio upload support
  • Accessibility/UI:
    • Move orange admin buttons on the left side
    • Hide title to left menu toggle icon
    • Add username information in profile settings
    • Improve about page layout
    • Add refresh button in jobs list
    • Add ability to set a custom user quota
    • Rewrite prose for JavaScript disabled message #3684
  • Video import:
    • Stricter youtube-dl format selectors for import (don't import HDR videos and cap to the max supported resolution) #3516
    • Don't publish imported videos before the user submitted the second step form
    • Allow admins to choose the import jobs concurrency
  • Implement hot and best trending algorithms #3625 & #3681
  • Admin config:
    • Add URL fragment support in admin config page to go on the appropriate tab
    • Improve submit error message
    • Allow admins to disable ping requests logging #3550
    • Add a setting so PeerTube periodically cleans up remote AP interactions
  • Add ability for admins to update plugin auth field of a particular user
  • Support webp avatar upload
  • Implement remote comment/subscription
  • Register a service worker #3464
  • Add ability to remove one's avatar for account and channels #3467
  • Show first decimal for video views above a thousand #3564
  • Allow user to search through their watch history #3576
  • Allow users/visitors to search through an account's videos #3589
  • Use an HTML link to display feed url
  • Allow AP resolution for default account/channel pages (/accounts/:name/video-channels and /video-channels/:name/videos)
  • Redirect to login on 401, display 403 variant #3632
  • Performance:
    • Optimize videos list API endpoint
    • Optimize videos list views sort SQL query
    • Avoid as much as possible to process remote thumbnail
    • Proxify remote torrent requests from local clients (like we do for captions and previews)
    • Optimize rate POST endpoint
  • Tighten hotkeys definitions to not conflict with the web browser hotkeys #3702
  • Add more AP stats to stats endpoint
  • Increase jobs request timeout to 7 seconds
  • Increase broadcast request concurrency to 30

Bug fixes

  • Fix remote subscribe input alignment
  • Fix loading bar for HTTP requests
  • Fix table header overflow
  • Disable wait transcoding checkbox instead of hiding it when uploading an incompatible video for the web
  • Fix sendmail emailer configuration
  • Add missing niceness to ffmpeg thumbnail process
  • Videos with only HLS files:
    • Fix RSS feed
    • Correctly wait transcoding before federating
    • Fix redundancy
    • Correctly remove torrents
  • Localize decimal separator in video miniatures #3643
  • Check banned status on external authentication
  • Remove all video redundancies when purging the cache
  • Fix URI search admin config update
  • Fix broken HLS playback with videos that contain an unknown channel layout
  • Fix HLS generation after file import script
  • Ensure we don't receive things from local actors
  • Try to recover from network errors in HLS player
  • Fix comments sorting dropdown z-index
  • Fix create transcoding job script depending on the transcoding configuration
  • Fix NSFW policy in my videos, account videos and channel videos pages
  • Fix complete description loading of a previous video
  • Fix video comments display with deleted comments
  • Don't override preview image on import
  • Fix Accept AP messages sending to previously accepted followers
  • Fix import script when using the instance uses the search index
  • Fix player freeze on Safari with a video that has many subtitles
  • Fix anonymous user settings
  • Fix preview upload with capitalized ext
  • Fix abuses list crash on deleted video
  • More robust channel change federation
  • Fix emptying video tags
  • Fix broken local actors that do not have a public/private key
  • Fix bad PeerTube URL for playlist embed
  • Live:
    • Don't update live attributes if they did not change (allowing to update live metadata even if the live has started)
    • Fix live RAM usage when ffmpeg is too slow to transcode the RTMP stream
    • Correctly load live information (description and preview) when not started

v3.0.1

12 Jan 07:29
v3.0.1
69e0e67
Compare
Choose a tag to compare

SECURITY

  • Important Fix retrieving data of another user if the username contains _ when fetching my information

Docker

Bug fixes

  • Fix account feed URL
  • Log RTMP server error (address already in use)
  • Fix NPM theme links in admin theme page
  • Don't reject AP actors with empty description
  • Fix twitter admin config description
  • Fix duplicate entry in job list page
  • Fix nl-NL broken admin config page
  • Fix bad tracker client IP when using a reverse proxy