# Changelog
+## v2.0.0-rc.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`: https://github.com/Chocobozzz/PeerTube/commit/916937d7daf386e4e2d37b2ca22db07b644b02df
+
+### 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**: https://github.com/Chocobozzz/PeerTube/commit/f1b38883922fd59b36f093e44a5091e090d20862)
+
+### Maintenance
+
+ * Add `--tmpdir`, `--first`, `--last` and `--verbose [level]` parameters to peertube-import-videos script ([Yetangitu](https://github.com/Yetangitu))
+ * Improve REST API documentation ([@frankstrater](https://github.com/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](https://instances.joinpeertube.org/) instances
+ * Add *Most liked videos* page ([@alcalyn](https://github.com/alcalyn))
+ * Add a drag&drop delay on playlist videos to allow user scroll on small screens ([@alcalyn](https://github.com/alcalyn))
+ * Allow to toggle video publication date to display absolute date ([@alcalyn](https://github.com/alcalyn))
+ * Add statistics in about page ([@alcalyn](https://github.com/alcalyn))
+ * Improve the *feature table* in about page
+ * Add contributors in about page
+ * Clearer warning of IP address leaking on embedded videos ([@robinkooli](https://github.com/robinkooli))
+ * Case insensitive search on video tags
+ * Add video name in "video publish notification"
+ * Add ability to autoplay next recommended video (opt in) ([@LoveIsGrief](https://github.com/LoveIsGrief))
+ * Add link behind the subscribe via RSS button ([@frankstrater](https://github.com/frankstrater))
+ * Support text/plain caption files
+ * Speedup theme injection
+
+### 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](https://github.com/frankstrater))
+ * Disable auto complete of email field when editing another user information in admin panel ([@Knackie](https://github.com/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
+
+
+## v1.4.1
+
+### Bug fixes
+
+ * Fix too fast redundancy eviction
+ * Fix broken auto blacklist page
+ * Rename signup steps
+ * Fix menu x overflow
+
+
+## v1.4.0
+
+**Since v1.3.1**
+
+### IMPORTANT NOTES
+
+ * **Important** Add `plugins` directory in configuration file. **You should configure it in your production.yaml**
+ * **Important:** Deprecate NodeJS 8 (support ends on [December 2019](https://github.com/nodejs/Release#release-schedule)). Please upgrade to NodeJS 10.
+ * **Important:** Updated nginx template (you need to [update manually](https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/production.md#nginx))
+ * Fix long server responses on dual stack servers: https://github.com/Chocobozzz/PeerTube/commit/fd2ddcae8ff4eb10bf7168ac3c8801f06b37627f
+ * Improve images HTTP cache: https://github.com/Chocobozzz/PeerTube/commit/c928e1364fbdff87f27fd982710b95426a250491
+ * **Important:** With the new theme system, we removed the dark mode button. Your administrator has to install [the dark theme](https://framagit.org/framasoft/peertube/official-plugins/tree/master/peertube-theme-dark)
+ from their admin panel, and then users can choose this theme in their settings
+ * Changed the playlist REST API to fix various issues. See https://github.com/Chocobozzz/PeerTube/pull/1998 for more information
+ * Removed magnet URI support in download modal since most of the BitTorrent clients do not understand the `xs` parameter
+ * Renamed `Overview` page to `Discover`
+
+### Security
+
+ * Moderators can only create and update regular users (thanks GGC-Project)
+
+### Maintenance
+
+ * Create a dedicated `package.json` for CLI tools to reduce server dependencies size
+ * Add ability to set root password by environment at first start ([@darnuria](https://github.com/darnuria))
+ * Removed unused `uuid` actor field (we already have a unique identifier that is the `preferredUsername`)
+ * Add ability to disable PeerTube log rotation ([@NassimBounouas](https://github.com/NassimBounouas))
+ * Speedup font display ([@BO41](https://github.com/BO41))
+ * Improve static files HTTP cache
+ * Add `--since` and `--until` parameters to import videos script to easily sync external channels ([@fflorent](https://github.com/fflorent))
+ * Optimize `/watch/:uuid` endpoint
+ * Optimize Sequelize (SQL ORM) queries generation (consumes less CPU)
+ * Prune script is faster and can prune avatar files
+
+### Features
+
+ * :tada: Support Finnish, Greek and Scottish Gaelic languages
+ * :tada: Add basic plugins and themes support (**beta**): https://docs.joinpeertube.org/#/contribute-plugins
+ * Install plugins or themes from the administration panel
+ * Choose a default theme for your instance
+ * Users can choose the theme they want among the list of themes their administrator installed
+ * :tada: Add ability to upload audio files: PeerTube will merge the audio file and the thumbnail to create a video
+ * Multi step registration:
+ * Add ability for new users to create their default channel
+ * Guess the account username/channel username according to their display name
+ * Add explanations about what the purpose of a username/channel name is, and what a channel is
+ * Improve account video channels page:
+ * Set it as the default page for the account page in order to avoid confusion between the account homepage and the video channel homepage
+ * Display channels in rows with some of their videos
+ * Support more URL parameters in embeds: `muted`, `loop`, `peertubeLink`
+ * Redesign share modal and add customizations:
+ * Start/stop at a specific timestamp
+ * Automatically play/mute/loop the video
+ * Set a specific subtitle by default
+ * Group subscriptions and recently added videos in chronological order
+ * Add ability for users to change their email address
+ * Add ability to update the support field of all channel videos when we update the channel support field
+ * Add a language filter in user preferences to display only videos in specific languages
+ * Add instance follows list in a dedicated tab in the "About" page
+ * Add ability to set to private a public/unlisted video or video playlist
+ * Transcode in the `tmp` directory for s3fs compatibility ([@libertysoft3](https://github.com/libertysoft3))
+ * Add a button to copy account username ([@NassimBounouas](https://github.com/NassimBounouas))
+ * Redirect to "Local videos" page when going to the `peertube` account page
+ * Rearrange search filter options ([@realityfabric](https://github.com/realityfabric))
+ * Close modal after clicking on download ([@LeoMouyna](https://github.com/LeoMouyna))
+ * Add ability for admins to customize emails object prefix and body signature ([@yohanboniface](https://github.com/yohanboniface))
+ * Support 4K transcoding
+ * Add link of the follower profile in administration ([@NassimBounouas](https://github.com/NassimBounouas))
+ * Add subject field in contact form ([@NassimBounouas](https://github.com/NassimBounouas))
+ * Add rate limit to registration and API endpoints
+ * Add "video quota used" sortable column in user admin list ([@darnuria](https://github.com/darnuria))
+ * Automatically update the playlist thumbnail according to the video at the first position (if the user did not set a specific thumbnail)
+ * Automatically remove dead followings
+ * Federate comment deletion if the comment was deleted by the video owner
+
+### Bug fixes
+
+ * Fix transcoding information in features table ([LiPek](https://github.com/LiPeK))
+ * Fix tools auth with remote instances
+ * Fix various issues in upload/import scripts
+ * Fix redundancy exceeded quota
+ * Fix login with email ([@NassimBounouas](https://github.com/NassimBounouas))
+ * Fix quota display in features table
+ * Fix transcoding help placement
+ * Fix invisible videos in playlists
+ * Fix HLS transcoding in lower resolutions
+ * Fix various federation issues
+ * Fix mute badge labels
+ * Fix broken follow notification when the actor is deleted
+ * Fix overflow and playlist block width in the watch page
+ * Fix search results overflow on mobile
+ * Fix infinite scroll on big screens
+ * Fix start time on some HLS videos
+ * Fix socket notification with multiple user tabs
+ * Fix redundancy if the instance has already the file on disk
+ * Fix image and plugin CSP
+ * Fix video rows overflow
+ * Dismiss modals on pop state
+ * Go back when cancel NSFW modal
+
+
+***Since v1.4.0-rc.1***
+
+### Features
+
+ * Add Finnish language support
+
+### Bug fixes
+
+ * Fix broken front end on Firefox ESR (60)
+ * Fix prune storage script when using a same directory for multiple storage keys
+ * Relax plugin `package.json` validation
+ * Replace "overview" by "discover" in client titles
+ * Change configuration: `email.object` becomes `email.subject`
+ * Fix user creation by moderators
+ * Fix video playlist element removal
+ * Fix plugin card background color with dark theme
+ * Fix lazy static route with unknown avatars (404 instead of 500)
+ * Fix socket notification with multiple user tabs
+ * Fix redundancy if the instance has already the file on disk
+ * Fix image and plugin CSP
+ * Fix video rows overflow
+ * Dismiss modals on pop state
+ * Go back when cancel NSFW modal
+
+
## v1.4.0-rc.1
### IMPORTANT NOTES
+ * **Important** Add `plugins` directory in configuration file. **You should configure it in your production.yaml**
* **Important:** Deprecate NodeJS 8 (support ends on [December 2019](https://github.com/nodejs/Release#release-schedule)). Please upgrade to NodeJS 10.
* **Important:** Updated nginx template (you need to [update manually](https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/production.md#nginx))
* Fix long server responses on dual stack servers: https://github.com/Chocobozzz/PeerTube/commit/fd2ddcae8ff4eb10bf7168ac3c8801f06b37627f
* Improve images HTTP cache: https://github.com/Chocobozzz/PeerTube/commit/c928e1364fbdff87f27fd982710b95426a250491
- * **Important:** With the new theme system, we removed the dark mode button. Your administrator have to install [the dark theme](https://framagit.org/framasoft/peertube/official-plugins/tree/master/peertube-theme-dark)
- from their admin panel, and then users can choose this theme in their settings
+ * **Important:** With the new theme system, we removed the dark mode button. Your administrator has to install [the dark theme](https://framagit.org/framasoft/peertube/official-plugins/tree/master/peertube-theme-dark)
+ from their admin panel, and then users can choose this theme in their settings
* Changed the playlist REST API to fix various issues. See https://github.com/Chocobozzz/PeerTube/pull/1998 for more information
* Removed magnet URI support in download modal since most of the BitTorrent clients do not understand the `xs` parameter
* Renamed `Overview` page to `Discover`
* Optimize `/watch/:uuid` endpoint
* Optimize Sequelize (SQL ORM) queries generation (consumes less CPU)
* Prune script is faster and can prune avatar files
-
+
### Features
* :tada: Support Greek and Scottish Gaelic languages
* Automatically update the playlist thumbnail according to the video at the first position (if the user did not set a specific thumbnail)
* Automatically remove dead followings
* Federate comment deletion if the comment was deleted by the video owner
-
+
### Bug fixes
* Fix transcoding information in features table ([LiPek](https://github.com/LiPeK))
* Fix error in video upload/update form when scheduling publication
* Fix black theme on some pages
* Fix video import if auto blacklist is enabled
-
+
## v1.3.0
* **nginx** Remove `text/html` from `gzip_types`: https://github.com/Chocobozzz/PeerTube/commit/7eeb6a0ba4028d0e20847b846332dd0b7747c7f8 [@bnjbvr](https://github.com/bnjbvr)
* Add `streaming_playlists` directory in configuration file. **You should configure it in your production.yaml**
- * CSP configuration changed: it's now in a [dedicated section](https://github.com/Chocobozzz/PeerTube/blob/develop/config/production.yaml.example#L110)
-
+ * CSP configuration changed: it's now in a [dedicated section](https://github.com/Chocobozzz/PeerTube/blob/develop/config/production.yaml.example#L110)
+
### Maintenance
* Add GitPod support ([@jankeromnes](https://github.com/jankeromnes)) that could help people to contribute on PeerTube: https://github.com/Chocobozzz/PeerTube/blob/develop/.github/CONTRIBUTING.md#online-development
* Add `NOCLIENT` env support to only install server dependencies. Example: `NOCLIENT=true yarn install --pure-lockfile` ([@rigelk](https://github.com/rigelk))
### Docker
-
+
* **Important**: Add host network mode to the reverse proxy section (without this, it could break videos views and P2P: https://github.com/Chocobozzz/PeerTube/issues/1643#issuecomment-464789666)
- * **Important**: Add a network section to [docker-compose.yml template](https://github.com/Chocobozzz/PeerTube/blob/develop/support/docker/production/docker-compose.yml)
+ * **Important**: Add a network section to [docker-compose.yml template](https://github.com/Chocobozzz/PeerTube/blob/develop/support/docker/production/docker-compose.yml)
and update your [.env](https://github.com/Chocobozzz/PeerTube/blob/develop/support/docker/production/.env#L8) to fix IP forwarding issue ([@Nutomic](https://github.com/nutomic))
* Fix SMTP default configuration ([@Nutomic](https://github.com/nutomic))
### Features
-
+
* Add video playlist support
* A user has a default `Watch-later` playlist
* A user can create private, unlisted or public playlists
* Fix crash in files cache
* Fix playlist view/update 403
* Fix search with bad webfinger handles
-
-
+
+
## v1.3.0-rc.2
### Docker
- * Add a network section to [docker-compose.yml template](https://github.com/Chocobozzz/PeerTube/blob/develop/support/docker/production/docker-compose.yml)
+ * Add a network section to [docker-compose.yml template](https://github.com/Chocobozzz/PeerTube/blob/develop/support/docker/production/docker-compose.yml)
and update your [.env](https://github.com/Chocobozzz/PeerTube/blob/develop/support/docker/production/.env#L8) to fix IP forwarding issue ([@Nutomic](https://github.com/nutomic))
### Bug fixes
* **nginx** Remove `text/html` from `gzip_types`: https://github.com/Chocobozzz/PeerTube/commit/7eeb6a0ba4028d0e20847b846332dd0b7747c7f8 [@bnjbvr](https://github.com/bnjbvr)
* Add `streaming_playlists` directory in configuration file. **You should configure it in your production.yaml**
- * CSP configuration changed: it's now in a [dedicated section](https://github.com/Chocobozzz/PeerTube/blob/develop/config/production.yaml.example#L110)
-
+ * CSP configuration changed: it's now in a [dedicated section](https://github.com/Chocobozzz/PeerTube/blob/develop/config/production.yaml.example#L110)
+
## Maintenance
* Add GitPod support ([@jankeromnes](https://github.com/jankeromnes)) that could help people to contribute on PeerTube: https://github.com/Chocobozzz/PeerTube/blob/develop/.github/CONTRIBUTING.md#online-development
* Add `NOCLIENT` env support to only install server dependencies. Example: `NOCLIENT=true yarn install --pure-lockfile` ([@rigelk](https://github.com/rigelk))
### Docker
-
+
* **Important**: Add host network mode to the reverse proxy section (without this, it could break videos views and P2P: https://github.com/Chocobozzz/PeerTube/issues/1643#issuecomment-464789666)
* Fix SMTP default configuration ([@Nutomic](https://github.com/nutomic))
### Features
-
+
* Add video playlist support
* A user has a default `Watch-later` playlist
* A user can create private, unlisted or public playlists
* Disable Træfik web UI
### Features
-
+
* Automatically resume videos if the user is logged in
* Hide automatically the menu when the window is resized ([@BO41](https://github.com/BO41))
* Remove confirm modal for JavaScript/CSS injection ([@scanlime](https://github.com/scanlime))
* Fix player progress bar/seeking when changing resolution
* Fix search tab title with no search
* Fix YouTube video import with some videos
-
+
## v1.1.0-alpha.2 (since v1.1.0-alpha.1)
### Security/Maintenance/Federation
-
+
* Add HTTP Signature in addition to Linked Signature:
* It's faster
- * Will allow us to use RSA Signature 2018 in the future without too much incompatibilities in the peertube federation
-
+ * Will allow us to use RSA Signature 2018 in the future without too much incompatibilities in the peertube federation
+
### Features
* Set shorter keyframe interval for transcoding (2 seconds) ([@Nutomic](https://github.com/nutomic))
## v1.0.1
### Security/Maintenance/Federation
-
+
* Add HTTP Signature in addition to Linked Signature:
* It's faster
* Will allow us to use RSA Signature 2018 in the future without too much incompatibilities in the peertube federation
* Add docker dev image ([@am97](https://github.com/am97))
### Features
-
+
* Automatically resume videos if the user is logged in
* Hide automatically the menu when the window is resized ([@BO41](https://github.com/BO41))
* Remove confirm modal for JavaScript/CSS injection ([@scanlime](https://github.com/scanlime))
* Increase timeout on upload endpoint
* Fix redundancy with videos already duplicated by another instance(s)
* Correctly delete files on failed import
-
+
## v1.0.0-beta.15
* Fix redundancy totalVideos stats
* Reduce video import TTL to 1 hour
* Only duplicate public videos
-
+
## v1.0.0-beta.14
* Add chevron hotkeys to change playback rate ([@rigelk](https://github.com/rigelk))
### Bug fixes
-
+
* Fix 24 hours delay to process views
* Fix tag search on overview page
* Handle actors search beginning with '@'
* Improve keyboard navigation ([@rigelk](https://github.com/rigelk))
* Remember theme in local storage ([@rigelk](https://github.com/rigelk))
-
+
### Bug fixes
* Fix upgrade/installation on node 8.12 (bcrypt issue)
* Fix video channel deletion
* Fix video channel RSS
* Fix video views increment
-
+
## v1.0.0-beta.12
### BREAKING CHANGES
- * Users can now use the name they want for their channel.
+ * Users can now use the name they want for their channel.
We will therefore favour the display of video channel handles/names instead of account in the future.
### Documentation
### nginx template
* Add gzip support ([@scanlime](https://github.com/scanlime))
-
+
### Docker template
-
+
* Add quota to the docker configuration values ([@kaiyou](https://github.com/kaiyou))
### Features
* Fix thumbnail/preview in upload.js script
* Fix import-videos.js duplicate detection
* Fix occitan language label
-
+
## v1.0.0-beta.11