## Unreleased
+ ### Changed
+
+ - Polls now always return a `voters_count`, even if they are single-choice.
+ - Admin Emails: The ap id is used as the user link in emails now.
+
### Added
- - Mix tasks for controlling user account confirmation status in bulk (`mix pleroma.user confirm_all` and `mix pleroma.user unconfirm_all`)
- - Mix task for sending confirmation emails to all unconfirmed users (`mix pleroma.email send_confirmation_mails`)
- - Mix task option for force-unfollowing relays
- - Media preview proxy (requires `ffmpeg` and `ImageMagick` to be installed and media proxy to be enabled; see `:media_preview_proxy` config for more details).
- - Pleroma API: Importing the mutes users from CSV files.
+
+ - Reports now generate notifications for admins and mods.
- Experimental websocket-based federation between Pleroma instances.
- - Support pagination of blocks and mutes
- - App metrics: ability to restrict access to specified IP whitelist.
- - Account backup
+- Support for local-only statuses
+ - Support pagination of blocks and mutes.
+ - Account backup.
- Configuration: Add `:instance, autofollowing_nicknames` setting to provide a way to make accounts automatically follow new users that register on the local Pleroma instance.
+ - Ability to view remote timelines, with ex. `/api/v1/timelines/public?instance=lain.com` and streams `public:remote` and `public:remote:media`.
+ - The site title is now injected as a `title` tag like preloads or metadata.
+
+ <details>
+ <summary>API Changes</summary>
+ - Admin API: (`GET /api/pleroma/admin/users`) filter users by `unconfirmed` status and `actor_type`.
+ - Pleroma API: Add `idempotency_key` to the chat message entity that can be used for optimistic message sending.
+ - Pleroma API: (`GET /api/v1/pleroma/federation_status`) Add a way to get a list of unreachable instances.
+ - Mastodon API: User and conversation mutes can now auto-expire if `expires_in` parameter was given while adding the mute.
+
+ </details>
+
+ ### Fixed
+
+ <details>
+ <summary>API Changes</summary>
+ - Mastodon API: Current user is now included in conversation if it's the only participant.
+ - Mastodon API: Fixed last_status.account being not filled with account data.
+
+ </details>
+
+ ## Unreleased (Patch)
+ ### Fixed
+
+ - Config generation: rename `Pleroma.Upload.Filter.ExifTool` to `Pleroma.Upload.Filter.Exiftool`.
+ - S3 Uploads with Elixir 1.11.
+
+ ## [2.2.0] - 2020-11-12
+
+ ### Security
+
+ - Fixed the possibility of using file uploads to spoof posts.
### Changed
## Timelines
Adding the parameter `with_muted=true` to the timeline queries will also return activities by muted (not by blocked!) users.
+
Adding the parameter `exclude_visibilities` to the timeline queries will exclude the statuses with the given visibilities. The parameter accepts an array of visibility types (`public`, `unlisted`, `private`, `direct`), e.g., `exclude_visibilities[]=direct&exclude_visibilities[]=private`.
+
Adding the parameter `reply_visibility` to the public and home timelines queries will filter replies. Possible values: without parameter (default) shows all replies, `following` - replies directed to you or users you follow, `self` - replies directed to you.
+ Adding the parameter `instance=lain.com` to the public timeline will show only statuses originating from `lain.com` (or any remote instance).
+
## Statuses
-- `visibility`: has an additional possible value `list`
+- `visibility`: has additional possible values `list` and `local` (for local-only statuses)
Has these additional fields under the `pleroma` object: