IMPORTANT NOTES
- Database migrations of this version can take a long time (up to 30 minutes on an instance with many users/federation actors)
- You need to manually execute a migration script after your upgrade while PeerTube is running and the database migration is complete (
Migrations finished. New migration version schema: 965in PeerTube startup logs):- Classic installation:
cd /var/www/peertube/peertube-latest && sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production node dist/scripts/migrations/peertube-8.0.js - Docker installation:
cd /var/www/peertube-docker && docker compose exec -u peertube peertube node dist/scripts/migrations/peertube-8.0.js
- Classic installation:
yarnNodeJS packages manager has been removed in favor ofpnpm. Follow the dependencies guide to installpnpmon your system before the upgrade- For Docker users, please read the Docker section below
- Supported NodeJS versions are
>= 20.19 and < 21or>= 22.12 and <23
Configuration
- Remove
http_serverunused section from.yamlconfiguration files - Introduce
views.videos.local.max_ageconfiguration to cleanup old views from local videos - Add more STUN Servers to
webrtc.stun_serversto improve P2P robustness - Add ability to increase video transcription timeout in
video_transcription.timeout - Add
client.new_features_infoconfiguration to disable popups explaining new features to users - Add
user.password_constraints.min_lengthconfig to specify user password minimum length #6945
Docker
- PeerTube Dockerfile is now based on Debian Trixie.
chocobozzz/peertube:productioncan be used instead ofchocobozzz/peertube:production-bookworm(Debian suffix version is deprecated) - PostgreSQL version has been upgraded in Docker Compose. Please follow this guide if you want to upgrade PostgreSQL in your Docker Compose
- Redis version has been upgraded in Docker Compose. No maintenance task is required if you upgrade Redis in your Docker Compose
Plugins/Themes/Embed/REST APIs
- REST API:
- Remove deprecated
filenamefield fromVideoSourceobject - Remove deprecated
commentsEnabledfield fromVideoobject - Remove deprecated
redundancies.filesfield fromVideoRedundancyobject - Deprecate
captionPathfield fromVideoCaptionobject - Deprecate
storyboardPathfromStoryboardobject - The HTTP response code for password-protected videos can be either 401 or 403, depending on the request headers
- Remove deprecated
- Theme:
- Rename
--input-placeholderCSS variables into--input-placeholder-color - Introduce
--input-placeholder-font-sizeCSS variable
- Rename
Features
- 🎉 Add channel collaboration 🎉
- Channel owners can invite users of their instance to become editors of their channel
- Editors can accept or reject the invitation
- Editors can manage videos, playlists & comments of the channel
- An Activity page has been added to list actions performed within a channel
- 🎉 Video player redesign 🎉
- Introduce a new clean and modern theme named Lucide
- Original theme is still used by default, and has been renamed to Galaxy
- The player theme can be changed by the admin for the entire instance or by the channel for all its videos. It can also be changed for individual videos.
- Use vertical audio volume control for Galaxy player theme
- Improve video imports UX
- Introduce an Import failed state to clearly identify failed imports
- Display import state in video manage page and watch page
- Add ability to retry video imports
- Channel synchronization automatically retry failed imports
- Redesign notifications popup and page
- Replace
yarnpackage manager bypnpmto provide faster PeerTube installation/upgrade and faster plugin installation/upgrade - Add admin options to customize default Browse videos behaviour #7193
- Add ability to handle storyboard generation job by runners #7191
- Add Resend verification email button to admin users list #7272
- Improve video manage and admin config forms accessibility
- Add ability to insert a new playlist at first position in the channel
- Add ability to copy codecs, if possible, for HLS transcoding
- Also search by account name when searching for channels
- Faster start time seek on HLS videos
Bug fixes
- Fix avatar max size information
- Fix scroll issue when navigating from homepage
- Fix viewers stats date filter label after a reset
- Fix select languages component label
- Correctly load user video language settings in video filters
- Accept non-HTTPS URLs for the search index
- Fix admin abuse URL in emails
- Show videos to owners even if they are muted on the instance
- Correctly sort scheduled videos when listing my videos
- Fix account mention redirection
- Display all countries/regions labels in viewer stats graph
- Keep videos order after user import
- Fix HTML headings hierarchy to improve SEO
- Users logged-in by an external auth plugin can choose to display their email publicly (required by Apple for the podcast feed)
- Fix podcast feed video bitrate attribute that can be refused by some podcast applications
- Fix video quota information estimation
- Translate RSS feeds title
- Fix transcription CORS issue if the caption file is stored externally