Commit graph

1885 commits

Author SHA1 Message Date
Ivan Tashkinov 6f5f7af607 [#1973] Fixed accounts rendering in GET /api/v1/pleroma/chats with truish :restrict_unauthenticated.
Made `Pleroma.Web.MastodonAPI.AccountView.render("show.json", _)` demand :for or :force option in order to prevent incorrect rendering of empty map instead of expected user representation with truish :restrict_unauthenticated setting.
2020-07-22 19:06:00 +03:00
Alex Gleason afa8b469ed
Allow restricting public timeline by instance 2020-07-18 19:35:07 -05:00
rinpatch 0fe36b311c Merge branch 'features/mrf-reasons' into 'develop'
Add rejection reason to our MRFs

See merge request pleroma/pleroma!2759
2020-07-15 14:00:22 +00:00
Haelwenn (lanodan) Monnier e4beff90f5
Create Question: Add context field to create 2020-07-15 12:32:43 +02:00
Haelwenn (lanodan) Monnier bfe2dafd39
{Answer,Question}Validator: Keep both actor and attributedTo for now but sync them 2020-07-15 12:32:42 +02:00
Haelwenn (lanodan) Monnier c19bdc811e
Fix attachments in polls 2020-07-15 12:32:42 +02:00
Haelwenn (lanodan) Monnier d713930ea7
Fixup for EctoType module move 2020-07-15 11:40:24 +02:00
Haelwenn (lanodan) Monnier 435a65b976
QuestionValidator: Use AttachmentValidator 2020-07-15 11:40:24 +02:00
Haelwenn (lanodan) Monnier fe6924d00d
CreateGenericValidator: add expires_at 2020-07-15 11:40:24 +02:00
Haelwenn (lanodan) Monnier 82895a4012
SideEffects: port ones from ActivityPub.do_create and ActivityPub.insert 2020-07-15 11:40:23 +02:00
Haelwenn (lanodan) Monnier 4f70fd4105
question_validator: remove conversation field 2020-07-15 11:39:56 +02:00
Haelwenn (lanodan) Monnier 173f69c854
question_validator: fix for mastodon poll expiration
Mastodon activities do not have a "closed" field, this could be seen on
https://pouet.it/users/lanodan_tmp/statuses/104345126997708380
which runs Mastodon 3.1.4 (SDF runs 3.1.2)
2020-07-15 11:39:56 +02:00
Haelwenn (lanodan) Monnier 47ba796f41
create_question_validator: remove validate_recipients_match 2020-07-15 11:39:55 +02:00
Haelwenn (lanodan) Monnier 10bd08ef07
transmogrifier_test: test date, anyOf and oneOf completely 2020-07-15 11:39:54 +02:00
Haelwenn (lanodan) Monnier 89a2433154
QuestionOptionsValidator: inline schema for replies 2020-07-15 11:39:54 +02:00
Haelwenn (lanodan) Monnier c5efaf6b00
AnswerValidator: Create 2020-07-15 11:39:54 +02:00
Haelwenn (lanodan) Monnier 7bcd7a9595
QuestionValidator: Create 2020-07-15 11:39:53 +02:00
Maksim Pechnikov 1dd767b8c7 Include port in host for signatures 2020-07-14 21:44:08 +03:00
feld 246f49d685 Merge branch '1916-transmogrifier-skipping-oddities-in-address-fields' into 'develop'
Transmogrifier: filtering weirdness in address fields

Closes #1916

See merge request pleroma/pleroma!2762
2020-07-14 15:17:25 +00:00
Haelwenn (lanodan) Monnier 858d9fc7e8
MRF Policies: Return a {:reject, reason} instead of {:reject, nil} 2020-07-14 11:04:16 +02:00
= b221b640a2 Transmogrifier: filtering weirdness in address fields 2020-07-13 22:43:21 +03:00
Haelwenn (lanodan) Monnier ce243b107f
Use Logger.info for {:reject, reason} 2020-07-13 15:26:31 +02:00
Haelwenn (lanodan) Monnier 2aac92e9e0
Transmogrifier.fix_in_reply_to/2: Use warn for non-fatal fail to get replied-to post 2020-07-13 15:26:30 +02:00
lain 93e494ec21 ActivityPub: Don't rename a clashing nickname with the same ap id. 2020-07-10 14:10:44 +02:00
lain b39eb6ecc5 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into chat-federation-information 2020-07-10 12:26:53 +02:00
Mark Felder d23804f191 Use the Pleroma.Config alias 2020-07-09 10:53:51 -05:00
Haelwenn 68036f5a3b Merge branch 'follow-pipeline' into 'develop'
Handle `Follow` activities with the pipeline

See merge request pleroma/pleroma!2734
2020-07-09 10:32:24 +00:00
lain 00e54f8fe7 ActivityPub: Remove follow and fix issues. 2020-07-08 17:07:24 +02:00
lain 9dda8b5427 CommonAPI: Switch to pipeline for following. 2020-07-08 15:40:56 +02:00
lain 172f4aff8e Transmogrifier: Move following to the pipeline. 2020-07-08 14:30:53 +02:00
lain 7d0e2b3fdd Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into follow-pipeline 2020-07-08 13:23:07 +02:00
lain cdc153db31 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into issue/1880 2020-07-08 13:21:58 +02:00
Maksim Pechnikov e341f81785 fixed delete Like activity in remove user 2020-07-08 09:06:23 +03:00
lain 9ad305209a Merge branch 'bugfix/peertube-videos' into 'develop'
Fix getting videos from peertube

See merge request pleroma/pleroma!2728
2020-07-07 09:14:50 +00:00
Haelwenn (lanodan) Monnier fbb9743a70
Fix getting videos from peertube 2020-07-07 09:38:38 +02:00
lain a6a12b241f FollowValidator: Add basic validation. 2020-07-06 15:57:19 +02:00
lain 208baf157a ActivityPub: Add new 'capabilities' to user. 2020-07-06 11:38:40 +02:00
Sergey Suprunenko 8277b29790
Restrict thread statuses that contain user's irreversible filters 2020-07-06 09:30:39 +03:00
Sergey Suprunenko 4a8c26654e
Restrict statuses that contain user's irreversible filters 2020-07-06 09:28:21 +03:00
lain 4a7b89e372 ChatMessageValidator: Additional validation. 2020-07-03 15:13:27 +02:00
lain 5c0bf4c472 ActivityPub: Ingest information about chat acceptance. 2020-07-03 13:58:34 +02:00
lain 26a7cc3f00 UserView: Add acceptsChatMessages field 2020-07-03 13:38:59 +02:00
rinpatch 4c044f6225 Merge branch 'fetcher-fixes' into 'develop'
Don't fail fetching when the user in a replied-to message can't be fetched.

See merge request pleroma/pleroma!2711
2020-07-02 10:17:51 +00:00
lain bad08f34ca Credo fixes. 2020-07-02 09:57:31 +02:00
lain 61fe94d698 SideEffects: Refactor. 2020-07-02 09:33:50 +02:00
lain fedfe8f7d6 ActivityPub: Handle clashing nicknames for the same ap id
If we get a new user (identified by ap_id) that would have the same
nickname as an existing user, give the existing user a nickname that
is prepended with the user id, as this will never clash.

This can happen when a user switches server software and that soft-
ware generates ap ids in a different way.
2020-07-01 12:26:07 +02:00
lain ce92e6e5ce Fetcher: Work when we can't get the OP. 2020-07-01 11:48:51 +02:00
lain 577da132da Merge branch '1031-parent-visible' into 'develop'
Resolve "Add `pleroma.parent_visible` to the status view"

Closes #1031

See merge request pleroma/pleroma!2679
2020-06-29 08:39:51 +00:00
Haelwenn bf1c5e255a Merge branch 'block-handling' into 'develop'
Handle blocks with the pipeline

See merge request pleroma/pleroma!2685
2020-06-26 17:41:00 +00:00
lain 15a8b70318 User: Don't unfollow on block when the relevant setting is set. 2020-06-26 12:06:00 +02:00
lain c3383d4fab BlockValidator: Restore old behavior for incoming blocks. 2020-06-26 11:58:40 +02:00
lain 04abee782b AntiSpamLinkPolicy: Exempt local users. 2020-06-25 12:40:39 +02:00
lain 84f9ca1956 Blocking: Don't federate if the options is set. 2020-06-25 12:03:14 +02:00
lain 44bb7cfccd ActivityPub: Remove block. 2020-06-25 11:51:33 +02:00
lain e38293c8f1 Transmogrifier: Switch to pipeline for Blocks. 2020-06-25 11:33:54 +02:00
lain 89e5b2046b ObjectValidator: Basic Block support. 2020-06-25 11:13:35 +02:00
lain 35f6770436 StatusView: Add pleroma.parent_visible 2020-06-24 13:29:08 +02:00
lain 98af7b59e4 Merge branch 'update-validator' into 'develop'
Update validator

See merge request pleroma/pleroma!2668
2020-06-23 18:10:33 +00:00
Haelwenn c7d69e9256 Merge branch 'feature/1631-redesign-mrf-configuration' into 'develop'
Moving mrf settings from instance to separate mrf group

Closes #1631

See merge request pleroma/pleroma!2320
2020-06-23 16:38:27 +00:00
lain aee815b478 ObjectValidator: Clarify type of object. 2020-06-23 12:37:05 +02:00
lain 2c603f2009 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into update-validator 2020-06-23 10:17:12 +02:00
Haelwenn (lanodan) Monnier c116b6d6d6
ActivityPubController: Update upload_media @doc
Small cherry-pick from https://git.pleroma.social/pleroma/pleroma/-/merge_requests/1810
2020-06-23 04:42:44 +02:00
lain e785cd5cae ActivityPub: Remove update and switch to pipeline. 2020-06-22 13:59:45 +02:00
rinpatch c75ba63bef Merge branch '1865-media-only' into 'develop'
Resolve "/api/v1/accounts/:id/statuses?only_media=true returns media that is not owned"

Closes #1865

See merge request pleroma/pleroma!2650
2020-06-22 11:34:07 +00:00
lain 9438f83f83 Transmogrifier: Handle Update with the pipeline. 2020-06-22 13:16:05 +02:00
lain 31a4d42ce0 SideEffects: Handle user updating. 2020-06-22 13:15:37 +02:00
lain 35e9282ffd HellthreadPolicy: Restrict to Notes and Articles. 2020-06-22 10:35:11 +02:00
lain 7d542450b1 Merge branch 'develop' into '1865-media-only'
# Conflicts:
#   CHANGELOG.md
2020-06-20 09:33:18 +00:00
Haelwenn (lanodan) Monnier 3d4cfc9c5f
Stop filling conversation field on incoming objects (legacy, unused)
conversation field is still set for outgoing federation for compatibility.
2020-06-20 00:08:26 +02:00
lain 75670a99e4 UpdateValidator: Only allow updates from the user themselves. 2020-06-19 16:38:57 +02:00
lain abdb540d45 ObjectValidators: Add basic UpdateValidator. 2020-06-19 15:30:30 +02:00
lain d772361e62 Merge branch 'fix/1787-mogrify-args' into 'develop'
Moving custom ecto types in context folders

See merge request pleroma/pleroma!2652
2020-06-17 15:53:24 +00:00
Alexander Strizhakov a77b0388f4
credo fix 2020-06-17 10:31:06 +03:00
Alexander Strizhakov ed189568f3
moving mrf settings from instance to separate group 2020-06-16 18:32:18 +03:00
Alexander Strizhakov 3c2cee33ad
moving custom ecto types in context folders 2020-06-16 17:50:33 +03:00
href f124f68205 Switch from gen_magic to majic, use Majic.Plug, remove Pleroma.MIME 2020-06-16 15:27:27 +02:00
lain 1eb6cedaad ActivityPub: When restricting to media posts, only show 'Creates'. 2020-06-16 13:08:27 +02:00
lain b7df7436c8 Conversations: Return last dm for conversation, not last message. 2020-06-15 12:27:13 +02:00
rinpatch 271ea5068f Merge branch '1851-favorites-pagination' into 'develop'
StatusController: Correctly paginate favorites.

Closes #1851

See merge request pleroma/pleroma!2636
2020-06-13 17:20:43 +00:00
href cb7be6eef2 Remove use of atoms in MRF.UserAllowListPolicy 2020-06-13 12:08:46 +03:00
Haelwenn 4115701f71 Merge branch 'recipients-experiments' into 'develop'
ActivityPub: Don't show announces of your own objects in timeline.

See merge request pleroma/pleroma!2637
2020-06-12 16:57:13 +00:00
lain e557265a03 Merge branch 'global-status-expiration' into 'develop'
Global status expiration

See merge request pleroma/pleroma!2208
2020-06-12 14:14:09 +00:00
lain 9e411372d0 ActivityPub: Don't show announces of your own objects in timeline. 2020-06-10 12:10:09 +02:00
lain 063e6b9841 StatusController: Correctly paginate favorites.
Favorites were paginating wrongly, because the pagination headers
where using the id of the id of the `Create` activity, while the
ordering was by the id of the `Like` activity. This isn't easy to
notice in most cases, as they usually have a similar order because
people tend to favorite posts as they come in. This commit adds a
way to give different pagination ids to the pagination helper, so
we can paginate correctly in cases like this.
2020-06-09 10:53:40 +02:00
lain 064c4f86f3 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-06-09 09:36:07 +02:00
Haelwenn (lanodan) Monnier fe1cb56fdc
transmogrifier: MIME.valid?/1 for mediaType
No issues with the rest of the network yet but this makes sure it will work
once https://git.pleroma.social/pleroma/pleroma/-/merge_requests/2429
is merged.
2020-06-08 21:04:30 +02:00
Egor Kislitsyn d44843e677
Restrict ActivityExpirationPolicy to Notes only 2020-06-08 17:56:34 +04:00
Egor Kislitsyn da22119c2f
Merge branch 'develop' into global-status-expiration 2020-06-08 17:21:47 +04:00
lain 3b5282bef2 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-06-08 11:19:18 +02:00
lain 7d66dd180a Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-06-08 10:18:10 +02:00
lain 2cdaac4330 SideEffects: Move streaming of chats to after the transaction. 2020-06-07 14:52:56 +02:00
lain 0365053c8d AttachmentValidator: Check if the mime type is valid. 2020-06-07 09:19:00 +02:00
lain ca0e6e702b ChatMessageReference -> Chat.MessageReference 2020-06-06 11:51:10 +02:00
Egor Kislitsyn 167812a3f2
Fix pagination 2020-06-05 23:18:29 +04:00
Egor Kislitsyn b02df1803e
Merge remote-tracking branch 'origin/develop' into activity-pub-use-atoms-as-keys 2020-06-05 23:15:10 +04:00
lain f24d2f714f Credo fixes 2020-06-05 17:18:48 +02:00
lain a8ca030d85 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-06-05 16:53:56 +02:00
Haelwenn d74985af23 Merge branch 'features/apc2s-pagination' into 'develop'
Fix AP C2S pagination

Closes #866 and #751

See merge request pleroma/pleroma!2491
2020-06-05 14:52:09 +00:00
Haelwenn 54bae06b4f Create Pleroma.Maps.put_if_present(map, key, value, value_fun // &{:ok, &1})
Unifies all the similar functions to one and simplify some blocks with it.
2020-06-05 14:48:02 +00:00
lain 115d08a754 Pipeline: Add a side effects step after the transaction finishes
This is to run things like streaming notifications out, which will
sometimes need data that is created by the transaction, but is
streamed out asynchronously.
2020-06-05 16:47:02 +02:00
lain 65689ba9bd If Credo fixes is so good, why is there no Credo fixes 2? 2020-06-05 13:10:48 +02:00
lain f3ea6ee2c8 Credo fixes. 2020-06-05 12:45:25 +02:00
lain 0efa8aa0b9 Transmogrifier: For follows, create notifications last.
As the notification type changes depending on the follow state,
the notification should not be created and streamed out before the
state settles. For this reason, the notification creation has been
delayed until it's clear if the user has been followed or not.

This is a bit hacky but it will be properly rewritten using the
pipeline soon.
2020-06-05 12:26:07 +02:00
lain cc8a7dc205 SideEffects / ChatView: Add an unread cache.
This is to prevent wrong values in the stream.
2020-06-05 12:01:33 +02:00
Egor Kislitsyn 317e2b8d61
Use atoms as keys in ActivityPub.fetch_* functions options 2020-06-04 21:36:26 +04:00
lain 56dfa0e0fb Transmogrifier: Update notification after accepting. 2020-06-04 19:22:49 +02:00
lain 00748e9650 ChatMessageReferences: Change seen -> unread 2020-06-04 17:14:42 +02:00
Egor Kislitsyn c16315d055
Add OpenAPI spec for AdminAPI.ReportController 2020-06-03 19:17:05 +04:00
lain fb4ae9c720 Streamer, SideEffects: Stream out ChatMessageReferences
Saves us a few calles to fetch things from the DB that we already
have.
2020-06-03 16:45:04 +02:00
lain 7f5c5b11a5 Chats: Remove unread from the db, calculate from unseen messages. 2020-06-03 14:26:50 +02:00
lain aa22fce8f4 ChatMessageReference: Introduce and switch in chat controller. 2020-06-03 12:30:12 +02:00
lain 879304dcd9 Merge branch 'replies-domain-block' into 'develop'
Replies domain block

Closes #1650

See merge request pleroma/pleroma!2622
2020-06-02 14:14:23 +00:00
lain 904295d53b Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-06-02 14:28:01 +02:00
lain 805ab86933 Notifications: Make notifications save their type. 2020-06-02 13:24:34 +02:00
rinpatch 165a4b2a69 Do not include activities of invisible users unless explicitly requested
Closes #1833
2020-06-02 13:34:12 +03:00
Alexander Strizhakov 19f468c5bc
replies filtering for blocked domains 2020-06-02 09:00:10 +03:00
Alexander Strizhakov 7e6ec778d9
exclude replies on blocked domains 2020-06-01 21:17:32 +03:00
Egor Kislitsyn a7627bdc7a
Merge remote-tracking branch 'origin/develop' into global-status-expiration 2020-06-01 15:48:51 +04:00
lain 6ff079ca9f Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-30 12:31:12 +02:00
lain 2c9465cc51 SafeText: Let through basic html. 2020-05-30 12:17:18 +02:00
Haelwenn (lanodan) Monnier a43b435c0a
AP C2S: allow limit & order on outbox & read_inbox 2020-05-29 16:14:45 +02:00
Haelwenn (lanodan) Monnier b3b367b894
Bugfix: Reuse Controller.Helper pagination for APC2S 2020-05-29 16:14:45 +02:00
lain 3898dd69a6 SideEffects: Ensure a chat is present before streaming something out. 2020-05-29 16:05:02 +02:00
lain 863c02b25d SideEffects: Stream out chat messages. 2020-05-29 15:44:03 +02:00
lain 9848978109 Merge branch 'fix-relay-repeat-notification' into 'develop'
Fix relay repeat notification

See merge request pleroma/pleroma!2590
2020-05-29 10:42:49 +00:00
lain af6d01ec93 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-29 12:36:17 +02:00
kPherox 228ff3760e
Use User.is_internal_user? instead 2020-05-29 19:07:05 +09:00
kPherox 9df5b1e6ae
Don't make relay announce notification 2020-05-29 19:06:38 +09:00
kPherox 48fd9be65a
Exclude post actor from to of relay announce 2020-05-27 23:51:15 +09:00
rinpatch d35be02e70 Merge branch 'refactor-add-mention-step-one' into 'develop'
Fix ObjectView calling into strange functions

Closes #1807

See merge request pleroma/pleroma!2580
2020-05-27 14:17:12 +00:00
lain 7e13200869 ActivityPub: Change ordering to nulls last in favorites query
This makes it use our existing index and speeds up the query.
2020-05-27 09:46:12 +02:00
Ivan Tashkinov d7a57004ef [#1501] Made user feed contain public and unlisted activities. 2020-05-25 23:27:47 +03:00
lain 6bd7070b00 Transmogrifier: Use a simpler way to get mentions. 2020-05-25 15:08:43 +02:00
lain ee35bb5ac2 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-25 13:57:27 +02:00
lain 355aa3bdc7 ActivityPubController: Add Mastodon activity compat route. 2020-05-22 17:06:12 +02:00
lain ca755f9a73 ActivityPubController: Add Mastodon compatibility route. 2020-05-22 16:15:29 +02:00
Haelwenn 7b02bfca51 Merge branch 'announce-validator' into 'develop'
Announce validator

See merge request pleroma/pleroma!2567
2020-05-22 05:47:53 +00:00
lain 578ed3a37f Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-21 15:35:13 +02:00
lain cdc6ba8d7b AnnounceValidator: Check for announcability 2020-05-21 13:58:18 +02:00
lain c76267afb9 Credo fixes. 2020-05-21 13:31:52 +02:00
lain 23e248694d Announcements: Fix all tests. 2020-05-21 13:16:21 +02:00
lain d9d425708e SideEffects: Builed out Announce effects. 2020-05-21 12:43:09 +02:00
lain 39031f4860 Pipeline: Don't federate if federation is disabled. 2020-05-20 16:36:55 +02:00
lain e42bc5f557 Announcements: Handle through common pipeline. 2020-05-20 15:44:37 +02:00
lain d19c716770 AttachmentValidator: Handle empty mediatypes 2020-05-18 20:17:28 +02:00
lain be4db41d71 ChatMessageValidator: Allow one message in an array, too. 2020-05-18 18:45:33 +02:00
lain 0d5bce018d AnnounceValidator: Validate for existing announce 2020-05-18 16:54:10 +02:00
lain 17a8342c1e ObjectValidators: Add basic Announce validator. 2020-05-18 16:45:11 +02:00
lain 7d381b16b7 Transmogrifier Test: Extract Announce handling. 2020-05-18 14:48:37 +02:00
lain baf051a59e SideEffects: Don't update unread count for actor in chatmessages. 2020-05-17 12:22:26 +02:00
Haelwenn (lanodan) Monnier e688d4ee69
MRF.StealEmojiPolicy: New Policy
Inspired by https://git.pleroma.social/moonman/emoji-stealer-mrf/-/blob/master/steal_emoji_policy.ex
2020-05-14 09:59:56 +02:00
lain 0f0acc740d Chat: Allow posting without content if an attachment is present. 2020-05-13 15:31:28 +02:00
lain 3cff4e24cd Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-13 12:44:16 +02:00
rinpatch 24c8c13640 Merge branch '1757-blocks-breaking-on-disabled-outgoing-blocks' into 'develop'
ActivityPub: Fix non-federating blocks.

Closes #1757

See merge request pleroma/pleroma!2514
2020-05-12 16:45:46 +00:00
lain b5aa204eb8 ChatController: Support deletion of chat messages. 2020-05-12 13:13:03 +02:00
lain ca31af473c Transmogrifier: On incoming follow accept, update follow counts. 2020-05-12 12:29:37 +02:00
lain d0ba1844b0 ActivityPub: Fix non-federating blocks. 2020-05-12 10:52:46 +02:00
lain f28ed36b4d Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-11 17:14:58 +02:00
lain 5367a00257 Deletion: Handle the case of pruned objects. 2020-05-11 15:06:23 +02:00
lain 03529f6a05 Transmogrifier: Don't modify attachments for chats. 2020-05-08 18:26:35 +02:00
lain d0bf8cfb8f Credo fixes. 2020-05-08 14:11:58 +02:00
lain 7637ef4203 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-08 13:13:37 +02:00
lain fbcc53760e Merge branch 'feature/emojireactvalidator' into 'develop'
Move EmojiReacts to the Pipeline.

See merge request pleroma/pleroma!2473
2020-05-08 10:41:41 +00:00
lain 6acbe45eb2 Builder: Extract common features of likes and reactions. 2020-05-08 11:30:31 +02:00
Haelwenn 769d95644d Merge branch 'feature/restrict-c2s' into 'develop'
AP C2S: Restrict creation to `Note`s for now.

See merge request pleroma/pleroma!2472
2020-05-07 22:29:16 +00:00
lain ef55d24054 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/emojireactvalidator 2020-05-07 18:53:34 +02:00
lain d11eea62b1 Credo fixes 2020-05-07 15:09:37 +02:00
lain fb2d284d28 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-07 15:05:40 +02:00
lain 7ac0cffb34 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/emojireactvalidator 2020-05-07 15:03:12 +02:00
lain 788b7e7bbd Merge fixes. 2020-05-07 14:52:37 +02:00
lain f0c22df226 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/undo-validator-reduced 2020-05-07 14:45:20 +02:00
href 9491ba3e49 Streamer rework 2020-05-07 09:13:32 +00:00
lain 1748e26948 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-06 17:36:08 +02:00
rinpatch 473b0d9f3d Merge branch 'feature/delete-validator' into 'develop'
Move deletions to the common pipeline

Closes #1497

See merge request pleroma/pleroma!2441
2020-05-06 14:32:58 +00:00
lain fc9d0b6eec Credo fixes. 2020-05-06 16:31:21 +02:00
lain 20baa2eaf0 ChatMessages: Add attachments. 2020-05-06 16:12:36 +02:00
lain 205313e541 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-06 11:44:30 +02:00
lain 07e7c80bc9 Merge branch 'plug-if-unless-func-options-refactoring' into 'develop'
Refactoring of :if_func / :unless_func plug options

See merge request pleroma/pleroma!2446
2020-05-06 09:14:05 +00:00
lain df846eda71 Merge branch 'bugfix/sensitive_object' into 'develop'
Transmogrifier.set_sensitive/1: Keep sensitive set to true

Closes #954

See merge request pleroma/pleroma!2470
2020-05-06 09:04:13 +00:00
lain 92caae5923 Undoing: Move undoing blocks to the pipeline everywhere. 2020-05-05 18:02:24 +02:00
lain a3bb2e5474 Undoing: Move undoing announcements to the pipeline everywhere. 2020-05-05 16:42:34 +02:00
lain b34debe615 Undoing: Move undoing reactions to the pipeline everywhere. 2020-05-05 16:17:09 +02:00
lain a3071f0231 Undoing: Move undoing likes to the pipeline everywhere. 2020-05-05 15:08:41 +02:00
lain f1da8882f9 UndoValidator: Add UndoValidator. 2020-05-05 14:17:47 +02:00
Egor Kislitsyn decaa64f75
Merge branch 'develop' into global-status-expiration 2020-05-05 14:28:54 +04:00
lain db55dc9445 ActivityPub: Remove react_with_emoji. 2020-05-05 12:28:28 +02:00
lain ad771546d8 Transmogrifier: Move emoji reactions to common pipeline. 2020-05-05 12:11:46 +02:00
lain f21f538293 LikeValidator: Add defaults for recipients back in. 2020-05-05 10:38:59 +02:00
lain c297667f16 Merge branch 'fix/issue-1729' into 'develop'
Only update follower/following stats for actor types of users and bots.

Closes #1565 and #1729

See merge request pleroma/pleroma!2464
2020-05-05 08:21:39 +00:00
lain 2cb3f8a8cf Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/delete-validator 2020-05-05 10:19:01 +02:00
lain 6400998820 AP C2S: Restrict creation to Notes for now. 2020-05-05 10:12:37 +02:00
Haelwenn (lanodan) Monnier bf0e41f0da
Transmogrifier.set_sensitive/1: Keep sensitive set to true 2020-05-04 23:36:00 +02:00
lain c23cb8d37a Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-04 19:24:04 +02:00
lain 3559dd1085 Transmogrifier: Rely on LikeValidator. 2020-05-04 17:18:38 +02:00
lain 0f9bed022f LikeValidator: Fix up context. 2020-05-04 17:18:17 +02:00
lain e03c301ebe LikeValidator: Fix up missing recipients. 2020-05-04 17:08:31 +02:00
lain 13ab8defc0 Pipeline: Move transctioning to common pipeline. 2020-05-04 14:34:19 +02:00
lain ec24c70db8 ActivityPub: Don't fetch Application follower counts. 2020-05-04 14:22:54 +02:00
lain c40afe5ba0 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-04 10:43:20 +02:00
lain 9249742f13 Types.Recipients: Simplify reducer. 2020-05-03 15:28:24 +02:00
lain a35b76431c Credo fixes. 2020-05-03 14:58:24 +02:00
lain 1974d0cc42 DeleteValidator: The deleted activity id is an object id 2020-05-03 13:02:57 +02:00
lain 6fb96f64c1 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/delete-validator 2020-05-03 12:55:29 +02:00
lain 4dfc617cdf Transmogrifier: Don't fetch actor that's guaranteed to be there. 2020-05-03 12:51:28 +02:00
Lain Soykaf f20a1a27ef DeleteValidator: Improve code readability 2020-05-03 12:19:01 +02:00
Mark Felder 370e313e2d Only update follower/following stats for actor types of users and bots. 2020-05-02 13:28:10 -05:00
Ivan Tashkinov 2d07ed7747 [#1732] Made AP C2S :followers and :following endpoints serve on no auth
(as for related :api pipeline endpoints).
2020-05-02 18:28:04 +03:00
lain 44fbd09709 Merge branch 'issue/1577' into 'develop'
[#1577] fix mediaType of object

See merge request pleroma/pleroma!2372
2020-05-01 12:38:46 +00:00
lain 5f42e6629d DeleteValidator: Only allow deletion of certain types. 2020-05-01 13:34:47 +02:00
lain 32b8386ede DeleteValidator: Don't federate local deletions of remote objects.
Closes #1497
2020-04-30 21:23:18 +02:00
lain 999d639873 ActivityPub: Remove delete function.
This is handled by the common pipeline now.
2020-04-30 20:13:47 +02:00
lain 5da08c2b73 SideEffects: Fix comment 2020-04-30 19:53:30 +02:00
lain 500f5ec14e SideEffects: On deletion, reduce the reply count cache 2020-04-30 19:47:13 +02:00
lain 60db58a1c6 Credo fixes. 2020-04-30 18:38:37 +02:00
lain ab60ee1776 SideEffects: On deletion, reduce the User note count. 2020-04-30 18:19:39 +02:00
lain c832d96fc9 SideEffects: Stream out deletes. 2020-04-30 17:58:09 +02:00
lain 4500fdc04c DeleteValidator: Add internal helper field after validation. 2020-04-30 17:53:02 +02:00
Ivan Tashkinov 2c4844237f Refactoring of :if_func / :unless_func plug options (general availability). Added tests for Pleroma.Web.Plug. 2020-04-30 18:19:51 +03:00
lain 14c6672193 AP C2S: Use common pipelin for deletes. 2020-04-30 16:49:41 +02:00
lain fdd8e7f276 CommonAPI: Use common pipeline for deletions. 2020-04-30 16:15:38 +02:00
lain 417eed4a2b SideEffects: Handle deletions. 2020-04-30 15:57:27 +02:00
lain 1fb383f368 DeleteValidator: Deleting a user is valid. 2020-04-30 15:42:30 +02:00
lain 4dc5302f45 Transmogrifier: Handle incoming deletes for non-user objects. 2020-04-30 15:26:23 +02:00
lain db184a8eb4 DeleteValidator: Mastodon sends unaddressed deletes. 2020-04-30 14:37:14 +02:00
lain 42ce7c5164 ObjectValidator: Add actor fetcher. 2020-04-30 14:13:08 +02:00
lain 64bb72f98a Typo fix. 2020-04-30 13:57:47 +02:00
lain 589ce1e96b Apply suggestion to lib/pleroma/web/activity_pub/transmogrifier.ex 2020-04-29 19:47:16 +00:00
lain 503de4b8df ObjectValidator: Add validation for Deletes. 2020-04-29 19:09:51 +02:00
lain 78c864cbee LikeValidator: Use Recipients Type. 2020-04-29 19:08:36 +02:00
lain b8056e69e0 Object Validator Types: Add Recipients. 2020-04-29 19:08:08 +02:00
lain 20587aa931 Chat message creation: Check actor. 2020-04-29 14:53:53 +02:00
lain a88734a0a2 Transmogrifier: Fetch missing actors for chatmessages. 2020-04-29 14:25:33 +02:00
lain 53e3063bd0 Transmogrifier: Remove ChatMessageHandling module. 2020-04-29 13:52:23 +02:00
lain e055b8d203 Pipeline: Always run common_pipeline in a transaction for now. 2020-04-29 13:45:50 +02:00
lain dedffd100c Pipeline: Unify, refactor, DRY. 2020-04-28 17:29:54 +02:00
lain abd0928229 CreateChatMessageValidator: Validate object existence 2020-04-28 16:45:28 +02:00
lain 6aa116eca7 Create activity handling: Flip it and reverse it
Both objects and create activities will now go through the common
pipeline and will be validated. Objects are now created as a side
effect of the Create activity, rolling back a transaction if it's
not possible to insert the object.
2020-04-28 16:26:19 +02:00
lain b5dc59c8fa Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-04-28 14:16:21 +02:00
lain f8e56d4271 SideEffects: Use Object.normalize to get the object. 2020-04-28 13:43:58 +02:00
lain 906cf53ab9 Recipient Type: Cast all elements as ObjectIDs. 2020-04-28 13:38:02 +02:00
Egor Kislitsyn 764b4f95a8
Merge branch 'develop' into global-status-expiration 2020-04-28 14:13:53 +04:00
Maksim Pechnikov ea5142b94b convert markdown content to html 2020-04-28 09:32:43 +03:00
Egor Kislitsyn f1ca917bb0
Merge branch 'develop' into openapi/account 2020-04-27 14:33:00 +04:00
lain c86143ed73 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-04-27 12:07:08 +02:00
rinpatch 8addbd948c Merge branch 'bugfix/announce-race-condition' into 'develop'
Announcements: Prevent race condition.

See merge request pleroma/pleroma!2423
2020-04-24 16:58:24 +00:00
lain d89cd0a197 Reply Filtering: Refactor. 2020-04-24 18:25:26 +02:00
Egor Kislitsyn c56c0a3d23
Merge branch 'develop' into global-status-expiration 2020-04-24 18:37:58 +04:00
Alexander 6e625a427c
reply filtering 2020-04-24 15:43:49 +03:00
lain cb12585098 Announcements: Prevent race condition. 2020-04-24 14:37:53 +02:00
lain 1df6af2a4c Credo fixes. 2020-04-24 13:59:48 +02:00
lain bbf8554c97 ActivitPub: Remove like function.
We don't need another way to build likes.
2020-04-24 13:48:13 +02:00
lain 1e28d34592 ChatMessage: Correctly ingest emoji tags. 2020-04-23 16:19:49 +02:00
lain ec7335535d Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-04-23 15:47:08 +02:00
lain 850377a7b8 Merge branch 'bugfix/1629-fav-race-condition' into 'develop'
SideEffects: Run in transaction.

Closes #1629

See merge request pleroma/pleroma!2417
2020-04-22 19:26:32 +00:00
lain 1bcbdc7a9f SideEffects: Use less cryptic syntax. 2020-04-22 21:21:21 +02:00
lain e62173dfc8 SideEffects: Run in transaction.
This fixes race conditions.
2020-04-22 18:40:53 +02:00
Egor Kislitsyn 6c26feed01
Merge branch 'develop' into openapi/account 2020-04-22 20:18:12 +04:00
lain 5102468d0f Polls: Persist and show voters' count 2020-04-22 14:06:39 +02:00
lain 2e62a63749 ChatMessageValidator: Validation changes
Don't validate if the recipient is blocking the actor.
2020-04-22 12:48:52 +02:00
lain 5165287ff4 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-04-21 12:00:33 +02:00
Egor Kislitsyn 364eecc49f
Merge branch 'develop' into global-status-expiration 2020-04-20 20:37:56 +04:00
Alex Gleason bedc558809
Merge remote-tracking branch 'upstream/develop' into accept-deletes 2020-04-20 10:15:40 -05:00
Alex Gleason b54c8813d6
Add :reject_deletes option to SimplePolicy 2020-04-20 10:11:06 -05:00
Egor Kislitsyn 736fead494 Merge branch 'develop' into openapi/account 2020-04-20 18:40:02 +04:00
Ilja 8b4de61d64 Fix ObjectAgePolicyTest
The policy didn't block old posts as it should.
* I fixed it and tested on a test server
* I added the settings to description so that this information is shown in nodeinfo
* TODO: I didn't work TTD and still need to fix the tests
2020-04-20 12:59:16 +00:00
lain 7e53da250e ChatMessage: Support emoji. 2020-04-20 14:08:54 +02:00
lain b836d3d104 ChatMessageValidator: Require published field 2020-04-20 13:14:59 +02:00
lain 139b9d1338 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-04-20 12:37:17 +02:00
lain 970b74383b Credo fixes. 2020-04-20 12:29:19 +02:00
lain ce23673ca1 ChatMessageValidator: Don't validate messages that are too long. 2020-04-20 11:45:11 +02:00
Haelwenn 79445ae5d2 Merge branch 'bugfix/1697-user_emoji_miration' into 'develop'
migrations/20200406100225_users_add_emoji: Fix tag to Emoji filtering, electric bongaloo

Closes #1697

See merge request pleroma/pleroma!2403
2020-04-18 06:59:23 +00:00
Haelwenn 24f760c2f7 Apply suggestion to lib/pleroma/web/activity_pub/activity_pub.ex 2020-04-17 22:48:37 +00:00
Haelwenn (lanodan) Monnier eb61564005
migrations/20200406100225_users_add_emoji: Fix tag to Emoji filtering, electric bongaloo 2020-04-17 23:57:22 +02:00
lain c845820911 Notifications: Create a chat notification. 2020-04-17 16:55:01 +02:00
rinpatch e0d7847bc5 Merge branch 'sideeffects-test' into 'develop'
SideEffects: Test for notification creation.

See merge request pleroma/pleroma!2399
2020-04-17 14:03:04 +00:00
lain 8c2c325598 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-04-17 15:51:24 +02:00
lain 26d9c83316 SideEffects: Test for notification creation. 2020-04-17 15:50:15 +02:00
lain 372614cfd3 ChatView: Add a mastodon api representation of the recipient. 2020-04-17 15:37:54 +02:00
Haelwenn (lanodan) Monnier 46f051048f
migrations/20200406100225_users_add_emoji: Fix tag to Emoji filtering 2020-04-17 14:32:15 +02:00
rinpatch 942d7467ca Merge branch 'develop' into features/remove-user-source_data 2020-04-16 21:28:52 +03:00
lain e983f70884 ChatMessagesHandling: Strip HTML of incoming messages. 2020-04-16 17:50:24 +02:00
rinpatch 252528a4b9 Merge branch 'refactor/remove-upgrade-changeset' into 'develop'
Remove User.upgrade_changeset in favor of remote_user_creation

See merge request pleroma/pleroma!2368
2020-04-16 14:59:11 +00:00
lain e2ced04917 ChatMessages: Better validation. 2020-04-16 15:21:47 +02:00
lain 6ace22b56a Chat: Add views, don't return them in timeline queries. 2020-04-15 18:23:16 +02:00
Egor Kislitsyn 65f04b7806
Fix credo warning 2020-04-15 17:16:32 +04:00
Egor Kislitsyn 16f4787bf7
Add a TODO note 2020-04-15 16:51:37 +04:00
lain 44bfb491ea Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-04-15 14:41:43 +02:00
Egor Kislitsyn 03124c96cc
Add spec for AccountController.statuses 2020-04-13 18:17:07 +04:00
Egor Kislitsyn dc8fa04192
Merge branch 'develop' into global-status-expiration 2020-04-13 14:12:51 +04:00
Maksim Pechnikov c5c09fc61b fix mediaType of object 2020-04-13 07:02:57 +03:00
Alex Gleason 9a3c74b244
Always accept deletions through SimplePolicy 2020-04-12 20:26:35 -05:00
rinpatch 5e365448f3 Merge branch 'following-relationships-optimizations' into 'develop'
FollowingRelationship storage & performance optimizations

See merge request pleroma/pleroma!2332
2020-04-11 19:46:04 +00:00
rinpatch c077ad0b33 Remove User.upgrade_changeset in favor of remote_user_creation
The two changesets had the same purpose, yet some changes were updated
in one, but not the other (`uri`, for example).

Also makes `Transmogrifier.upgrade_user_from_ap_id` be called from
`ActivityPub.make_user_from_ap_id` only when the user is actually
not AP enabled yet.

I did not bother rewriting tests that used `User.insert_or_update`
to use the changeset instead because they seemed to just test the implementation,
rather than behavior.
2020-04-11 22:31:46 +03:00
Egor Kislitsyn dd612f86ae
Merge remote-tracking branch 'origin/develop' into global-status-expiration 2020-04-10 20:00:05 +04:00
Egor Kislitsyn 7f692343c8
Merge branch 'develop' into global-status-expiration 2020-04-10 14:20:48 +04:00
Egor Kislitsyn cf2a0574e7
Merge branch 'develop' into fix/support-conversations-pagination 2020-04-10 14:18:57 +04:00
Haelwenn 4d33e0bd50 Merge branch 'bugfix/apc2s_upload_activity' into 'develop'
bugfix: AP C2S activity with attachments

See merge request pleroma/pleroma!2316
2020-04-10 04:31:13 +00:00
Haelwenn (lanodan) Monnier e89078ac2a
User: remove source_data 2020-04-10 06:20:03 +02:00
Haelwenn (lanodan) Monnier 3420dec494
Remove User.fields/1 2020-04-10 06:20:02 +02:00
Haelwenn (lanodan) Monnier 9172d719cc
profile emojis in User.emoji instead of source_data 2020-04-10 06:20:02 +02:00