Commit graph

6442 commits

Author SHA1 Message Date
rinpatch
5c0e1039ce Chunk the notification type backfill migration
Long-term we want that migration to be done entirely in SQL,
but for now this is a hotfix to not cause OOMs on large databases.

This is using a homegrown version of `Repo.stream`, it's worse in
terms of performance than the upstream since it doesn't use the same
prepared query for chunk queries, but unlike the upstream it supports
preloads.
2020-06-16 23:53:13 +03:00
Haelwenn
b536e57124 Merge branch '1866-last-status-stuff' into 'develop'
Resolve "/api/v1/conversations returns the wrong `last_status`"

Closes #1866

See merge request pleroma/pleroma!2647
2020-06-16 18:10:00 +00:00
Alexander Strizhakov
b66e6eb521
fixes for tests 2020-06-16 19:03:45 +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
Alexander Strizhakov
32c6576b60
naming 2020-06-16 15:54:22 +03:00
Alexander Strizhakov
e1603ac8fe
fix attemps to merge map 2020-06-16 15:54:22 +03:00
Alexander Strizhakov
9a4fde9766
Mogrify args as custom tuples 2020-06-16 15:53:28 +03:00
lain
1eb6cedaad ActivityPub: When restricting to media posts, only show 'Creates'. 2020-06-16 13:08:27 +02:00
Maksim Pechnikov
b023110799 fixed a visibility of functions 2020-06-15 20:48:22 +03:00
lain
e1ee8bc1da User: update_follower_count refactor. 2020-06-15 14:29:34 +02:00
Maksim Pechnikov
579763126f Merge branch 'develop' into issue/1855 2020-06-15 15:24:55 +03:00
Egor Kislitsyn
58e4e3db8b
Merge remote-tracking branch 'origin/develop' into merge-ogp-twitter-parsers 2020-06-15 16:03:40 +04:00
Maksim Pechnikov
62b8c31b7a added tests 2020-06-15 14:55:00 +03:00
lain
b7df7436c8 Conversations: Return last dm for conversation, not last message. 2020-06-15 12:27:13 +02:00
Maksim Pechnikov
2e8a236cef fix invalidates media url's 2020-06-14 21:02:57 +03:00
eugenijm
b15cfc3d36 Mastodon API: ensure the notification endpoint doesn't return less than the requested amount of records unless it's the last page 2020-06-14 18:27:11 +03: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
lain
1d625c29a0 ControllerHelper: Always return id field. 2020-06-13 13:12:43 +02:00
lain
4b865bba10 Apply suggestion to lib/pleroma/web/controller_helper.ex 2020-06-13 10:37:15 +00:00
href
cb7be6eef2 Remove use of atoms in MRF.UserAllowListPolicy 2020-06-13 12:08:46 +03:00
Egor Kislitsyn
520367d6fd Fix atom leak in Rich Media Parser 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
Egor Kislitsyn
09d31d24de
Return an empty map from Pleroma.Web.RichMedia.Parsers.OGP.parse/2 2020-06-12 18:39:51 +04:00
Egor Kislitsyn
697cf92024
Merge remote-tracking branch 'origin/develop' into merge-ogp-twitter-parsers 2020-06-12 18:25:29 +04: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
Mark Felder
34593d6aa5 Merge branch 'develop' into features/mix-task-reset-mfa 2020-06-12 08:43:50 -05:00
lain
1419c67f4d Merge branch 'feature/cli-reload-emoji' into 'develop'
Add command to reload emoji packs from cli for OTP users

Closes #1814

See merge request pleroma/pleroma!2639
2020-06-12 13:32:59 +00:00
Maksim Pechnikov
f9dcf15ecb added admin api for MediaProxy cache invalidation 2020-06-12 14:49:54 +03:00
Ivan Tashkinov
2188097066 [#1794] Fixes URI query handling for hashtags extraction in search. 2020-06-12 14:25:41 +03:00
Haelwenn (lanodan) Monnier
40970f6bb9
New mix task: pleroma.user reset_mfa <nickname> 2020-06-11 22:54:48 +02:00
Egor Kislitsyn
2419776e19
Deprecate Pleroma.Web.RichMedia.Parsers.OGP 2020-06-11 23:11:46 +04:00
Mark Felder
7f7a1a4676 Check for media proxy base_url, not Upload base_url 2020-06-11 11:05:22 -05:00
Mark Felder
8a59fde0e5 Merge branch 'develop' into fix/csp-mediaproxy-base-url 2020-06-11 10:25:00 -05:00
Egor Kislitsyn
1f35acce54
Merge OGP parser with TwitterCard 2020-06-11 17:57:31 +04:00
Ivan Tashkinov
b28cec4271 [#1794] Fixes URI query handling for hashtags extraction in search. 2020-06-11 16:05:14 +03:00
lain
5e44e9d698 Apply suggestion to lib/pleroma/web/controller_helper.ex 2020-06-10 18:56:46 +00:00
Mark Felder
7c47f791a8 Add command to reload emoji packs from cli for OTP users
Not useful for source releases as we don't have a way to automate connecting to the running instance.
2020-06-10 13:02:08 -05:00
rinpatch
99afc7f4e4 HTTP security plug: add media proxy base url host to csp 2020-06-10 20:09:16 +03:00
rinpatch
7aa6c82937 Merge branch 'remake-remodel-dms' into 'develop'
Chats / ChatMessages

See merge request pleroma/pleroma!2429
2020-06-10 12:05:45 +00:00
lain
9e411372d0 ActivityPub: Don't show announces of your own objects in timeline. 2020-06-10 12:10:09 +02:00
lain
86fec45f40 ControllerHelper: Fix wrong comparison. 2020-06-10 11:09:45 +02:00
lain
b4c50be9df Apply suggestion to lib/pleroma/web/controller_helper.ex 2020-06-10 08:12:29 +00:00
lain
be7c322865 Apply suggestion to lib/pleroma/web/controller_helper.ex 2020-06-10 08:02:35 +00:00
lain
c4f267b3be Apply suggestion to lib/pleroma/web/controller_helper.ex 2020-06-10 08:02:26 +00:00
lain
1b746cfbbb Merge branch 'add-url-to-admin-account-view' into 'develop'
Add `url` field to AdminAPI.AccountView

See merge request pleroma/pleroma!2633
2020-06-09 12:59:14 +00:00
Egor Kislitsyn
3dd1de61a7 Add url field to AdminAPI.AccountView 2020-06-09 16:02:42 +04: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
lain
40d5058cc4 Merge branch 'remake-remodel-dms' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-06-09 09:21:44 +02:00
lain
e1bc37d118 MigrationHelper: Move notification backfilling to own module. 2020-06-09 09:20:55 +02:00
lain
fc04a138d4 Apply suggestion to lib/pleroma/notification.ex 2020-06-08 20:01:37 +00: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
d192492658 Merge branch 'openapi/admin/relay' into 'develop'
Add OpenAPI spec for AdminAPI.RelayController

See merge request pleroma/pleroma!2579
2020-06-08 11:07:01 +00:00
lain
c450b248cc Merge branch 'feature/delete-follow-requests-on-user-deletion' into 'develop'
Delete outgoing pending follow requests on user deletion

See merge request pleroma/pleroma!2631
2020-06-08 10:54:43 +00: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
89b85f6529 ChatController: Remove nonsensical pagination. 2020-06-08 11:09:53 +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
fe2a5d0614 ChatController: Make last_read_id mandatory. 2020-06-07 20:22:08 +02:00
Sergey Suprunenko
8d9e586887
Delete pending follow requests on user deletion 2020-06-07 17:31:37 +02:00
lain
801e668a97 ChatController: Add last_read_id option to mark_as_read. 2020-06-07 15:38:33 +02:00
lain
2cdaac4330 SideEffects: Move streaming of chats to after the transaction. 2020-06-07 14:52:56 +02:00
lain
1a11f0e453 Chats: Change id to flake id. 2020-06-07 14:25:30 +02:00
lain
0365053c8d AttachmentValidator: Check if the mime type is valid. 2020-06-07 09:19:00 +02:00
lain
40fc4e974e Notfication: Add validation of notification types 2020-06-06 16:59:08 +02:00
lain
f4cf4ae16e ChatController: Use new oauth scope *:chats. 2020-06-06 16:48:02 +02:00
Haelwenn (lanodan) Monnier
e1b07402ab
User: Add raw_bio, storing unformatted bio
Related: https://git.pleroma.social/pleroma/pleroma/issues/1643
2020-06-06 16:23:16 +02:00
lain
f77d4a302d Credo fixes. 2020-06-06 15:51:08 +02:00
lain
9189b489ee Migrations: Move Notification migration code to helper 2020-06-06 15:33:02 +02:00
lain
9fa3f0b156 Notification: Change type of type to an enum. 2020-06-06 13:08:45 +02:00
lain
ca0e6e702b ChatMessageReference -> Chat.MessageReference 2020-06-06 11:51:10 +02:00
lain
137adef6e0 ChatMessageReference: Use FlakeId.Ecto.Type
No need for compat because this is brand new.
2020-06-06 10:42:24 +02:00
lain
239d03499e Chat: creation_cng -> changeset
Make our usage of this more uniform.
2020-06-06 10:38:45 +02:00
lain
4e8c0eecd5 WebPush: Don't break on contentless chat messages. 2020-06-06 09:46:07 +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
lain
aa2ac76510 Notification: Don't break on figuring out the type of old EmojiReactions 2020-06-04 20:40:46 +02:00
lain
d44da91bbf SubscriptionOperation: Let chat mentions through. 2020-06-04 20:28: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
minibikini
b57e4ad1ab Merge branch 'develop' into 'openapi/admin/relay'
# Conflicts:
#   lib/pleroma/web/admin_api/controllers/admin_api_controller.ex
2020-06-04 13:29:32 +00:00
lain
b952f3f379 WebPush: Push out chat message notications. 2020-06-04 14:49:10 +02:00
Egor Kislitsyn
70f054b083
Merge branch 'develop' into openapi/admin/relay 2020-06-04 13:30:14 +04:00
Egor Kislitsyn
b4d5bdd6f1
Merge branch 'develop' into openapi/admin/config 2020-06-04 13:28:00 +04:00
lain
e46aecda55 Notification: Fix notifications backfill for compacted activities 2020-06-03 20:51:59 +02:00
lain
b3407344d3 ChatController: Add function to mark single message as read. 2020-06-03 19:21:23 +02:00
lain
c020fd4352 ChatMessageReferenceView: Return read status as unread. 2020-06-03 18:58:58 +02:00
Egor Kislitsyn
c16315d055
Add OpenAPI spec for AdminAPI.ReportController 2020-06-03 19:17:05 +04:00