Merge branch 'reply-visibility-user-guard' into 'develop'

Mastodon API: fix the public timeline returning an error when the `reply_visibility` parameter is set to `self` for an unauthenticated user

See merge request pleroma/pleroma!2999
This commit is contained in:
lain 2020-09-15 12:21:38 +00:00
commit cfad4f46b2
3 changed files with 11 additions and 2 deletions

View file

@ -24,6 +24,7 @@ switched to a new configuration mechanism, however it was not officially removed
### Fixed ### Fixed
- Welcome Chat messages preventing user registration with MRF Simple Policy applied to the local instance - Welcome Chat messages preventing user registration with MRF Simple Policy applied to the local instance
- Mastodon API: the public timeline returning an error when the `reply_visibility` parameter is set to `self` for an unauthenticated user
## [2.1.1] - 2020-09-08 ## [2.1.1] - 2020-09-08

View file

@ -767,7 +767,7 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
end end
defp restrict_replies(query, %{ defp restrict_replies(query, %{
reply_filtering_user: user, reply_filtering_user: %User{} = user,
reply_visibility: "self" reply_visibility: "self"
}) do }) do
from( from(
@ -783,7 +783,7 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
end end
defp restrict_replies(query, %{ defp restrict_replies(query, %{
reply_filtering_user: user, reply_filtering_user: %User{} = user,
reply_visibility: "following" reply_visibility: "following"
}) do }) do
from( from(

View file

@ -1810,6 +1810,14 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do
|> Enum.map(& &1.id) |> Enum.map(& &1.id)
assert activities_ids == [] assert activities_ids == []
activities_ids =
%{}
|> Map.put(:reply_visibility, "self")
|> Map.put(:reply_filtering_user, nil)
|> ActivityPub.fetch_public_activities()
assert activities_ids == []
end end
test "home timeline", %{users: %{u1: user}} do test "home timeline", %{users: %{u1: user}} do