Revert "mandate published on notes"

This reverts commit e49b583147.
This commit is contained in:
FloatingGhost 2022-12-09 20:59:26 +00:00
parent e49b583147
commit 739ed14f54
5 changed files with 2 additions and 55 deletions

View file

@ -23,7 +23,6 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- Follow/Block/Mute imports now spin off into *n* tasks to avoid the oban timeout - Follow/Block/Mute imports now spin off into *n* tasks to avoid the oban timeout
- Transient activities recieved from remote servers are no longer persisted in the database - Transient activities recieved from remote servers are no longer persisted in the database
- Overhauled static-fe view for logged-out users - Overhauled static-fe view for logged-out users
- `published` is now a mandatory field in Note objects
## Removed ## Removed
- FollowBotPolicy - FollowBotPolicy

View file

@ -60,8 +60,7 @@ def run(["index"]) do
where: where:
fragment("data->>'type' = 'Note'") and fragment("data->>'type' = 'Note'") and
(fragment("data->'to' \\? ?", ^Pleroma.Constants.as_public()) or (fragment("data->'to' \\? ?", ^Pleroma.Constants.as_public()) or
fragment("data->'cc' \\? ?", ^Pleroma.Constants.as_public())) and fragment("data->'cc' \\? ?", ^Pleroma.Constants.as_public())),
fragment("data->>'published' IS NOT NULL"),
order_by: [desc: fragment("data->'published'")] order_by: [desc: fragment("data->'published'")]
) )

View file

@ -172,7 +172,7 @@ def changeset(struct, data) do
defp validate_data(data_cng) do defp validate_data(data_cng) do
data_cng data_cng
|> validate_inclusion(:type, ["Article", "Note", "Page"]) |> validate_inclusion(:type, ["Article", "Note", "Page"])
|> validate_required([:id, :actor, :attributedTo, :type, :context, :published]) |> validate_required([:id, :actor, :attributedTo, :type, :context])
|> CommonValidations.validate_any_presence([:cc, :to]) |> CommonValidations.validate_any_presence([:cc, :to])
|> CommonValidations.validate_fields_match([:actor, :attributedTo]) |> CommonValidations.validate_fields_match([:actor, :attributedTo])
|> CommonValidations.validate_actor_presence() |> CommonValidations.validate_actor_presence()

View file

@ -1,44 +0,0 @@
{
"@context" : [
"https://www.w3.org/ns/activitystreams",
"https://w3id.org/security/v1",
{
"Emoji" : "toot:Emoji",
"Hashtag" : "as:Hashtag",
"atomUri" : "ostatus:atomUri",
"conversation" : "ostatus:conversation",
"inReplyToAtomUri" : "ostatus:inReplyToAtomUri",
"manuallyApprovesFollowers" : "as:manuallyApprovesFollowers",
"movedTo" : "as:movedTo",
"ostatus" : "http://ostatus.org#",
"sensitive" : "as:sensitive",
"toot" : "http://joinmastodon.org/ns#"
}
],
"atomUri" : "http://mastodon.example.org/users/admin/statuses/99541947525187367",
"attachment" : [
{
"mediaType" : "image/jpeg",
"name" : null,
"type" : "Document",
"url" : "http://mastodon.example.org/system/media_attachments/files/000/000/002/original/334ce029e7bfb920.jpg"
}
],
"attributedTo" : "http://mastodon.example.org/users/admin",
"cc" : [
"http://mastodon.example.org/users/admin/followers"
],
"content" : "<p>yeah.</p>",
"conversation" : "tag:mastodon.example.org,2018-02-17:objectId=59:objectType=Conversation",
"id" : "http://mastodon.example.org/users/admin/statuses/99541947525187367",
"inReplyTo" : null,
"inReplyToAtomUri" : null,
"sensitive" : false,
"summary" : null,
"tag" : [],
"to" : [
"https://www.w3.org/ns/activitystreams#Public"
],
"type" : "Note",
"url" : "http://mastodon.example.org/@admin/99541947525187367"
}

View file

@ -28,7 +28,6 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidators.ArticleNotePageValidatorTest
"to" => [user.follower_address], "to" => [user.follower_address],
"cc" => [], "cc" => [],
"content" => "Hellow this is content.", "content" => "Hellow this is content.",
"published" => "2021-01-01T00:00:00Z",
"context" => "xxx", "context" => "xxx",
"summary" => "a post" "summary" => "a post"
} }
@ -66,12 +65,6 @@ test "a note with a remote replies collection should validate", _ do
ArticleNotePageValidator.cast_and_validate(note) ArticleNotePageValidator.cast_and_validate(note)
end end
test "a note without a published field should not validate", _ do
insert(:user, %{ap_id: "http://mastodon.example.org/users/admin"})
note = Jason.decode!(File.read!("test/fixtures/mastodon/note-without-published.json"))
%{valid?: false} = ArticleNotePageValidator.cast_and_validate(note)
end
test "a note with an attachment should work", _ do test "a note with an attachment should work", _ do
insert(:user, %{ap_id: "https://owncast.localhost.localdomain/federation/user/streamer"}) insert(:user, %{ap_id: "https://owncast.localhost.localdomain/federation/user/streamer"})