Commit graph

739 commits

Author SHA1 Message Date
Ariadne Conill 1f9de2a8cd activitypub: implement IR-level considerations for Listen activities 2019-09-30 10:39:17 +00:00
rinpatch e9d1aa75d5 Revert subscription refactoring.
As discussed in pleroma-meta#2

This reverts commit eb9aa7aa10, reversing
changes made to c4fbb56984.
2019-09-29 18:43:27 +03:00
Roman Chvanikov b4b147000c Merge develop 2019-09-26 10:38:54 +03:00
Hakaba Hitoyo 5fb72170a7 Revert "add _discoverable_ keyword into ActivityPub @context"
This reverts commit 3aef4bdf8f37efd1055a84c5fca12ec4559a17f5.
2019-09-26 02:57:41 +00:00
kaniini 3ff57f1fd3 Merge branch 'hex-flake-id' into 'develop'
Replace `Pleroma.FlakeId` with `flake_id` hex package

See merge request pleroma/pleroma!1692
2019-09-26 02:51:54 +00:00
kaniini beabc49e35 Merge branch 'feature/activities-pagination-by-offset' into 'develop'
Allow activities pagination via limit/offset

See merge request pleroma/pleroma!1714
2019-09-26 02:49:45 +00:00
rinpatch d87be2ec96 Don't embed the first page in inboxes/outboxes and refactor the views to
follow View/Controller pattern

Note that I mentioned the change in 1.1 section because I intend to
backport this, if this is not needed I will move it back to Unreleased.
2019-09-25 15:59:04 +03:00
Egor Kislitsyn b5dfe83433 Replace Pleroma.FlakeId with flake_id hex package 2019-09-25 17:14:31 +07:00
Maxim Filippov 60cbea5bb2 Allow activities pagination via limit/offset 2019-09-25 01:25:42 +03:00
eugenijm 7cf1252455 Mastodon API: Fix private and direct statuses not being filtered out from the public timeline for an authenticated user (GET /api/v1/timelines/public) 2019-09-20 18:27:00 +03:00
rinpatch 95a4a19417 Merge branch 'support/tests' into 'develop'
add tests for activity_pub/utils.ex

See merge request pleroma/pleroma!1627
2019-09-17 14:47:26 +00:00
Roman Chvanikov 76c3e290fc Merge develop 2019-09-16 20:30:42 +03:00
Egor Kislitsyn 96816ceaa2 Revert "Merge branch 'revert-4fabf83a' into 'develop'"
This reverts commit fe7fd33126, reversing
changes made to 4fabf83ad0.
2019-09-16 17:55:04 +07:00
kaniini c623b4324d Revert "Merge branch 'streamer-refactoring' into 'develop'"
This reverts merge request !1653
2019-09-16 09:09:21 +00:00
Steven Fuchs aab264db82 Streamer refactoring 2019-09-16 07:44:03 +00:00
Roman Chvanikov 0bd2b85edb Separate Subscription Notifications from regular Notifications 2019-09-13 18:25:27 +03:00
lain a7f31bf06c Merge remote-tracking branch 'origin/develop' into reactions 2019-09-13 16:31:27 +02:00
lain e5b3ad3d04 ActivityPub: Use is_unicode_emoji? function. 2019-09-13 16:06:34 +02:00
Ivan Tashkinov c3f00447af Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue 2019-09-08 08:41:10 +03:00
Maksim Pechnikov 39f99dc6cd Merge branch 'develop' into support/tests 2019-09-07 22:13:43 +03:00
Ariadne Conill 5effb2cbca activitypub: help ecto build a better query for thread mute filtering
using an indexed value in thread_mute table helps ecto build a better query.
2019-09-06 23:11:26 +00:00
Alex S 79dde58044 one more temp commit 2019-09-05 16:02:20 +03:00
Maksim Pechnikov 8cbad5500c add tests for activity_pub/utils.ex 2019-09-04 15:25:12 +03:00
lain 9bc12b88b3 ActivityPub: Save emoji reactions in object. 2019-09-03 16:50:04 -05:00
Ivan Tashkinov dd017c65a4 [#1149] Refactored Oban workers API (introduced enqueue/3). 2019-08-31 21:58:42 +03:00
Ivan Tashkinov a90ea8ba15 [#1149] Addressed code review comments (code style, jobs pruning etc.). 2019-08-31 19:08:56 +03:00
Ivan Tashkinov e890ea7e82 [#1149] Added Oban job for "activity_expiration". Merged remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
# Conflicts:
#	config/config.exs
2019-08-31 14:25:43 +03:00
lain f017260cdc Merge remote-tracking branch 'origin/develop' into reactions 2019-08-27 16:38:51 -05:00
Maksim Pechnikov 00abe099cd added tests for ActivityPub.like\unlike 2019-08-27 16:21:03 +03:00
lain 6e1ec4c5da ActivityPub: Basic EmojiReactions. 2019-08-26 16:29:51 -05:00
Ivan Tashkinov 256ff09aa8 [#1149] Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
# Conflicts:
#	lib/pleroma/application.ex
#	lib/pleroma/scheduled_activity_worker.ex
#	lib/pleroma/web/federator/retry_queue.ex
#	lib/pleroma/web/oauth/token/clean_worker.ex
#	test/user_test.exs
#	test/web/federator_test.exs
2019-08-22 20:59:58 +03:00
lain 74f7f308f8 Merge branch 'fix/admin-api-user-deletion' into 'develop'
Fix deactivated user deletion

See merge request pleroma/pleroma!1546
2019-08-20 19:34:47 +00:00
lain ef43016b2c Merge branch 'feature/custom-fields' into 'develop'
Add custom profile fields

See merge request pleroma/pleroma!1488
2019-08-20 12:44:14 +00:00
Maxim Filippov 5171aa5b4d Refactor check_actor_is_active 2019-08-19 20:36:25 +03:00
kaniini 18c8c8d176 Merge branch 'feature/hide-muted-threads-from-timeline' into 'develop'
Hide muted theads from home/public timelines unless `with_muted` is set

See merge request pleroma/pleroma!1575
2019-08-18 21:57:55 +00:00
rinpatch a4a3e3becd Hide muted theads from home/public timelines unless with_muted is set 2019-08-15 17:37:30 +03:00
Maxim Filippov ec969eec51 Merge branch 'develop' into 'fix/admin-api-user-deletion'
# Conflicts:
#   CHANGELOG.md
2019-08-14 22:45:32 +00:00
Maxim Filippov 2b94ae3b39 Do not check if actor is active when deleting a user 2019-08-15 01:35:29 +03:00
rinpatch bd5ad0af78 Cache follow state 2019-08-15 00:47:30 +03:00
Ivan Tashkinov 8778c16dac Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue 2019-08-14 21:44:50 +03:00
Egor Kislitsyn e457fcc479 Add :max_remote_account_fields config option 2019-08-14 14:58:06 +07:00
kaniini 5c35d2f1d8 Merge branch 'preload-user-timelines' into 'develop'
Preload thread mutes/bookmarks in user_statuses

See merge request pleroma/pleroma!1563
2019-08-14 01:04:07 +00:00
rinpatch 8202f1634a Preload thread mutes/bookmarks in user_statuses 2019-08-14 03:02:09 +03:00
rinpatch f4e087ee48 Preload thread mutes/bookmarks in get_context
Also removes filtering for creates (was done on the database side
already) and filtering for the requested activity (moved to the database
side) from application side.
2019-08-14 02:36:54 +03:00
Ivan Tashkinov 0e1c481a94 [#1149] Added more oban workers. Refactoring. 2019-08-13 20:20:26 +03:00
Maxim Filippov dfae61c25c Fix deactivated user deletion 2019-08-09 23:05:28 +03:00
rinpatch 73d8d5c49f Stop depending on the embedded object in restrict_favorited_by 2019-08-07 00:12:42 +03:00
Sergey Suprunenko 8b2fa31fed Handle MRF rejections of incoming AP activities 2019-08-03 18:12:38 +00:00
rinpatch c88a5d3251 Merge branch 'develop' into feature/hide-follows-remote 2019-07-31 14:12:29 +03:00
Ariadne Conill b93498eb52 constants: add as_public constant and use it everywhere 2019-07-29 02:43:19 +00:00
rinpatch 41e0304757 Merge branch 'develop' into feature/hide-follows-remote 2019-07-25 18:43:30 +03:00
Maxim Filippov 03471151d6 AdminAPI: Add "godmode" while fetching user statuses (i.e. admin can see private statuses) 2019-07-24 01:51:36 +03:00
rinpatch 196cad46f3 Resolve merge conflicts 2019-07-20 22:04:47 +03:00
Egor Kislitsyn 64a946643e Merge remote-tracking branch 'pleroma/develop' into feature/addressable-lists 2019-07-15 14:11:54 +07:00
Ariadne Conill 739bbe0d3b security: detect object containment violations at the IR level
It is more efficient to check for object containment violations at the IR
level instead of in the protocol handlers.  OStatus containment is especially
a tricky situation, as the containment rules don't match those of IR and
ActivityPub.

Accordingly, we just always do a final containment check at the IR level
before the object is added to the IR object graph.
2019-07-14 17:47:08 +00:00
rinpatch 0c2dcb4c69 Add follow information refetching after following/unfollowing 2019-07-14 01:58:39 +03:00
rinpatch 183da33e00 Add tests for fetch_follow_information_for_user and check object type
when fetching the page
2019-07-14 00:56:02 +03:00
rinpatch d06d1b751d Use atoms when updating user info 2019-07-14 00:21:35 +03:00
rinpatch e5b850a991 Refactor fetching follow information to a separate function 2019-07-13 23:56:10 +03:00
rinpatch e8fa477793 Refactor Follows/Followers counter syncronization
- Actually sync counters in the database instead of info cache (which got
overriden after user update was finished anyway)
- Add following count field to user info
- Set hide_followers/hide_follows for remote users based on http status
codes for the first collection page
2019-07-13 19:27:49 +03:00
Egor Kislitsyn 182f7bbb11 Merge branch 'develop' into feature/addressable-lists 2019-07-11 13:26:59 +07:00
Alex S f8786fa6f2 adding following_address field to user 2019-07-10 17:42:18 +03:00
Sergey Suprunenko 2d2b50ccca Send and handle "Delete" activity for deleted users 2019-07-10 05:16:08 +00:00
Eugenij f2c03425b0 Broadcast conversation update when DM is deleted 2019-06-24 07:14:04 +00:00
Egor Kislitsyn 6ba9055b51 Merge remote-tracking branch 'pleroma/develop' into feature/addressable-lists 2019-06-05 12:54:30 +07:00
Maksim Pechnikov 1e7bb69a95 update ActivityPub#fetch_activities_query 2019-06-04 15:21:18 +03:00
Maksim Pechnikov 0acfcf6c52 update ActivityPub#fetch_activities_query 2019-06-04 15:04:36 +03:00
Egor Kislitsyn 9ce928d823 Merge remote-tracking branch 'pleroma/develop' into feature/addressable-lists 2019-06-04 16:28:23 +07:00
Maksim Pechnikov 4f2e359687 Merge branch 'develop' into issue/941 2019-06-04 09:49:08 +03:00
Maksim Pechnikov 080e1aa70e add option skip_thread_containment 2019-06-03 16:13:37 +03:00
rinpatch 5bd41fef8b Change query order in fetch_activities_for_context_query to make poll vote exclusion work 2019-06-03 10:58:37 +03:00
rinpatch 65db5e9f52 Resolve merge conflicts 2019-06-01 16:29:58 +03:00
rinpatch 300d94c628 Add poll votes
Also in this commit by accident:
- Fix query ordering causing exclude_poll_votes to not work
- Do not create notifications for Answer objects
2019-06-01 16:17:46 +03:00
lambda 2993361075 Merge branch 'hotfix/leaking-lists' into 'develop'
Mastodon API: Fix lists leaking private posts

See merge request pleroma/pleroma!1222
2019-05-31 13:26:48 +00:00
rinpatch d9c0650ff9 Mastodon API: Fix lists leaking private posts
Our previous list visibility resolver grabbed posts if either follower
collection of the user in a list who is followed is in `to` or if
follower collection of the user in a list was in `cc`. This not only
missed unlisted posts but also lead to leaking private posts when
`fix_explicit_addressing` mistakingly started putting follower collections
to `cc` (also fixed in this MR).

Reported by @kurisu@iscute.moe via a DM
2019-05-31 15:25:17 +03:00
Egor Kislitsyn 99f70c7e20 Use Pleroma.Config everywhere 2019-05-30 15:33:58 +07:00
Egor Kislitsyn f333041a0a Merge remote-tracking branch 'pleroma/develop' into feature/addressable-lists 2019-05-24 21:05:57 +07:00
rinpatch 8b2d39c1ec Change the order of preloading when fetching activities for context 2019-05-23 14:03:16 +03:00
William Pitcock 60f882b09f activitypub: run user objects through MRF filters 2019-05-22 18:53:12 +00:00
rinpatch ac7702f800 Exclude Answers from fetching by default 2019-05-22 21:52:12 +03:00
rinpatch 19c90d47c4 Normalize poll votes to Answer objects 2019-05-22 21:17:57 +03:00
rinpatch ee68244141 Do not stream out poll replies 2019-05-21 16:58:15 +03:00
rinpatch d7c4d029c8 Restrict poll replies when fetching activiites for context 2019-05-21 14:35:20 +03:00
rinpatch aafe30d94e Handle poll votes 2019-05-21 14:12:10 +03:00
Aaron Tinio eb02edcad9 Add virtual :thread_muted? field
that may be set when fetching activities
2019-05-21 00:35:46 +08:00
rinpatch 6430cb1bf7 Restrict poll replies from fetch queries by default 2019-05-19 17:44:18 +03:00
Egor Kislitsyn 3b71612d3d Improve Pleroma.Web.ActivityPub.ActivityPub.maybe_update_cc/3 2019-05-18 01:17:14 +07:00
Egor Kislitsyn 557f0e33a7 Merge remote-tracking branch 'pleroma/develop' into feature/addressable-lists 2019-05-17 19:57:14 +07:00
Sergey Suprunenko e2b3a27204 Add Reports to Admin API 2019-05-16 19:09:18 +00:00
feld e190b3022b Merge branch 'fix/domain-unblocked-reblogs' into 'develop'
Fix domain-unblocked reblogs

Closes #892

See merge request pleroma/pleroma!1157
2019-05-16 18:57:14 +00:00
Mark Felder ebb0482116 Merge branch 'develop' into conversations-import 2019-05-16 13:11:17 -05:00
Aaron Tinio 793f1834d2 Use named binding to conditionally join object 2019-05-16 06:25:14 +08:00
Aaron Tinio 2b6119dfbf Restrict reblogs of activities from blocked domains 2019-05-16 05:53:51 +08:00
William Pitcock a591ab6112 activity pub: remove Ecto SQL query dumps 2019-05-15 16:56:46 +00:00
William Pitcock de114ffbb0 activitypub: remove contain_timeline() 2019-05-15 15:53:06 +00:00
William Pitcock 0387f52138 activitypub: add restrict_thread_visibility() 2019-05-15 15:53:06 +00:00
lain f168a1cbdc Merge remote-tracking branch 'origin/develop' into conversations-import 2019-05-15 17:47:29 +02:00
Egor Kislitsyn a7a8f3bc2c Merge remote-tracking branch 'pleroma/develop' into feature/addressable-lists 2019-05-15 14:31:24 +07:00
lambda 692919c7d2 Merge branch 'refactor/use-job-queue-everywhere' into 'develop'
use job queue everywhere

Closes #862

See merge request pleroma/pleroma!1142
2019-05-14 15:27:34 +00:00
Egor Kislitsyn e82e73478e Merge remote-tracking branch 'pleroma/develop' into feature/addressable-lists 2019-05-14 19:00:07 +07:00
Egor Kislitsyn 5e2b491276 Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-05-14 18:15:56 +07:00
William Pitcock 57d11ac9db activitypub: move post rich media fetching to job queue 2019-05-13 19:36:00 +00:00
Egor Kislitsyn 23276e8d68 Use pseudo ap id of a list in BCC 2019-05-13 16:15:14 +07:00
William Pitcock ef1f9e8d4e activitypub: split out outgoing federation into a federation module 2019-05-12 05:04:11 +00:00
lain a33bec7d58 Conversations: Import order, import as read. 2019-05-09 16:39:28 +02:00
lain e6d7f8d223 Credo fixes. 2019-05-08 18:19:20 +02:00
lain 920bd47055 ActivityPub: Remove leftover printf debugging. 2019-05-08 17:40:24 +02:00
lain fcf2f38d20 Conversations: Add a function to 'import' old DMs. 2019-05-08 17:37:00 +02:00
William Pitcock 6020ff3fb6 activitypub: add optional order constraint to timeline query builder 2019-05-07 19:33:22 +00:00
rinpatch 4c5125dedc Remove bookmarks assoc and add a fake bookmark assoc instead 2019-05-07 19:33:22 +00:00
rinpatch f841eb7cdb Preload bookmarks wherever the object is preloaded 2019-05-07 19:33:22 +00:00
Egor Kislitsyn 1557b99beb Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-05-07 16:51:11 +07:00
lain 81d1aa424d Streamer: Stream out Conversations/Participations. 2019-05-03 13:39:14 +02:00
lain 45f790becc Merge remote-tracking branch 'origin/develop' into conversations_three 2019-05-01 18:40:41 +02:00
Egor Kislitsyn a3dc02d282 Add addressable lists 2019-05-01 16:11:17 +07:00
rinpatch ce4825c1dc Do not normalize objects in stream_out unless the activity type is
Create

Saves quite a bit of time with delete activities because they would
always query the db
2019-04-30 20:21:28 +03:00
Egor Kislitsyn c157e27a00 Merge branch 'develop' into feature/disable-account 2019-04-25 13:41:10 +07:00
rinpatch d21d921def Replace Object.normalize(activity.data[object] with Object.normalize(acitivty) to benefit from preloading 2019-04-22 11:27:29 +03:00
Egor b9cdf6d3b9 Use User.get_cached* everywhere 2019-04-22 07:20:43 +00:00
Egor Kislitsyn e8c2f9a73a Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-04-22 13:08:30 +07:00
Roman Chvanikov 24073f829f Refactor query to return only 1 message instead of 20 2019-04-21 00:40:41 +07:00
kaniini 9da8b287f8 Merge branch 'feature/database-compaction' into 'develop'
database compaction

See merge request pleroma/pleroma!473
2019-04-19 16:55:33 +00:00
rinpatch f9865cf943 Stream out deletes, mistakingly removed when resolving merge conflicts 2019-04-19 00:47:02 +03:00
rinpatch 83589ca6a5 Merge branch 'develop' into feature/database-compaction 2019-04-18 12:56:38 +03:00
rinpatch e31a22043b Fix media timeline depending on embeded object and add some guards 2019-04-18 08:31:08 +03:00
rinpatch 2abc09570f Use the preloaded object in tag queries 2019-04-18 01:37:04 +03:00
William Pitcock 36f78c6dcd activitypub: fix filtering of boosts from blocked users 2019-04-17 22:27:59 +00:00
William Pitcock 2140e164d7 activitypub: properly filter out transitive activities concerning blocked users 2019-04-17 20:05:09 +00:00
rinpatch 8e4d950f31 Remove updating reply count for embeded objects 2019-04-17 15:54:09 +03:00
rinpatch 627e5a0a49 Merge branch 'develop' into feature/database-compaction 2019-04-17 12:22:32 +03:00
rinpatch 5d73dca064 Remove inReplyToStatusId 2019-04-15 11:50:36 +03:00
lambda 184ae60b21 Merge branch 'bugfix/pleroma-email-naming' into 'develop'
Make the filename and module name of Pleroma.Emails.* orthogonal

See merge request pleroma/pleroma!1029
2019-04-12 10:41:09 +00:00
lambda 0a09692c7d Merge branch 'features/mastoapi/2.6.0-min_id-pagination' into 'develop'
Features: mastoapi-2.6.0 `min_id` pagination

Closes #351

See merge request pleroma/pleroma!976
2019-04-12 09:34:12 +00:00
Egor Kislitsyn db4badc6aa move user disable into deactivation 2019-04-11 17:22:42 +07:00
Egor Kislitsyn 0f2f7d2cec Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-04-11 15:51:52 +07:00
lain 280172f6f6 Conversations: Create or bump on inserting a dm. 2019-04-10 16:33:45 +02:00
Haelwenn (lanodan) Monnier cae0231731
s/Pleroma.AdminEmail/Pleroma.Emails.AdminEmail/ 2019-04-10 06:33:20 +02:00
Haelwenn (lanodan) Monnier 1791ee8ec4
s/Pleroma.Mailer/Pleroma.Emails.Mailer/ 2019-04-10 06:33:19 +02:00
rinpatch fe5145eeaa Move putting fake attribute to lib/pleroma/web/activity_pub/utils.ex 2019-04-01 12:25:53 +03:00
rinpatch d866b59eea oof 2019-04-01 11:58:08 +03:00
rinpatch 45ba10bf47 Fix the issue with HTML scrubber 2019-04-01 11:55:59 +03:00
rinpatch cd387f8693 Add a fake option to lazy_put_actvity_defaults 2019-03-30 13:57:54 +03:00
rinpatch 1bb4d5d65b Implement fake status submit 2019-03-29 21:59:04 +03:00
Haelwenn (lanodan) Monnier 6f15224053
activity_pub.ex: Move limit/max_id restrictions to Pagination helpers 2019-03-28 17:18:59 +01:00
rinpatch ce6d64bbd8 Fix missing announces in MastoAPI home timeline
Closes #762
2019-03-27 12:28:53 +03:00
eugenijm 568e348588 Increment replies_count on replies (MastoAPI) 2019-03-26 15:27:04 +03:00
William Pitcock ce47eb8b29 activitypub: when fetching objects, use the preloaded object from the synthesized activity 2019-03-23 03:05:10 +00:00
William Pitcock 73efe95368 activitypub: allow skipping preload in some cases (like certain tests where the preload is obnoxious) 2019-03-23 01:09:12 +00:00
William Pitcock ba7299fc87 activitypub: add missing with_preloaded_object() 2019-03-23 00:53:35 +00:00
William Pitcock e4307cadc8 activitypub: splice in the child object if we have one 2019-03-23 00:40:08 +00:00
William Pitcock 9aea7cc224 activitypub: preload child objects when fetching timelines 2019-03-23 00:10:17 +00:00
kaniini 6d6f48d079 Merge branch 'feature/federated-flags' into 'develop'
Federated reports

See merge request pleroma/pleroma!935
2019-03-16 19:27:56 +00:00
Karen Konou d8244c2a1b remove unused function 2019-03-15 15:03:03 +01:00
Karen Konou 15b21d1983 refactor filtering mechanism 2019-03-15 14:18:53 +01:00
Karen Konou c8f31e0bc2 Implement mastodon's reblog hiding feature 2019-03-15 14:18:21 +01:00
William Pitcock 423fd07928 activitypub: inject to/cc fields on non-forwarded reports since Flag activities are now Forwardable 2019-03-14 19:52:08 +00:00
William Pitcock 5c7b774f09 reports: unify sending e-mail for both remote and local reports 2019-03-14 19:44:08 +00:00
William Pitcock 64b0120d67 activitypub: add support for forwarding reports 2019-03-14 19:36:17 +00:00
rinpatch 34fc0dca2e Merge branch 'hotfix/delete-activities' into 'develop'
Fix delete activities not federating

See merge request pleroma/pleroma!933
2019-03-14 17:49:00 +00:00
rinpatch e630e5e135 Fix delete activities not federating 2019-03-14 20:43:14 +03:00
Haelwenn (lanodan) Monnier 23960309a0
[Credo] Change quoted string with 3+ quotes to sigils 2019-03-13 04:26:56 +01:00
Haelwenn (lanodan) Monnier c42d34b2ec
[Credo] fix Credo.Check.Readability.MaxLineLength 2019-03-13 04:26:56 +01:00
Haelwenn (lanodan) Monnier a3a9cec483
[Credo] fix Credo.Check.Readability.AliasOrder 2019-03-13 04:26:54 +01:00
eugenijm 6038c8a753 Broadcast deleted activity id on deletion to conform to MastoAPI streamig spec 2019-03-11 09:02:03 +03:00
Karen Konou c2faae70df Adjust delete activity audience to match the deleted object 2019-03-07 12:26:03 +01:00
Karen Konou 6a69ece437 Revert existing object check 2019-03-07 11:53:15 +01:00
Karen Konou 28d5b40d0a Add handling of objects not in database 2019-03-05 23:15:22 +01:00
Egor Kislitsyn eb84de0143 allow users to disable their own account 2019-03-04 19:55:11 +07:00
Karen Konou 1445dc25d4 fix format 2019-03-04 11:18:45 +01:00
Karen Konou aab86698a5 Expand "to" of delete activities 2019-03-04 11:18:45 +01:00
kaniini c93479c6f5 Merge branch 'count-only-public-statuses' into 'develop'
Increment user note count only on public activities #703

See merge request pleroma/pleroma!884
2019-03-03 15:49:19 +00:00
eugenijm d5418e9ff7 Remove follow_request_count as it's not needed for FE anymore.
MastoFE uses `GET /api/v1/follow_requests` and PleromaFE uses
`GET /api/pleroma/friend_requests` which they query on the initial page
load.
2019-03-03 18:42:27 +03:00
lambda 9b63fda9c7 Merge branch 'fix/dont-show-dms-in-mentions-timeline' into 'develop'
[#675] Do not show DMs in mentions timeline

See merge request pleroma/pleroma!877
2019-03-03 11:13:59 +00:00
eugenijm c46950d3b1 Increment user note count only on public activities 2019-03-03 14:08:43 +03:00
William Pitcock 689b0730f8 activitypub: fix date header format
HTTP date header specification says that days must always be two-digit.
Accordingly, change the format string used to ensure days are always
represented as two-digit (e.g. 01).
2019-03-01 12:22:45 +00:00
rinpatch 1341ee650e [#675] Do not show DMs in mentions timeline 2019-03-01 09:37:29 +03:00
lain c4235f96bd Add with_muted param. 2019-02-27 16:37:42 +01:00
lain 9e0686efa6 Move visibility into own module. 2019-02-22 13:29:52 +01:00
lain 62296f5a25 Fix private post card handling. 2019-02-22 12:02:51 +01:00
William Pitcock f8a72f2997 activitypub: sign http date header 2019-02-21 00:23:17 +00:00
Egor bff9eb5ef7 Reports 2019-02-20 16:51:25 +00:00
Ekaterina Vaartis 5a46d37af9 Update the mute implementation to the current codebase
Make it part of the info thing (and do a migration to ensure it's there)
2019-02-19 23:09:16 +03:00
Ekaterina Vaartis f41f017bbc Implement muting, add it to the mastodon API 2019-02-19 21:49:55 +03:00
lambda f25a3f4f78 Merge branch 'fix/check-follower-collection-in-is_private' into 'develop'
properly check for follower address in is_private?

See merge request pleroma/pleroma!841
2019-02-19 14:08:19 +00:00
rinpatch 96dcacade1 properly check for follower address in is_private? 2019-02-19 13:23:13 +03:00
kaniini 833161b5d2 Merge branch 'feature/jobs' into 'develop'
Job Queue

See merge request pleroma/pleroma!732
2019-02-18 19:43:06 +00:00
kaniini cd019a5927 Merge branch 'follow-request-count' into 'develop'
Follow request count

See merge request pleroma/pleroma!817
2019-02-18 04:01:26 +00:00
eugenijm ecdf0657ba Add logic for keeping follow_request_count up-to-date on the follow,
`approve_friend_request`, and `deny_friend_request` actions.
Add follow_request_count to the user view.
2019-02-15 12:20:20 +03:00
William Pitcock 56862f4ce1 activitypub: clean up logging statements a little 2019-02-14 19:42:33 +00:00
Egor Kislitsyn 305d219413 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/jobs
# Conflicts:
#	lib/pleroma/web/federator/federator.ex
#	lib/pleroma/web/websub/websub.ex
2019-02-11 13:54:21 +07:00
Haelwenn (lanodan) Monnier 6a6a5b3251
de-group alias/es 2019-02-09 16:31:17 +01:00
Haelwenn (lanodan) Monnier d2e4eb7c74
Web.ActivityPub.ActivityPub: assign the Enum.filter to recipients & simplify it 2019-02-09 14:59:21 +01:00
Haelwenn (lanodan) Monnier 60ea29dfe6
Credo fixes: alias grouping/ordering 2019-02-09 14:59:20 +01:00
Haelwenn (lanodan) Monnier 8bcfac93a8
Make credo happy 2019-02-09 14:59:20 +01:00
Egor Kislitsyn 6f05f448f8 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/jobs 2019-02-06 11:33:00 +07:00
lain f3c8b02d65 Massage index until it actually does the stuff we want.
Also makes the index a lot smoler.
2019-02-04 23:47:29 +01:00
Egor Kislitsyn 3a3a3996b7 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/jobs
# Conflicts:
#	lib/pleroma/web/activity_pub/activity_pub.ex
#	lib/pleroma/web/federator/federator.ex
2019-02-04 20:50:28 +07:00
Ivan Tashkinov 3913b0196e [#582] Made single-pub task call Instance.set_reachable/1 if set_reachable is not specified.
Added tests.
2019-02-03 13:28:13 +03:00
Ivan Tashkinov b40b4bc4e5 [#582] Optimized federation retirement by reducing the number of SQL calls
(calling `Instances.set_reachable/1` only if instance had `unreachable_since`,
calling `Instances.set_unreachable/1` only if instance had nil `unreachable_since`).
2019-02-03 12:41:27 +03:00
href b3b0855456 Merge branch '534_federation_targets_reachability' into 'develop'
[#534] Unreachable federation targets retirement

Closes #534

See merge request pleroma/pleroma!703
2019-02-01 09:14:35 +00:00
Egor Kislitsyn d3677d2b4d Merge remote-tracking branch 'MAIN/develop' into feature/jobs 2019-01-31 15:07:49 +07:00
Ivan Tashkinov 92753b0cd9 [#534] Made federation push sender be determined basing on content instead of referer header. Updated tests. 2019-01-29 13:12:28 +03:00
Egor Kislitsyn 55affbca7f add a job queue 2019-01-28 22:17:17 +07:00
Ivan Tashkinov d3f9e6f6fe [#534] Merged upstream/develop. 2019-01-28 15:39:14 +03:00
Ivan Tashkinov 1d2f41642c [#534] Various tweaks. Tests for Instances and Instance. 2019-01-28 15:25:06 +03:00
Ivan Tashkinov 9560abea10 [#534] Refactoring / tweaks per MR review. 2019-01-28 11:03:52 +03:00
William Pitcock 91ef64a1ec activitypub: prime OGP crawler cache when new messages are inserted into the database 2019-01-28 06:07:18 +00:00
kaniini 5eb81d2c72 Merge branch 'features/mastoapi-multi-hashtag' into 'develop'
MastodonAPI multi-hashtag

See merge request pleroma/pleroma!652
2019-01-27 12:45:50 +00:00
Haelwenn (lanodan) Monnier 5a84def6a6
Fix the logic in multi-hashtag TLs 2019-01-26 04:46:02 +01:00
Haelwenn (lanodan) Monnier 4ad0ad14ed
Web.ActivityPub.ActivityPub: Simplify multi-hashtag, add tests 2019-01-26 04:46:01 +01:00
Haelwenn (lanodan) Monnier 1a9bb4daa0
[Web.ActivityPub.ActivityPub]: Fix restrict_tag()
Thanks to Senko-san <kurisu@iscute.moe> for the help on array-matching
2019-01-26 04:46:01 +01:00
Haelwenn (lanodan) Monnier f9cae0d04f
[WIP,MastoAPI] Multi-tag timelines 2019-01-26 04:45:36 +01:00
Haelwenn (lanodan) Monnier 15aa45ae8a
Web.ActivityPub.ActivityPub: Fix check_remote_limit/1 against activities with content: nil 2019-01-26 03:50:49 +01:00
kaniini 4c99b6d35a Merge branch 'fix/tusky-dm' into 'develop'
Add actor to recipients list

Closes #390

See merge request pleroma/pleroma!683
2019-01-25 05:19:32 +00:00
Ivan Tashkinov 3e9399ec0b [#534] Optimized bulk publish ops to filter on reachability early. Instance refactoring. 2019-01-24 19:15:23 +03:00
Ivan Tashkinov 8654a591f0 [#534] Updating external instances reachability on incoming federation. 2019-01-24 17:37:23 +03:00
Ivan Tashkinov 20b54366ee [#534] Federation publish requests status control (enforced 2xx response code check). 2019-01-24 11:54:52 +03:00
Ivan Tashkinov f161a92cb1 [#534] Initial implementation of unreachable federation targets retirement. 2019-01-23 18:37:25 +03:00
href cdc5e6ff5c
ActivityPub: restrict_since/restrict_max: ignore empty param 2019-01-23 11:26:35 +01:00
lambda 8cd853ce0c Merge branch '530_federator_user_info_overwrite_fix' into 'develop'
[#530] Prevents user `info` from being overwritten because of race conditions

Closes #530

See merge request pleroma/pleroma!691
2019-01-21 13:03:32 +00:00
lambda 69454c8345 Merge branch 'feature/dm-sanity' into 'develop'
DM sanitization

See merge request pleroma/pleroma!458
2019-01-21 12:35:10 +00:00
Ivan Tashkinov a4d3fec8a7 [#502] Code comments update. 2019-01-21 14:52:41 +03:00
Ivan Tashkinov aa480f4a8b [#530] Prevents user info from being overwritten because of race conditions
and non-partial update of embed (in WebFinger.ensure_keys_present and other places).
2019-01-21 14:16:51 +03:00
lain cf1f35a93a Send delete event over Mastodon streaming api
Closes #116
2019-01-20 13:00:46 +01:00
William Pitcock aa37313416 activitypub: short-circuit is_public?() with directMessage flag check 2019-01-20 02:33:21 +00:00
William Pitcock ddae43eb43 activitypub: add is_private?/is_direct? helpers 2019-01-20 02:27:48 +00:00
Maxim Filippov e116e55cab Add actor to recipients 2019-01-18 22:40:52 +03:00
William Pitcock 75a9b2a851 activitypub: add a match clause for objects, not just activities 2019-01-17 23:32:16 +00:00
William Pitcock 33b473cc02 activitypub: allow is_public?() to work on any type of map representing an AS2 object 2019-01-17 23:21:31 +00:00
William Pitcock 2479e88815 activitypub: announce: add new public parameter 2019-01-17 23:21:31 +00:00
lambda fd2f1258fb Merge branch 'load-all-dms' into 'develop'
Remove recent activity restriction.

See merge request pleroma/pleroma!644
2019-01-14 18:49:53 +00:00
kaniini 7f5efddd6e Merge branch 'feature/pinned-posts' into 'develop'
Pinned Statuses

Closes #440

See merge request pleroma/pleroma!636
2019-01-10 02:39:53 +00:00
lain 5027f82cde Add activity visibility index. 2019-01-09 16:45:09 +01:00
lain 9854978b8b Remove recent activity restriction.
This should be fine now, everything should be covered by indices.
2019-01-09 12:38:23 +01:00
Egor Kislitsyn 380e9fba21 add pinned posts 2019-01-07 20:45:33 +07:00
sxsdv1 2d7da5f437 Don't crash on AP request for tombstone
Because tombstone objects has no addressing the is_public?-predicate
would cause an error that propagated as a 500 error in the api
2019-01-05 11:16:05 +01:00
lain 096a927805 Merge remote-tracking branch 'origin/develop' into pool-usage 2019-01-01 14:19:55 +01:00
lain d4799e0dc2 Remove default pool, it's used automatically anyway. 2019-01-01 13:49:24 +01:00
William Pitcock 980b5288ed update copyright years to 2019 2018-12-31 15:41:47 +00:00
kaniini 3dc5f04976 Merge branch 'carrot-bullying' into 'develop'
Add some hard limits on inserted activities.

See merge request pleroma/pleroma!595
2018-12-29 11:46:06 +00:00
Vyr Cossont e4562105e7 Implement exclude_reblogs and include_rts 2018-12-26 21:38:00 -08:00
lain 5811e65e67 Add some hard limits on inserted activities. 2018-12-26 12:39:35 +01:00
William Pitcock 2791ce9a1f add license boilerplate to pleroma core 2018-12-23 20:56:42 +00:00
Maksim Pechnikov 074fa790ba fix compile warnings 2018-12-09 20:50:08 +03:00
kaniini abead01ab6 Merge branch 'correct-and-improve-http-options' into 'develop'
Correct and improve http options

See merge request pleroma/pleroma!505
2018-12-06 15:57:56 +00:00
Hakaba Hitoyo a09ed0f5af avoid mix format bug 2018-12-06 18:41:29 +09:00
kaniini ccf0b46dd6 Merge branch '210_twitter_api_uploads_alt_text' into 'develop'
[#210] TwitterAPI: alt text support for uploaded images. Mastodon API uploads security fix.

See merge request pleroma/pleroma!496
2018-12-06 07:36:21 +00:00
Ivan Tashkinov 3e90f688f1 [#210] Mastodon: actor storing for media uploads, ownership check to update_media.
Refactoring.
2018-12-06 10:26:17 +03:00
Hakaba Hitoyo 96ba95df2e remove follow_redirect options 2018-12-06 11:38:33 +09:00
Hakaba Hitoyo 27792b2d77 remove pool and timeout options which duplicate with the default 2018-12-06 11:23:15 +09:00
Ivan Tashkinov 3b5be09f45 [#210] Stylistic change. 2018-12-05 21:48:21 +03:00
Ivan Tashkinov c4f3c5e939 [#210] Stylistic change. 2018-12-05 20:23:28 +03:00
Ivan Tashkinov 848151f7cb [#210] [TwitterAPI] Made actor be stored for uploads. Added ownership check
to `update_media` action. Added controller tests for `upload` and `update_media` actions.
Refactoring.
2018-12-05 13:37:06 +03:00
Maksim Pechnikov 87109482f3 status_code -> status 2018-12-04 14:04:06 +03:00
William Pitcock f85949cc69 object: factor out fetching functions into Pleroma.Object.Fetcher module 2018-12-04 04:52:09 +00:00
William Pitcock e8caecb5c7 object: move object containment out of transmogrifier into it's own module 2018-12-04 04:52:09 +00:00
William Pitcock 6f90f2c3ac activitypub: rework thread filtering for split object view 2018-12-04 04:52:09 +00:00
William Pitcock d13d953385 activitypub: implement activity flattening 2018-12-04 04:52:09 +00:00
William Pitcock 4482ce7e2d activitypub: normalize objects when streaming them out 2018-12-04 04:52:09 +00:00
lain c443c9bd72 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into validate-user-info 2018-12-01 09:55:46 +01:00
href b19597f602
reverse proxy / uploads 2018-11-30 18:00:47 +01:00
lain 0896cf4c0f Fix most mastodon api bugs. 2018-11-20 20:12:39 +01:00
lain 4c918392c6 Fix most User tests. 2018-11-18 21:40:52 +01:00
William Pitcock c88533209c activitypub: user fetching: use fetch_and_contain_remote_object_from_id() 2018-11-17 20:16:03 +00:00
William Pitcock daa8ec3d62 activitypub: factor out AP object fetching to it's own function and add ID-based containment 2018-11-17 20:15:59 +00:00
William Pitcock 603fccf175 activitypub: fetch_object_from_id(): prefer actor over attributedTo to avoid spoofing 2018-11-17 18:17:17 +00:00
href 5bb88fd174
Runtime configuration
Related to #85

Everything should now be configured at runtime, with the exception of
the `Pleroma.HTML` scrubbers (the scrubbers used can be
changed at runtime, but their configuration is compile-time) because
it's building a module with a macro.
2018-11-06 19:41:15 +01:00
William Pitcock 10f3958468 object: return the deleted object as well 2018-11-01 07:47:50 +00:00
William Pitcock 2bf358d7b4 activitypub: use Object.delete() instead of mutating the database and cache directly 2018-11-01 07:29:12 +00:00
scarlett b92e38d2d4 Add user reactivation task. 2018-10-29 23:13:15 +00:00
William Pitcock 167d3789a5 activitypub: upload: pass through an upload limit if one is provided 2018-10-29 16:43:05 +00:00
William Pitcock 72ea54de6e activitypub: fix possible false positives with broken thread filtering 2018-10-28 05:45:33 +00:00
William Pitcock 26eb11c172 activitypub: add support for filtering broken threads out of timelines 2018-10-26 06:16:51 +00:00
William Pitcock 4db1bc2c0e activitypub: fix error condition match 2018-09-30 05:26:13 +00:00
William Pitcock 707077edde activitypub: don't fall back to OStatus fetching when MRF rejects an object 2018-09-28 00:45:10 +00:00
Haelwenn (lanodan) Monnier 523757be52
[Pleroma.Web.ActivityPub.ActivityPub]: Harden getting endpoints [kroeg] 2018-09-27 20:00:45 +02:00
kaniini 1c9e539b47 Merge branch 'feature/mastodon_api_2.4.x' into 'develop'
Add/Fix Mastodon endpoints for 2.4.3 compatibility

See merge request pleroma/pleroma!266
2018-09-03 12:33:36 +00:00
William Pitcock 0b2c051a04 activitypub: fix possibility of spoofing by containing remote objects to the same domain as their actor 2018-09-01 23:20:02 +00:00
William Pitcock 29b5e30c46 activity: drop recipients_to/recipients_cc fields 2018-08-29 18:41:02 +00:00
William Pitcock de9acebbf3 activitypub: use jsonb query for containment instead of recipients_to/recipients_cc. 2018-08-29 18:41:02 +00:00
William Pitcock 643fae6e36 activitypub: allow querying the activity/object graph bounded to a specific to/cc set 2018-08-29 08:51:23 +00:00
William Pitcock 81673b8136 activity: add recipients_to and recipients_cc fields 2018-08-29 08:42:33 +00:00
Haelwenn (lanodan) Monnier 97e20d2932
[MastodonAPI] the tag field isn’t fixed to a static type in pleroma 2018-08-27 15:08:25 +02:00
Haelwenn (lanodan) Monnier 83efaa3af6
[MastodonAPI] Add streaming of hashtags 2018-08-27 15:08:25 +02:00
lambda 46c7c2380c Merge branch 'feature/relay' into 'develop'
message relay

Closes #144

See merge request pleroma/pleroma!264
2018-08-27 08:29:25 +00:00
lambda 440b459cd1 Merge branch 'bugfix/announce-timeline-flooding' into 'develop'
activitypub: filter destination list for announce activities differently than normal (closes #164)

Closes #164

See merge request pleroma/pleroma!227
2018-08-27 08:25:27 +00:00
kaniini 0f5bff8c66 Merge branch 'develop' into 'feature/relay'
# Conflicts:
#   lib/pleroma/web/activity_pub/utils.ex
2018-08-26 21:06:15 +00:00
eal 51a21284c6 ActivityPub: follow redirects when fetching user 2018-08-20 15:03:25 +03:00
William Pitcock 0ca9b9ff96 run mix format 2018-08-06 08:26:36 +00:00
William Pitcock 1c90f88393 user: remote actors can have no nickname if they are virtual services 2018-08-06 08:22:11 +00:00
William Pitcock 3be58ad34e activitypub: actually send digest header when federating
this is needed for backwards compatibility with non-digest pleroma instances
2018-08-01 10:32:02 +00:00
William Pitcock 2890aef9e8 activitypub: add digest header to outbound messages and sign it 2018-07-31 23:24:30 +00:00
William Pitcock 7c63e70de1 activitypub: use Activity.normalize() in several places instead of using Activity.get_by_ap_id() directly. 2018-06-27 13:08:12 +00:00
William Pitcock 15d624e077 activitypub: use Object.normalize() instead of Object.get_by_ap_id() directly. 2018-06-27 13:07:29 +00:00
lambda dfc96f222c Merge branch 'feature/configurable-blocks' into 'develop'
Add more configurability to how blocks work

See merge request pleroma/pleroma!203
2018-06-25 06:12:29 +00:00
squidboi ea214b8ba6
combined outgoing_blocks with statement 2018-06-24 23:05:44 -07:00
squidboi c4038ede07
fix mind-crushingly dumb syntax error 2018-06-23 14:32:00 -07:00
squidboi f4990283de
change moved attributes into normal variables 2018-06-23 14:27:07 -07:00
squidboi 4e099fcfa9
move configurable module attributes into relevant functions 2018-06-23 14:16:08 -07:00
lambda 90cf75f4a7 Merge branch 'features/column_media_streaming' into 'develop'
Add streaming to media tabs of federated and local TLs

See merge request pleroma/pleroma!225
2018-06-19 09:50:05 +00:00