Skip to content

v4.3.0

Compare
Choose a tag to compare
@Chocobozzz Chocobozzz released this 21 Sep 09:34
· 2863 commits to develop since this release
v4.3.0
4a9de87

IMPORTANT NOTES

  • Redis < 5.x is not supported anymore
  • FFmpeg < 4.3 is not supported anymore

Maintenance

  • Use yt-dlp by default instead of youtube-dl for new installations (because of much more dev activity)
  • Support NodeJS 18
  • Improved PeerTube logs:
    • Reduce amount of PeerTube error logs
    • Introduce log.log_tracker_unknown_infohash setting to disable "Unknown infoHash" warnings
    • Web browsers send their error logs to the server that writes them in its own logs. Can be disabled by log.accept_client_log setting
  • Introduce experimental support of OpenTelemetry
    • Enable metrics export using a Prometheus exporter
    • Enable tracing export using a Jaeger exporter
  • Automatically rebuild native plugin modules on NodeJS ABI change

Docker

  • Add ability to easily use the docker compose stack on localhost

Plugins/Themes/Embed API

  • Theme:
    • Removed unused --secondaryColor CSS variable
  • Add client plugin hooks (https://docs.joinpeertube.org/api-plugins):
    • filter:api.my-library.video-playlist-elements.list.params & filter:api.my-library.video-playlist-elements.list.result #5098
    • action:video-channel-create.init
    • action:video-channel-update.init & action:video-channel-update.video-channel.loaded
    • action:video-channel-videos.init & action:video-channel-videos.video-channel.loaded & action:video-channel-videos.videos.loaded
    • action:video-channel-playlists.init & action:video-channel-playlists.video-channel.loaded & action:video-channel-playlists.playlists.loaded
    • filter:share.video-embed-code.build.params & filter:share.video-embed-code.build.result & filter:share.video-playlist-embed-code.build.params & filter:share.video-playlist-embed-code.build.result
    • filter:share.video-embed-url.build.params & filter:share.video-embed-url.build.result & filter:share.video-playlist-embed-url.build.params & filter:share.video-playlist-embed-url.build.result
    • filter:share.video-url.build.params & filter:share.video-url.build.result & filter:share.video-playlist-url.build.params & filter:share.video-playlist-url.build.result
    • action:modal.share.shown
  • Add server plugin hooks (https://docs.joinpeertube.org/api-plugins):
    • filter:job-queue.process.params & filter:job-queue.process.result
    • filter:transcoding.manual.resolutions-to-transcode.result & filter:transcoding.auto.resolutions-to-transcode.result
    • action:api.video-channel.created & action:api.video-channel.updated & action:api.video-channel.deleted
    • action:notifier.notification.created
  • Add HTML placeholder (https://docs.joinpeertube.org/contribute-plugins?id=html-placeholder-elements):
    • share-modal-playlist-settings & share-modal-video-settings

Features

  • 🎉 Add ability for users to synchronize a remote channel #5135 🎉
    • Automatically import all videos of a remote channel in your PeerTube channel
    • PeerTube will watch for new publications and automatically import these new videos
  • UI:
    • Redesigned Create an account steps
    • Improved Login page
    • Use a lighter font color
    • Use a bigger font size
    • Don't display form errors in red while typing but only when we unfocus the input
    • Display an error message when the user is unauthorized to view a page #5097
    • Display latest upload date for captions
    • Add an information if the live will be saved as a replay when displaying live sessions
    • Move search bar at the center of the header
  • Add Toki Pona and Croatian locales in client
  • Embed:
    • Display a message and automatically start live streams in embed
    • Use the instance name instead of "PeerTube" in embed control bar
    • Reuse current watch page query parameters for embed when using OEmbed #5023
  • Instance follows:
    • Introduce a Rejected state for follow requests to not reprocess already rejected follow requests
    • Add bulk actions on instance following/followers ()
  • Admins:
    • Add ability to disable original resolution transcoding of the uploaded video/live stream
    • Add ability to delete a specific video file in videos overview
    • Display Last Login column by default in users overview
    • Remember last selected columns in users overview
    • Add ability to set a custom video import timeout
    • Add ability to set the default feed (Atom, RSS...) items count
    • Admins and moderators now bypass API rate limits
    • Add ability to list comments on local videos in comments overview
  • Limit video import resolution depending on enabled VOD transcoding resolutions
  • Store and display the uploaded video original filename #4885
  • Add Total views in the my channels list #5007
  • Add Original Publication Date video sort option #4959
  • Performance:
    • Optimized view/watching endpoint
    • Optimized video feed SQL query
    • Process images (resize, convert...) in a dedicated worker thread
    • Optimized emoji markup list rendering in client
    • Use a worker thread to send ActivityPub Broadcast requests
  • Suffix external auth username/channel name on conflict instead of throwing an exception

Bug fixes

  • Fix users overview Last login sort in admin
  • More robust move to object storage job failure
  • Fix comment add avatar with a unauthenticated user
  • Fix fetching unlisted video in client
  • Fix comments/download enabled attributes when importing a video
  • Fix total instance views stats
  • Fix HLS player infinite buffering on seek
  • Reset table pagination on search
  • Host search filter can also search into channels and playlists in global search
  • Fix My videos invalid counter
  • Prevent error on highlighted thread
  • Fix Jobs, Account blocklist and Server blocklist hidden columns on Safari
  • Fix live stream max bitrate
  • Fix incompatibility with OpenSSL 3
  • Don't crash on redis connection error
  • Transcoding:
    • Fix failed transcoding with a mp3 file that contains a cover image
    • Prevent duplicated HLS playlist when running transcoding
    • Regenerate video file names when running transcoding manually
    • Prevent job failures resulting in broken videos on concurrent transcoding
    • Fix transcoding of videos with quad audio channels
  • ActivityPub
    • Fix random invalid HTTP signature generation
    • Use unique AP id for Accept/Reject activities
    • Correctly handle remote actors that don't have follow counters
    • Correctly handle unknown remote actor image size
  • Add years in graph legend when grouping video views stats by month
  • Prevent creating multiple lives when clicking multiple times on the "Go Live" button
  • Fix *undefined" resolution in player Stats for nerds
  • Fix not displayed error message in administrator web config
  • More robust S3 upload #5231
  • Fix broken saved live stream with only one resolution
  • Fix removeEventListener player embed api
  • Progressively cleanup actor images without width from the database
  • Fix broken dates on localized pages
  • Prevent job queue to be started before plugins
  • Fix old database enum names
  • Don't display remove file icon in admin videos overviews if we can't delete the file