Commit graph

1314 commits

Author SHA1 Message Date
Thibaut Girka
fe538973dd Ensure self-announces do not widen the audience of the original post 2019-10-01 18:38:57 +02:00
KokaKiwi
1f0be71ea4 Make activity announceable by its author. 2019-10-01 17:47:43 +02:00
Egor Kislitsyn
2dad6dd020
Extract apps actions from MastodonAPIController to AppController 2019-10-01 15:21:46 +07:00
lain
dae744478e Transmogrifier: Handle compact objects in undos. 2019-09-30 18:13:05 +02:00
lain
19bc0b8c79 . 2019-09-30 16:38:19 +02:00
lain
08256e9299 ActivityPub: Federate reactions. 2019-09-30 15:51:09 +02:00
lain
a7f22c6e93 Merge remote-tracking branch 'origin/develop' into reactions 2019-09-30 13:58:14 +02:00
lain
b923842e96 Merge remote-tracking branch 'origin/develop' into reactions 2019-09-30 13:57:54 +02:00
kaniini
26f66fb70a Merge branch 'features/apc2s-media-upload' into 'develop'
AP C2S mediaUpload

Closes #1171

See merge request pleroma/pleroma!1706
2019-09-30 11:21:49 +00:00
Ariadne Conill
84712c35f9 activitypub: object view: include child object for Listen activities 2019-09-30 10:39:48 +00:00
Ariadne Conill
7cad6ea67a pleroma api: hook up scrobbler controller 2019-09-30 10:39:17 +00:00
Ariadne Conill
172c74a77b activitypub: transmogrifier: implement support for Listen activities 2019-09-30 10:39:17 +00:00
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
kaniini
48a82c4609 Merge branch 'refactor/user' into 'develop'
Simplify updating user's `info`

See merge request pleroma/pleroma!1712
2019-09-26 03:00:38 +00: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
f92d7d52c2 Apply suggestion to lib/pleroma/web/activity_pub/views/user_view.ex 2019-09-25 13:38:45 +00:00
rinpatch
f2880d7d29 Credo considered harmful 2019-09-25 16:36:46 +03:00
rinpatch
c7d8ccd0c4 Remove useless with clause 2019-09-25 16:26:47 +03:00
rinpatch
1ddd403339 Apply suggestion to lib/pleroma/web/activity_pub/activity_pub_controller.ex 2019-09-25 13:20:48 +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
Egor Kislitsyn
79b25be4e1 Do not return tuple when unneeded 2019-09-24 15:03:20 +07:00
kaniini
760df67a7b Merge branch 'remove-direct-messages-from-public-timeline' into 'develop'
Fix private and direct statuses not being filtered out from the public timeline for an authenticated user.

Closes #1223

See merge request pleroma/pleroma!1703
2019-09-23 22:35:09 +00:00
kaniini
ad9595ca55 Merge branch 'test/activity_pub/transmogrifier.ex' into 'develop'
added tests /activity_pub/transmogrifier.ex

See merge request pleroma/pleroma!1651
2019-09-23 22:34:52 +00:00
Steven Fuchs
e1d2d69c87 Clean up views 2019-09-23 22:33:59 +00:00
Maksim Pechnikov
38245f1336 Merge branch 'develop' into test/activity_pub/transmogrifier.ex 2019-09-23 21:32:50 +03:00
Haelwenn (lanodan) Monnier
815b904508
Add support for AP C2S uploadMedia
Closes: https://git.pleroma.social/pleroma/pleroma/issues/1171
2019-09-23 20:00:12 +02:00
Haelwenn (lanodan) Monnier
2ad50583f0
Document and test /api/ap/whoami 2019-09-23 19:47:35 +02: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
D Anzorge
0e6085da10 Fix pagination in AP outbox.json 2019-09-19 16:09:07 +02:00
Maksim Pechnikov
d4ed3a35b8 Merge branch 'develop' into test/activity_pub/transmogrifier.ex 2019-09-19 07:35:34 +03:00
Haelwenn
f95a2b2cda Merge branch 'issue/733' into 'develop'
[#733] added test for Ostatus

See merge request pleroma/pleroma!1657
2019-09-18 22:28:10 +00:00
feld
ab2ca3038f Merge branch 'hide-follower-following-count' into 'develop'
Add a setting to hide follows/followers stats from the user profile

See merge request pleroma/pleroma!1663
2019-09-18 21:13:15 +00:00
rinpatch
d32894ae51 Move object internal fields to a constant 2019-09-18 19:24:20 +03:00
Maksim Pechnikov
7dd51652f9 Merge branch 'develop' into issue/733 2019-09-17 21:20:08 +03:00
Haelwenn
2301de3d75 Merge branch 'fix/upgrade_user_from_ap_id' into 'develop'
Fix `Transmogrifier.upgrade_user_from_ap_id/1`

See merge request pleroma/pleroma!1677
2019-09-17 17:16:39 +00: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
eugenijm
450bf7a63c Mastodon API: Add a setting to hide follow/follower count from the user view (hide_follows_count and hide_followers_count) 2019-09-17 14:45:47 +03:00
Roman Chvanikov
76c3e290fc Merge develop 2019-09-16 20:30:42 +03:00
Egor Kislitsyn
085d014f08 Fix Transmogrifier.upgrade_user_from_ap_id/1 2019-09-16 19:26:00 +07: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
kaniini
17142a3720 Merge branch 'feature/delivery-tracking' into 'develop'
Track signed fetches of objects and use them for delete federation

See merge request pleroma/pleroma!1661
2019-09-16 07:39:58 +00:00
Maksim Pechnikov
d75bc728e7 Merge branch 'develop' into issue/733 2019-09-16 07:34:22 +03:00
Maksim Pechnikov
8751809e1e Merge branch 'develop' into support/tests 2019-09-15 14:22:15 +03:00
Ivan Tashkinov
6bcedb693c [#1149] Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
# Conflicts:
#	docs/config.md
#	mix.lock
2019-09-14 16:11:44 +03:00
rinpatch
ba70a8cae6 Merge branch 'develop' into feature/delivery-tracking 2019-09-13 19:42:53 +03:00
Roman Chvanikov
0bd2b85edb Separate Subscription Notifications from regular Notifications 2019-09-13 18:25:27 +03:00
rinpatch
8900cb68ae Apply suggestion to lib/pleroma/web/activity_pub/activity_pub_controller.ex 2019-09-13 15:25:15 +00:00
rinpatch
2784962dba Apply suggestion to lib/pleroma/web/activity_pub/activity_pub_controller.ex 2019-09-13 15:23:03 +00: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
rinpatch
3896a51b8a Apply suggestion to lib/pleroma/web/activity_pub/activity_pub_controller.ex 2019-09-13 10:09:56 +00:00
rinpatch
5170170483 Apply suggestion to lib/pleroma/web/activity_pub/activity_pub_controller.ex 2019-09-13 10:09:46 +00:00
rinpatch
fb96facc32 Remove unused functions and fix credo issues 2019-09-13 12:29:42 +03:00
rinpatch
ce23529d91 Use delivery info when federating deletes 2019-09-13 11:38:17 +03:00
Egor Kislitsyn
39dc9b470c Cleanup Pleroma.Activity and Pleroma.Web.ActivityPub.Utils 2019-09-13 12:44:59 +07:00
Maksim Pechnikov
2b40e57a72 Merge branch 'develop' into test/activity_pub/transmogrifier.ex 2019-09-13 06:55:05 +03:00
rinpatch
769fb778d4 Track object/create activity fetches 2019-09-12 21:37:36 +03:00
lain
8d4b661ecb Transmogrifier: Strip internal emoji reaction fields. 2019-09-12 18:59:13 +02:00
Maksim Pechnikov
4f548cb2b7 added test for Ostatus 2019-09-12 10:25:43 +03:00
Mark Felder
74e4c72c4a Fix double quotes in error logs
Example:

pleroma: [error] Couldn't fetch ""https://pleroma.soykaf.com/objects/6288a14b-0623-40fc-a26a-0d358f8a11ca"", error: nil
2019-09-11 16:16:09 -05:00
Maksim Pechnikov
007e0c1ce1 added tests 2019-09-11 23:19:06 +03:00
Maksim Pechnikov
fcf604fa43 added tests 2019-09-11 07:23:33 +03:00
Maksim Pechnikov
a31af93e1d added tests /activity_pub/transmogrifier.ex 2019-09-10 16:43:10 +03:00
minibikini
11e12b5761 Add Pleroma.Plugs.Cache 2019-09-09 18:53:08 +00:00
feld
edbaf78176 Merge branch 'fix/read-inbox' into 'develop'
Fix `ActivityPubController.read_inbox/2`

Closes #1248

See merge request pleroma/pleroma!1649
2019-09-09 18:21:29 +00:00
Egor Kislitsyn
e0f84d0043 Fix ActivityPubController.read_inbox/2 2019-09-10 01:11:57 +07: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
ae506ca997 fix formatting 2019-09-04 21:40:53 +03:00
Maksim
e2011a667c Apply suggestion to lib/pleroma/web/activity_pub/utils.ex 2019-09-04 18:35:01 +00:00
Maksim
8306078de1 Apply suggestion to lib/pleroma/web/activity_pub/utils.ex 2019-09-04 17:31:14 +00:00
Maksim Pechnikov
a890451187 fetch_announcements -> take_announcements 2019-09-04 17:42:27 +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
feld
7853b3f17d Fix AntiFollowbotPolicy when trying to follow a relay 2019-08-30 00:38:03 +00:00
Haelwenn
d9d7765383 Merge branch 'fix-osada-follow' into 'develop'
Transmogrifier: Fix follow handling when the actor is an object.

Closes #1211

See merge request pleroma/pleroma!1604
2019-08-28 07:10:35 +00:00
lain
f017260cdc Merge remote-tracking branch 'origin/develop' into reactions 2019-08-27 16:38:51 -05:00
Maksim
ffcd742aa0 Apply suggestion to lib/pleroma/web/activity_pub/activity_pub_controller.ex 2019-08-27 17:37:19 +00:00
lain
c30cc039e4 Transmogrifier: Use Containment.get_actor to get actors. 2019-08-27 12:22:30 -05:00
Maksim Pechnikov
00abe099cd added tests for ActivityPub.like\unlike 2019-08-27 16:21:03 +03:00
lain
a0b21c8928 Transmogrifier: Handle incoming emoji reactions. 2019-08-26 16:47:31 -05:00
lain
6e1ec4c5da ActivityPub: Basic EmojiReactions. 2019-08-26 16:29:51 -05:00
lain
3da65292b3 Transmogrifier: Fix follow handling when the actor is an object. 2019-08-26 14:34:52 -05:00
Maksim Pechnikov
654d291b6d update tests 2019-08-24 17:41:53 +03:00
Maksim Pechnikov
6062017493 put_resp_header("content-type", "application/activity+json") -> put_resp_content_type("application/activity+json") 2019-08-24 17:17:17 +03:00
Maksim Pechnikov
8dc6a6b210 fix /inbox for Relay 2019-08-22 22:48:07 +03:00
Maksim Pechnikov
399ca9133b fix test 2019-08-22 21:54:37 +03: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
Maksim Pechnikov
64bfb41c55 fixed unfollow for relay actor 2019-08-22 06:57:55 +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
rinpatch
dc902ad3df Merge branch 'fix/http-signatures-post' into 'develop'
activitypub: publisher: add (request-target) to http signature when POSTing

See merge request pleroma/pleroma!1569
2019-08-14 19:16:52 +00:00
kaniini
1754f8ce6d Apply suggestion to lib/pleroma/web/activity_pub/publisher.ex 2019-08-14 19:05:44 +00:00
Ariadne Conill
5bb418a90d activitypub: publisher: add (request-target) to http signature when POSTing 2019-08-14 19:01:51 +00:00
Ariadne Conill
626e094589 MRF: fix up unserializable option lists in describe implementations 2019-08-14 18:54:17 +00: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
Egor Kislitsyn
f7bbf99caa Use info.fields instead of source_data for remote users 2019-08-14 14:52:54 +07:00
Egor Kislitsyn
7d6f8a7fd7 Linkify custom fields values in ActivityPub.UserViewx 2019-08-14 14:52:54 +07:00
Egor Kislitsyn
5178f960c3 Support user attachment update in Transmogrifier 2019-08-14 14:52:54 +07:00
Egor Kislitsyn
88598c9baf Add profile custom fields to ActivityPub.UserView 2019-08-14 14:52:54 +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
kaniini
fe42844bda Merge branch 'get-context-optimizations' into 'develop'
Preload thread mutes/bookmarks in get_context

See merge request pleroma/pleroma!1562
2019-08-14 01:03:54 +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
rinpatch
9ef31767f2 Merge branch 'feature/mrf-vocabulary' into 'develop'
MRF Vocabulary

See merge request pleroma/pleroma!1559
2019-08-13 22:51:15 +00:00
Ariadne Conill
abfbcfdcb3 mrf_vocabulary: add describe API support 2019-08-13 22:39:26 +00:00
Ariadne Conill
4244e17de0 fix credo 2019-08-13 22:36:24 +00:00
Ariadne Conill
c574b7a1fc MRF: add describe() to all modules, add base MRF configuration to base describe() 2019-08-13 22:08:58 +00:00
Ariadne Conill
694bc43123 MRF: add describe() for gathering and describing the MRF configuration 2019-08-13 21:26:24 +00:00
Maksim
fea4d89e9f tests for Web/ActivityPub/Relay 2019-08-13 21:12:59 +00:00
Ariadne Conill
3fdbeb7087 MRF: add vocabulary policy module 2019-08-13 20:55:38 +00:00
Ivan Tashkinov
0e1c481a94 [#1149] Added more oban workers. Refactoring. 2019-08-13 20:20:26 +03:00
Ariadne Conill
f46cd7e9c7 config: remove legacy activitypub accept_blocks setting
Anyone who is interested in dropping blocks can write their own MRF
policy at this point.  This setting predated the MRF framework.

Disabling the side effect (unsubscription) is still a config option
per policy.
2019-08-13 02:15:21 +00:00
rinpatch
92479c6f48 Do not fetch the reply object in fix_type unless the object has the
`name` key and use a depth limit when fetching it
2019-08-11 22:49:55 +03:00
Ariadne Conill
9cfc289594 MRF: ensure that subdomain_match calls are case-insensitive 2019-08-10 21:19:26 +00:00
Sergey Suprunenko
af4cf35e20 Strip internal fields including likes from incoming and outgoing activities 2019-08-10 18:47:40 +00:00
Maxim Filippov
dfae61c25c Fix deactivated user deletion 2019-08-09 23:05:28 +03:00
Ivan Tashkinov
267262491e Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue 2019-08-09 20:09:56 +03:00
Ivan Tashkinov
b7fad8d395 [#1149] Oban jobs implementation for :federator_incoming and :federator_outgoing queues. 2019-08-09 20:08:01 +03:00
rinpatch
4f1b9c54b9 Do not rembed the object after updating it 2019-08-07 01:02:29 +03:00
rinpatch
73d8d5c49f Stop depending on the embedded object in restrict_favorited_by 2019-08-07 00:12:42 +03:00
Sergey Suprunenko
e8ad116c2a Do not add the "next" key to likes.json if there is no more items 2019-08-04 17:13:06 +00:00
kaniini
86fffe9c27 Merge branch 'patch-2' into 'develop'
Add preferredUsername to service actors so Mastodon can resolve them

See merge request pleroma/pleroma!1526
2019-08-03 18:55:09 +00:00
Thibaut Girka
1fce56c7df Refactor 2019-08-03 18:37:20 +00:00
Thibaut Girka
16cfb89240 Only add preferredUsername to service actor json when the underlying user actually has a username 2019-08-03 18:28:08 +00:00
Sergey Suprunenko
8b2fa31fed Handle MRF rejections of incoming AP activities 2019-08-03 18:12:38 +00:00
Thibaut Girka
a187dbb326 Add preferredUsername to service actors so Mastodon can resolve them 2019-08-03 17:24:57 +00:00
Ivan Tashkinov
23d279e03e [#1149] Replaced RetryQueue with oban-based retries. 2019-08-01 17:28:00 +03: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
Ariadne Conill
492d854e7a transmogrifier: use User.delete() instead of handrolled user deletion code for remote users
Closes #1104
2019-07-28 21:32:04 +00:00
rinpatch
41e0304757 Merge branch 'develop' into feature/hide-follows-remote 2019-07-25 18:43:30 +03:00
Maxim Filippov
f46805bb40 Merge branch 'develop' into feature/admin-api-user-statuses 2019-07-24 02:42:28 +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
Maksim
c49a09ed88 tests for Pleroma.Web.ActivityPub.Publisher 2019-07-23 19:15:48 +00:00
Alexander Strizhakov
b70e659304 Feature/1087 wildcard option for blocks 2019-07-22 14:33:58 +00:00
Ariadne Conill
56019d53a8 activitypub: publisher: align sharedinbox usage with AP specification rules
While debugging the follow breakage, I observed that our sharedInbox usage
did not match the rules in the specification.  Accordingly, I have better
aligned our usage of sharedInbox with the rules outlined in the ActivityPub
specification.
2019-07-22 02:38:31 +00:00
rinpatch
196cad46f3 Resolve merge conflicts 2019-07-20 22:04:47 +03:00
Ariadne Conill
cf9cb953d5 activitypub: represent internal fetch actor 2019-07-17 17:34:57 +00:00
Ariadne Conill
d930e5d5c3 activitypub: introduce internal fetch service actor 2019-07-17 17:14:08 +00:00
Ariadne Conill
a9d6a12bb3 activitypub: controller: rework the way the relay actor is presented so the code can be reused 2019-07-17 16:33:08 +00:00
Ariadne Conill
4885473be2 user: refactor get_or_create_instance_user() into get_or_create_service_actor_by_id() 2019-07-17 16:03:05 +00:00
RX14
96a2890a9e
Add MRF MentionPolicy for dropping posts which mention specific actors 2019-07-17 15:16:55 +01:00
Egor Kislitsyn
70439494af Fix typo 2019-07-16 14:56:07 +07:00
Maksim
c32384c1ea tests for Pleroma.Signature 2019-07-15 13:01:22 +00:00
Egor Kislitsyn
de13c9bb8f List messages must be visible for mentioned users 2019-07-15 14:54:40 +07:00
Egor Kislitsyn
d86a97abfb Add an explanation comment to Publisher.publish/2 2019-07-15 14:20:31 +07: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
rinpatch
97b79efbcd ActivityPub Controller: Actually pass for_user to following/followers
views and give 403 errors when trying to request hidden follower pages
when unauthenticated
2019-07-12 20:54:20 +03:00
rinpatch
1f6ac7680d ActivityPub User view: Following/Followers refactoring
- Render the collection items if the user requesting == the user
rendered
- Do not render the first page if hide_{followers,follows} is set, just
give the URI to it
2019-07-12 19:41:55 +03:00
Egor Kislitsyn
9e06873d58 Add list to Visibility 2019-07-11 19:29:24 +07:00
Egor Kislitsyn
958fb9aa80 Add "listMessage" 2019-07-11 16:36:08 +07:00
Egor Kislitsyn
182f7bbb11 Merge branch 'develop' into feature/addressable-lists 2019-07-11 13:26:59 +07:00
Alex S
beba7bbc85 removing synchronization worker 2019-07-10 17:42:18 +03:00
Alex S
f8786fa6f2 adding following_address field to user 2019-07-10 17:42:18 +03:00
Egor Kislitsyn
5104f65b69 Wrap error messages into gettext helpers 2019-07-10 18:10:09 +07:00
Sergey Suprunenko
2d2b50ccca Send and handle "Delete" activity for deleted users 2019-07-10 05:16:08 +00:00
feld
93a0eeab16 Add license/copyright to all project files 2019-07-10 05:13:23 +00:00
Maksim
bb8065a1fd tests MRF filters 2019-07-10 05:12:21 +00:00
Haelwenn
95c085174d Merge branch 'test-speedup' into 'develop'
Testing: Don't federate in testing.

See merge request pleroma/pleroma!1391
2019-07-09 15:35:28 +00:00
lain
abe2e8881f Testing: Don't federate in testing. 2019-07-09 15:30:51 +09:00
Ivan Tashkinov
2b9d914089 [#161] Refactoring, documentation. 2019-06-30 15:58:50 +03:00
Ivan Tashkinov
5b7b1040b3 [#161] Limited replies depth on incoming federation in order to prevent memory leaks on recursive replies fetching. 2019-06-29 20:04:50 +03:00
William Pitcock
034986e1fd MRF: add mediaproxy warming policy 2019-06-28 23:19:20 +00:00
Sergey Suprunenko
2c63c67512 Rework user deletion 2019-06-24 18:59:12 +00:00
Eugenij
f2c03425b0 Broadcast conversation update when DM is deleted 2019-06-24 07:14:04 +00:00
William Pitcock
127a5a7d65 change the anti-link-spam MRF implementation to use old_user? instead of the previous name 2019-06-21 22:27:14 +00:00
William Pitcock
21dacd4b15 unbreak polls 2019-06-19 16:33:49 +00:00
William Pitcock
736d8ad6be implement anti link spam MRF 2019-06-19 15:58:32 +00:00
Alexander Strizhakov
c2ca1f22a2 it is changed in compile time
we can't change module attributes and endpoint settings in runtime
2019-06-14 15:45:05 +00:00
rinpatch
d020f68e87 Transmogrifier: Do not crash if inReplyTo does not exist and can't be fetched 2019-06-07 20:40:38 +03:00
lain
e1370ba131 Utils: Use update_follow_state_for_all when appropriate. 2019-06-05 16:51:28 +02:00
lain
ad19bfc7fe Utils: Split update_follow_state and update_follow_state_for_all. 2019-06-05 16:43:35 +02:00
lain
076c9ae40e User: Remove superfluous maybe_follow. 2019-06-05 14:24:31 +02:00
lain
3115b64cfe Transmogrifier: Add tests for incoming follows to locked accounts. 2019-06-05 14:10:46 +02: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
d3d1704e84 Merge branch 'develop' into issue/941 2019-06-04 15:06:58 +03:00
Maksim Pechnikov
0acfcf6c52 update ActivityPub#fetch_activities_query 2019-06-04 15:04:36 +03:00
rinpatch
29b022bb59 Restrict get_existing_votes to only get Create activities 2019-06-04 12:42:10 +03:00
Egor Kislitsyn
9ce928d823 Merge remote-tracking branch 'pleroma/develop' into feature/addressable-lists 2019-06-04 16:28:23 +07:00
William Pitcock
37a4ba0624 utils: access inReplyTo as an explicit string when fetching poll results` 2019-06-04 08:45:03 +00:00
Maksim Pechnikov
4f2e359687 Merge branch 'develop' into issue/941 2019-06-04 09:49:08 +03:00
kaniini
9f0d0d0805 Merge branch 'feature/mrf-subchain' into 'develop'
MRF: subchain policy

See merge request pleroma/pleroma!1233
2019-06-04 05:49:54 +00:00
Maksim Pechnikov
080e1aa70e add option skip_thread_containment 2019-06-03 16:13:37 +03:00
rinpatch
026b245dbc Merge branch 'develop' into feature/polls-2-electric-boogalo 2019-06-03 11:14:52 +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
William Pitcock
561a21986d formatting 2019-06-02 10:29:15 +00:00
William Pitcock
4087ccdab8 mrf: add subchain policy 2019-06-02 10:07:42 +00:00
William Pitcock
edf772d41e mrf: allow a policy chain to be specified when filtering 2019-06-02 09:44:42 +00: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
kaniini
e706b42f51 Merge branch 'bugfix/visibility-indicator-litepub-dm' into 'develop'
visibility: if litepub:directMessage is asserted, always report the object as "direct" visibility

See merge request pleroma/pleroma!1230
2019-06-01 03:39:13 +00:00
Sergey Suprunenko
2bbc2a801f Remove all follower collections but actor's from "cc" 2019-06-01 03:26:45 +00:00
William Pitcock
f2efe24cf8 visibility: if litepub:directMessage is asserted, always report the object as "direct" visibility 2019-06-01 03:24:08 +00: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
rinpatch
a9eaa55885 Fix fix_explicit_addressing moving follower collection to cc and add tests for it 2019-05-31 14:17:05 +03:00
Egor Kislitsyn
99f70c7e20 Use Pleroma.Config everywhere 2019-05-30 15:33:58 +07:00
lambda
5bb843ceec Merge branch 'refactor/die-httpoison-die' into 'develop'
remove @httpoison, @ostatus and @websub compile-time constants

See merge request pleroma/pleroma!1203
2019-05-26 13:33:11 +00:00
William Pitcock
79503ce90f mrf: simple policy: fix matching imported activitypub and ostatus statuses 2019-05-26 02:01:24 +00:00
William Pitcock
9bec891eb4 kill @httpoison 2019-05-25 04:24:21 +00: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
baf72d6c58 mrf: simple policy: add the ability to strip avatars and banners from user profiles 2019-05-22 18:53:12 +00:00
William Pitcock
60f882b09f activitypub: run user objects through MRF filters 2019-05-22 18:53:12 +00:00
William Pitcock
75b6c4b004 mrf: defang policy modules for filtering user profile objects 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
William Pitcock
045803346d move key generation functions into Pleroma.Keys module 2019-05-22 03:58:15 +00: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
Aaron Tinio
2375e9a95b Add report filtering to MRF.SimplePolicy 2019-05-20 06:02:50 +08:00
rinpatch
6430cb1bf7 Restrict poll replies from fetch queries by default 2019-05-19 17:44:18 +03:00
rinpatch
5ece901af3 Resolve merge conflicts and remove IO.inspects 2019-05-18 13:37:38 +03:00
William Pitcock
78588dbd80 mrf: simple policy: mark all posts instead of posts with media as sensitive if they match media_nsfw 2019-05-17 18:49:10 +00: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
Alexander Strizhakov
7ed682213f Fix/902 random compile failing 2019-05-17 07:25:20 +00:00
Aaron Tinio
70235ce840 Fix typo: s/"tags"/"tag"/g 2019-05-17 09:02:34 +08: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
Egor Kislitsyn
fc7246d715 Merge remote-tracking branch 'pleroma/develop' into feature/addressable-lists 2019-05-16 17:54:24 +07: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
rinpatch
62e42b03ab Handle incoming Question objects 2019-05-15 20:10:16 +03:00
William Pitcock
a591ab6112 activity pub: remove Ecto SQL query dumps 2019-05-15 16:56:46 +00:00
William Pitcock
31db31c587 activitypub: visibility: use SQL thread_visibility() function instead of manually walking the thread 2019-05-15 15:54:10 +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
lambda
4440e23547 Merge branch 'chore/extricate-http-signatures' into 'develop'
switch to pleroma/http_signatures library

See merge request pleroma/pleroma!1155
2019-05-15 15:37:31 +00:00
lain
cbb3451023 CommonAPI: Refactor visibility, forbid public to private replies. 2019-05-15 16:30:08 +02:00
Egor Kislitsyn
a7a8f3bc2c Merge remote-tracking branch 'pleroma/develop' into feature/addressable-lists 2019-05-15 14:31:24 +07:00
William Pitcock
071f78733a switch to pleroma/http_signatures library 2019-05-14 20:03:13 +00: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
Mark Felder
498bfdf403 Switch to Jason over Poison 2019-05-13 15:37:38 -05: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
44b182732e nodeinfo: gather supported protocol names from federation modules 2019-05-12 19:15:29 +00:00
William Pitcock
28f7f4c6de webfinger: build the response based on enabled federation modules 2019-05-12 19:05:03 +00:00
William Pitcock
c23276a59a activitypub: publisher: fixups 2019-05-12 05:04:24 +00:00
William Pitcock
85377c0b67 federator: move activitypub relaying to the AP publisher module 2019-05-12 05:04:16 +00: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
a4598b5e8b Visibility: Make it more resilient. 2019-05-08 18:08:50 +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
kaniini
14deed7f7d Merge branch 'refactor/preload-bookmarks-with-activities' into 'develop'
Optimize bookmarks by preloading them with activities

Closes #861

See merge request pleroma/pleroma!1121
2019-05-07 19:37:41 +00: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
kaniini
a1a0df19c4 Merge branch 'docs/MRF-modules' into 'develop'
Documentation: MRF Modules

See merge request pleroma/pleroma!1122
2019-05-07 16:15:27 +00:00
lambda
238dd72fad Merge branch 'conversations_three' into 'develop'
Conversations once more.

See merge request pleroma/pleroma!1119
2019-05-07 14:43:21 +00:00
Egor Kislitsyn
1557b99beb Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-05-07 16:51:11 +07:00
Haelwenn (lanodan) Monnier
e41a2f98d5
mrf/tag_policy.ex: Add some documentation
mrf_tag:disable-remote-subscription exact way of working is quite
unclear to me. Is it the requester that is denied if they have a tag,
or is it the requestee if they have one?
2019-05-06 04:53:11 +02:00
Haelwenn (lanodan) Monnier
af62ace954
Add short documentation on every MRF Policy 2019-05-06 04:49:50 +02:00
Haelwenn (lanodan) Monnier
2f76a40d02
formatter.ex: Add get_emoji_map/1 2019-05-03 16:27:50 +02: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
Alex S
f11e7037c2 test fixes 2019-05-01 16:09:53 +07:00
Alex S
bdfa3a6fa8 Merging with develop
Conflicts:
lib/pleroma/web/activity_pub/transmogrifier.ex
lib/pleroma/user.ex
2019-05-01 12:29:33 +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
William Pitcock
0fd0ffcd76 activitypub: transmogrifier: send reject follow if following does not succeed 2019-04-25 00:48:45 +00: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