Commit graph

2043 commits

Author SHA1 Message Date
William Pitcock
8d06be35e0 activitypub: utils: add determine_explicit_mentions() and tests 2019-01-20 02:27:48 +00:00
kaniini
42612b1c8d Merge branch 'bugfix/improve-boost-targeting' into 'develop'
improve handling of non-public Announces

See merge request pleroma/pleroma!681
2019-01-19 23:44:08 +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
dbc4e92509 activitypub: transmogrifier: do not clobber the addressing on relayed announcements 2019-01-17 23:21:31 +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
8e9f1d5587 activitypub: relay: chase selective public announce changes 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
sxsdv1
948fba6f76 Fix bad link in likes collection
Don't copy and paste, mkay
2019-01-17 18:21:43 +01: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
fa0392e49c Merge branch 'activitypub-likes' into 'develop'
Activitypub c2s likes

See merge request pleroma/pleroma!658
2019-01-14 07:27:05 +00:00
William Pitcock
6e5b0406b9 mrf: add no placeholder-text policy, strips pointless "." content from posts with images 2019-01-14 05:42:38 +00:00
sxsdv1
868034375c Add likes to activitypub object representation
Top level of the likes OrderedCollection is inlined to get immediate
access to totalItems. Because the count can be returned without scanning
the database for like activities the extra query is saved when the
client only wants to display the total.
2019-01-12 20:24:41 +01:00
sxsdv1
581edd5a91 Add route to get object like activities 2019-01-12 20:24:38 +01:00
sxsdv1
36711e1c83 Handle client submitted activitypub like activity 2019-01-12 20:24:35 +01:00
sxsdv1
1eb7318831 Prepare all types objects before serialising
Activities returned from inbox can include other types of objects like
Article
2019-01-12 20:24:32 +01:00
kaniini
e4afe1359b Merge branch 'activitypub-dereference-activity-id' into 'develop'
Support activity+json request for activity

See merge request pleroma/pleroma!641
2019-01-10 18:42:36 +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
sxsdv1
20c0dd1e24 Support activity+json request for activity 2019-01-09 09:33:30 +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
sxsdv1
4e1cc2bab6 Implement delete activity 2019-01-01 23:20:43 +01:00
sxsdv1
551c3d9391 Split create activity specifics from update_outbox 2019-01-01 23:20:28 +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
sxsdv1
f40562b4e1 Respond with full activity to outbox post 2018-12-30 12:01:39 +01:00
sxsdv1
1e781715c8 Limit activity types accepted to outbox to only 'Create' 2018-12-30 12:01:39 +01:00
sxsdv1
569bad8210 Create activity when client posts to outbox 2018-12-30 12:01:39 +01:00
sxsdv1
26dc2dddab Implement ActivityPub inbox view
More or less verbatim copied from the outbox template with only changes
to the activities fetched and url reported
2018-12-30 12:01:39 +01:00
sxsdv1
aa082ca7b6 Wire up stub routes for client calls of activitypub inbox/outbox
Code style: remove wrapping function of outbox
2018-12-29 22:22:03 +01: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
William Pitcock
71f6d9f418 transmogrifier: significantly rework handling of peertube videos, add test 2018-12-23 13:31:08 +00:00
Haelwenn (lanodan) Monnier
3aff8067e4 transmogrifier: When it’s a Video move "url" to "attachment" 2018-12-23 13:00:25 +00:00
Karen Konou
a7f07bb6e5 Implement kaniini's tweaks 2018-12-23 12:24:53 +01:00
Karen Konou
c76179419d Renamed the things 2018-12-23 11:14:29 +01:00
Karen Konou
409ff60bf8 Fix formatting 2018-12-22 23:32:38 +01:00
Karen Konou
92362e1e22 Implement large thread filter 2018-12-22 23:18:31 +01: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
kaniini
b0adea30b3 Merge branch 're-mrf' into 'develop'
Add a MRF Policy for appending re: to identical subjects in replies.

See merge request pleroma/pleroma!499
2018-12-06 15:36:41 +00:00
scarlett
d27e3f269f Rename regular expression 'have_re' to 'reply_prefix'. 2018-12-06 14:00:41 +00:00
scarlett
3dff61ebec Harden re: detection. 2018-12-06 13:48:12 +00:00
scarlett
6a6aaa0e1a Use object.normalize. 2018-12-06 11:37:29 +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
lain
76d6b1c6ab Merge remote-tracking branch 'origin' into follower-hiding 2018-12-05 21:27:56 +01: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
scarlett
8a1df182cf Add a MRF Policy for appending re: to identical subjects in replies. 2018-12-04 23:35:07 +00:00
kaniini
114b95cee2 Merge branch 'feature/integration_tesla' into 'develop'
[#354] Move all http interactions to Tesla

See merge request pleroma/pleroma!487
2018-12-04 18:41:00 +00:00
William Pitcock
b57d83e3c9 MRF: simple policy: fix media removal 2018-12-04 18:30:01 +00:00
Maksim Pechnikov
87109482f3 status_code -> status 2018-12-04 14:04:06 +03:00
William Pitcock
b3b52b58c3 activitypub: transmogrifier: remove obsolete fetch_obj_helper() 2018-12-04 04:52:09 +00: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
cf139e3eec activitypub: transmogrifier: ensure we send nested object in Create 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
57d90e7afe activitypub: relay: fix improper use of Object.normalize() 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
6be0ab1e55 Hide network in ap. 2018-12-02 17:35:32 +01: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
d0ec2812bd Merge remote-tracking branch 'origin' into validate-user-info 2018-11-30 17:34:20 +01:00
lain
8f1fffebc6 Fix transmogrifier test. 2018-11-30 17:31:05 +01:00
William Pitcock
8c05d19c7f MRF: add user allowlist module 2018-11-26 23:51:58 +00:00
kaniini
675653ceb7 Merge branch 'feature/admin-api' into 'develop'
Add a admin API

See merge request pleroma/pleroma!366
2018-11-22 00:28:04 +00:00
lain
0896cf4c0f Fix most mastodon api bugs. 2018-11-20 20:12:39 +01:00
lain
40d9d2098c Fix user updating from AP. 2018-11-18 22:15:03 +01:00
lain
4c918392c6 Fix most User tests. 2018-11-18 21:40:52 +01:00
William Pitcock
f6be980f4f activitypub: object view: avoid leaking private details 2018-11-17 22:30:53 +00:00
William Pitcock
dfcfb184b1 activitypub: transmogrifier: make deletes secure 2018-11-17 21:22:57 +00:00
Haelwenn (lanodan) Monnier
12ccf0c4f8
Change Relay from status to {status, message} 2018-11-17 22:12:13 +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
Haelwenn (lanodan) Monnier
265c8c5209
Pleroma.Web.ActivityPub.Relay: make {un,}follow return :ok only if it worked, :error if it didn’t 2018-11-17 20:25:56 +01:00
William Pitcock
603fccf175 activitypub: fetch_object_from_id(): prefer actor over attributedTo to avoid spoofing 2018-11-17 18:17:17 +00:00
William Pitcock
97e50f3191 activitypub: transmogrifier: sanitize internal representation details from outgoing objects
this causes JSON-LD parsers to get upset and has also lead to developer confusion from outside
projects which tried to parse our internal data.  accordingly, it seems better to just remove
it.
2018-11-10 12:24:20 +00:00
William Pitcock
f8310114a6 activitypub: object view: sanitize both the activity and the object when an activity is given for rendering 2018-11-10 12:04:09 +00:00
kaniini
7daa102fa4 Merge branch 'bugfix/local-jsonld-context' into 'develop'
Host LitePub JSON-LD context locally

See merge request pleroma/pleroma!435
2018-11-10 11:37:44 +00:00
William Pitcock
e4971553c7 activitypub: utils: use same object type list for mention extraction as insertion 2018-11-09 13:40:39 +00:00
William Pitcock
b9871e7e5a activitypub: utils: wrap Note objects in a Create when extracting mentions 2018-11-09 09:01:40 +00:00
William Pitcock
6cadfcb21e activitypub: utils: switch to using new Notification.get_notified_from_activity(). 2018-11-09 09:01:40 +00:00
William Pitcock
6b4064fa5d activitypub: transmogrifier: unify mention extraction 2018-11-08 19:41:36 +00:00
Haelwenn (lanodan) Monnier
934125695d
Move /litepub-1.0.jsonld to /schemas/litepub-0.1.jsonld 2018-11-08 20:21:45 +01:00
William Pitcock
3e33479c05 activitypub: transmogrifier: only consider to users as mention targets 2018-11-08 18:58:27 +00:00
Haelwenn (lanodan) Monnier
abcacec97d
Pleroma.Web.ActivityPub.Utils: Use locally-served JSON-LD Litepub context instead of Github-hosted one 2018-11-08 19:38:38 +01:00
William Pitcock
da16ada424 utils: use litepub @context instead of that huge mess 2018-11-08 16:52:14 +00:00
William Pitcock
f733470037 user view: unify a @context entry that was missed 2018-11-08 16:51:48 +00:00
lambda
59cf7cf235 Merge branch 'small-jsonld-refactor' into 'develop'
Small jsonld refactor

See merge request pleroma/pleroma!433
2018-11-08 16:23:58 +00:00
lain
34bd411781 Unify json ld header handling. 2018-11-08 16:39:38 +01:00
lain
3b02fd9fb7 Small refactor. 2018-11-08 16:05:28 +01:00
kaniini
b451a92d78 Merge branch 'runtime-config' into 'develop'
Runtime configuration

See merge request pleroma/pleroma!430
2018-11-07 22:32:34 +00:00
href
9070588493
Runtime config: MRF changes 2018-11-07 10:40:24 +01: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
kaniini
0f3e78addb Merge branch 'runtime-router' into 'develop'
Runtime configured router

See merge request pleroma/pleroma!426
2018-11-06 15:35:19 +00:00
href
2bc924ba45
Get rid of Pleroma.Config in favor of Application
Discussed in https://git.pleroma.social/pleroma/pleroma/merge_requests/426#note_7232
2018-11-06 15:12:53 +01:00
href
6fe23c5458
Runtime configured router 2018-11-05 15:19:03 +01:00
William Pitcock
9f03b5c4f7 activitypub: transmogrifier: add support for Page objects 2018-11-01 09:59:43 +00:00
kaniini
eba9a62024 Merge branch 'feature/relay-tests' into 'develop'
relay tests

See merge request pleroma/pleroma!411
2018-11-01 09:10:51 +00:00
Haelwenn
40676d7683 Merge branch 'bugfix/prismo.news_article_url' into 'develop'
Bugfix/prismo.news article url

Closes #352

See merge request pleroma/pleroma!410
2018-11-01 09:05:16 +00:00
lain
1e9ced5af4 Test Relay, switch to runtime configuration. 2018-11-01 09:01:43 +00:00
Haelwenn (lanodan) Monnier
b2da5262ea
Pleroma.Web.ActivityPub.Transmogrifier: fix_url when not a string/empty
Thanks prismo.news, I hate it
2018-11-01 09:56:37 +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
f6cb963df2 activitypub utils: fix recipient check when the message is unaddressed (mastodon) 2018-10-26 01:24:22 +00:00
William Pitcock
ce70eb8c00 activitypub utils: fix user splicing 2018-10-25 05:24:01 +00:00
William Pitcock
2f1f1a4f30 activitypub: splice users into recipient lists when they receive messages at their personal inbox
closes #343
2018-10-25 05:02:21 +00:00
William Pitcock
5383887bd4 transmogrifier: do not try to contain origin of something which doesn't have one 2018-10-25 04:27:33 +00:00
William Pitcock
a71b822013 activitypub: always track following state for async reasons 2018-10-05 23:31:00 +00:00
William Pitcock
8ce217776d activitypub transmogrifier: better manage follow state 2018-10-05 23:30:34 +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
William Pitcock
5c312ad677 activitypub inbox: only accept unsigned/invalid-signature relayed creates, nothing else
although the previous handling assumed any unsigned/invalid signature message was a Create,
lets make it more explicit
2018-09-28 00:03:59 +00:00
Haelwenn (lanodan) Monnier
c739737998
transmogrifier: get_actor called without casting attributedTo in actor and actor is nil 2018-09-27 20:00:48 +02:00
Haelwenn (lanodan) Monnier
9446b02bdf
transmogrifier: Just make attachement maps into a list and reroll 2018-09-27 20:00:48 +02:00
Haelwenn (lanodan) Monnier
e53da692fb
transmogrifier: Use the correct variable and prefer inspect in case of a bad type being passed on 2018-09-27 20:00:48 +02:00
William Pitcock
d830a243a3
transmogrifier: more robustly handle dereferencing pointer URIs 2018-09-27 20:00:48 +02:00
Haelwenn (lanodan) Monnier
4c3a80de96
transmogrifier: Use oneliners when applicable 2018-09-27 20:00:47 +02:00
William Pitcock
ed8dfa3029
transmogrifier: reformat cond block by hand 2018-09-27 20:00:47 +02:00
Haelwenn (lanodan) Monnier
eebe33e86a
transmogrifier: Add support for array-less hashtags, add broken announce, harden get_actor 2018-09-27 20:00:47 +02:00
Haelwenn (lanodan) Monnier
f3291acc91
transmogrifier: pro-actively add support for Hashtag without array in tag 2018-09-27 20:00:47 +02:00
Haelwenn (lanodan) Monnier
22927f3a34
transmogrifier: Use a cond, add proactive support for arrays 2018-09-27 20:00:46 +02:00
Haelwenn (lanodan) Monnier
0aac72f1d3
[Pleroma.Web.ActivityPub.Transmogrifier]: quick fix when tag is a Map 2018-09-27 20:00:46 +02:00
Haelwenn (lanodan) Monnier
28e8a8ab36
[Pleroma.Web.ActivityPub.Transmogrifier]: fix emoji in tag when it’s not in a array [kroeg]
Also simplified the code for name trimming.

And not copying the Map.merge part as it looks buggy.
See: https://queer.hacktivis.me/objects/a9f21ebc-9a12-4a6c-89d5-3d46955c6ee8
2018-09-27 20:00:46 +02:00
Haelwenn (lanodan) Monnier
f8a0cb9c0b
[Pleroma.Web.ActivityPub.Transmogrifier]: fix when attachment contain is just a Map [kroeg] 2018-09-27 20:00:46 +02:00
Haelwenn (lanodan) Monnier
a4abb124ea
[Pleroma.Web.ActivityPub.Transmogrifier]: Fix when inReplyTo is a inlined post [kroeg] 2018-09-27 20:00:46 +02:00
Haelwenn (lanodan) Monnier
523757be52
[Pleroma.Web.ActivityPub.ActivityPub]: Harden getting endpoints [kroeg] 2018-09-27 20:00:45 +02:00
William Pitcock
342ed84446 MRF: add policy for normalizing HTML markup (local and remote) to a specific policy 2018-09-16 01:25:36 +00:00
William Pitcock
d3248e13e3 activitypub: transmogrifier: allow profile updates from bots 2018-09-10 01:57:03 +00:00
William Pitcock
e0b8c0ccba MRF: reject non-public: use pattern match to remove unnecessary if block 2018-09-10 01:16:03 +00:00
William Pitcock
88094c266d MRF: simple policy: refactor module to use guards and pattern matching 2018-09-10 01:16:02 +00:00
William Pitcock
97253df3ee MRF: simple policy: contain media removal/nsfw ops to create activities only 2018-09-10 01:16:01 +00: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
03e92977cb transmogrifier: fix peertube/plume actor handling 2018-09-01 23:44:19 +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
63094cfd3e Merge branch 'feature/emoji-in-local-users' into 'develop'
Add emoji to local user profiles.

Closes #202

See merge request pleroma/pleroma!271
2018-08-26 23:24:41 +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
William Pitcock
52b44184b4 transmogrifier: reject activities lacking a valid ID 2018-08-23 01:25:26 +00:00
Haelwenn (lanodan) Monnier
f5b056e3ce
[Pleroma.Web.ActivityPub.Transmogrifier]: Fix likes 2018-08-21 18:26:12 +02:00
Haelwenn (lanodan) Monnier
74c74decf5
Basic peertube support. 2018-08-21 18:24:09 +02:00
Haelwenn (lanodan) Monnier
ef4f982e2c
Pleroma.Web.ActivityPub.Transmogrifier: Fix actor being a list of objects (Peertube) 2018-08-21 18:24:06 +02:00
eal
f1c407e777 Merge branch 'fix/redirect-on-user-fetch' into 'develop'
ActivityPub: follow redirects when fetching user

See merge request pleroma/pleroma!278
2018-08-20 12:13:07 +00:00
eal
51a21284c6 ActivityPub: follow redirects when fetching user 2018-08-20 15:03:25 +03:00
kaniini
5fbb14f5ec Merge branch 'bugfix/federation-kroeg' into 'develop'
fix federation with kroeg

See merge request pleroma/pleroma!272
2018-08-16 15:20:15 +00:00
kaniini
38361e7b5e Merge branch 'fix/put-repeats-at-activitypub-outbox' into 'develop'
Fix: Output repeats at ActivityPub outbox

Closes #191

See merge request pleroma/pleroma!175
2018-08-16 15:19:46 +00:00
William Pitcock
f446e75577 activitypub: transmogrifier: add necessary translations for kroeg 2018-08-14 17:09:11 +00:00
eal
1ed1ff17a4 ActivityPub user view: include tag if present. 2018-08-13 16:11:48 +03:00
William Pitcock
de6be63b1b activitypub: do not show observable effects of non-public boosts 2018-08-06 11:28:57 +00:00
William Pitcock
0ca9b9ff96 run mix format 2018-08-06 08:26:36 +00:00
William Pitcock
1e1a29f084 activitypub: relay: fix up AS2 actor object 2018-08-06 08:22:17 +00:00
William Pitcock
2b628f2341 relay: only relay create activities 2018-08-06 08:22:16 +00:00
William Pitcock
56dc8db582 activitypub: relay: add relay following/followers collection URLs 2018-08-06 08:22:14 +00:00
William Pitcock
1c40a631e8 federator: actually relay the public activities 2018-08-06 08:22:14 +00:00
William Pitcock
266b314051 relay: fix invoking federator, use a timer to sleep the mix task to force a context switch 2018-08-06 08:22:12 +00:00
William Pitcock
99be3d3dcc relay: add relay follow/unfollow tasks 2018-08-06 08:22:12 +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
b7ca7f282a activitypub: refactor relay concerns into new relay module 2018-08-06 08:22:10 +00:00
William Pitcock
00e890264c activitypub: represent relay actor at instance root 2018-08-06 08:22:09 +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
Haelwenn (lanodan) Monnier
7501481db4
[Pleroma.Web.ActivityPub.Transmogrifier] Add Person finding 2018-07-12 23:37:07 +02:00
Haelwenn (lanodan) Monnier
8472fba2a7
[Pleroma.Web.ActivityPub.Transmogrifier]: Fix actor key outside of object
The code here is copied from feature/peertube by lain.

Co-authored-by: lain <lain@soykaf.club>
2018-07-12 23:37:00 +02:00
lambda
d93789dfde Merge branch 'feature/object-normalization' into 'develop'
object normalization

See merge request pleroma/pleroma!238
2018-07-12 16:48:15 +00:00
William Pitcock
590d4df77c activitypub: more robustly handle object-to-actor associations 2018-07-12 16:39:03 +00:00
lambda
4a922305af Merge branch 'feature/article-support' into 'develop'
article support (plume, etc)

See merge request pleroma/pleroma!240
2018-07-12 05:58:39 +00:00
William Pitcock
8546551257 activitypub: switch to using x509 representation for public keys instead of pkcs#1 2018-07-12 03:30:22 +00:00
William Pitcock
971bb4f2bd activity interpretation: formatting 2018-06-27 13:38:19 +00:00
William Pitcock
bd479606ba utils: make_create_data: add support for Article objects 2018-06-27 13:37:35 +00:00
William Pitcock
c42f28b82c transmogrifier: accept Article activities 2018-06-27 13:37:26 +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
Haelwenn (lanodan) Monnier
c45133377a
lib/pleroma/web/activity_pub/mrf/simple_policy.ex: mix format
Hnng!
2018-06-23 16:12:57 +02:00
William Pitcock
60d6038be5 mrf simple: add accept lists
accept lists supplement reject lists by requiring that any message accepted by contained
by the accept list.

in other words, this functionality can be used to implement instances similar to
awoo.space.
2018-06-19 21:28:24 +00: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
lambda
db0731b6ac Merge branch 'feature/exclude-replies-filter' into 'develop'
activitypub: support filtering activities by whether or not they are a reply (closes #109)

Closes #109

See merge request pleroma/pleroma!226
2018-06-19 05:15:11 +00:00
William Pitcock
c95941e64d activitypub transmogrifier: fix handling of contentMap. 2018-06-18 22:14:50 +00:00
William Pitcock
591c82620e activitypub: filter destination list for announce activities differently than normal (closes #164) 2018-06-18 04:36:25 +00:00
William Pitcock
4f589998ee activitypub: support filtering activities by whether or not they are a reply (closes #109) 2018-06-18 03:21:32 +00:00
Haelwenn (lanodan) Monnier
b670d4d683
MastodonAPI: Add streaming to media tabs of federated and local TLs 2018-06-17 16:17:15 +02:00
squidboi
2e294ee44a Merge branch 'develop' into feature/configurable-blocks 2018-06-16 15:37:16 -07:00
lambda
1ea4a18ad8 Merge branch 'feature/configure-mrf-rejectnonpublic' into 'develop'
Configs for mrf_rejectnonpublic

See merge request pleroma/pleroma!205
2018-06-16 10:39:36 +00:00
lambda
2723fb5150 Merge branch 'bugfix/mrf-orphaning' into 'develop'
activitypub transmogrifier: handle activity lookup failure

Closes #156

See merge request pleroma/pleroma!216
2018-06-14 07:20:54 +00:00
lambda
8c7fdcb31b Merge branch 'feature/twitterapi-unrepeat' into 'develop'
Add TwitterAPI unretweet endpoint and cleanup AP.unannounce

See merge request pleroma/pleroma!218
2018-06-14 07:19:36 +00:00
Francis Dinh
1555c66650 Add unretweet TwAPI endpoint and cleanup AP.unannounce 2018-06-13 21:33:36 -04:00
William Pitcock
401e8af943 activitypub transmogrifier: handle activity lookup failure
with the introduction of MRF, it is possible that an activity may be orphaned from it's parent, if
an activity in the chain was rejected by the active MRF policies.  accordingly, handle this in the
same way as any other orphaned activity.

closes #156
2018-06-13 22:19:38 +00:00
lambda
3f42806b1b Merge branch 'develop' into 'develop'
Dedupe uploads

See merge request pleroma/pleroma!115
2018-06-12 08:26:26 +00:00
lambda
564c73ab24 Merge branch 'feature/list-streaming' into 'develop'
MastoAPI: Add streaming for lists.

See merge request pleroma/pleroma!183
2018-06-12 07:19:45 +00:00
William Pitcock
d96377f359 activitypub transmogrifier: accept/reject outgoing: we might send the actual object instead of the URI in some cases, handle it 2018-06-11 22:15:53 +00:00
William Pitcock
5eed1ea181 run mix format 2018-06-11 22:15:53 +00:00
William Pitcock
4084889a2d activitypub transmogrifier: remove debug code 2018-06-11 22:15:53 +00:00
William Pitcock
76f80ba8c2 activitypub: when unfollowing, update the follow activity's disposition to 'cancelled' so it cannot be reused 2018-06-11 22:15:53 +00:00
William Pitcock
f328de8eb7 activitypub transmogrifier: send Rejects in the format Mastodon wants 2018-06-11 22:15:53 +00:00
William Pitcock
876ad6aa38 activitypub transmogrifier: send @context on accept activities 2018-06-11 22:15:53 +00:00
William Pitcock
760eb72a38 add a bunch of stuff 2018-06-11 22:15:53 +00:00
William Pitcock
9c88933422 implement tracking of follow requests 2018-06-11 22:15:53 +00:00
William Pitcock
6041380774 activitypub transmogrifier: learn locked state in Update messages 2018-06-11 22:15:27 +00:00
William Pitcock
e5206752e1 activitypub: only send accept back automatically if the account is not locked 2018-06-11 22:15:27 +00:00
lambda
7f79b467b1 Merge branch 'feature/domain-blocks' into 'develop'
Domain blocks

See merge request pleroma/pleroma!190
2018-06-11 11:19:45 +00:00
squidboi
07f0cfa53f
add allow_followersonly and allow_direct options for configuring mrf_rejectnonpublic 2018-06-10 16:40:51 -07:00
squidboi
4f9ecfc77a formatting 2018-06-09 04:28:11 +00:00
squidboi
8903f1ad4d more fixes 2018-06-08 19:07:14 -07:00
squidboi
16d896f526 fixes 2018-06-08 19:01:14 -07:00
squidboi
2847fc8f90 add option to not unfollow on block, and option to not federate outgoing blocks 2018-06-08 17:12:16 -07:00
lambda
45a935f0bd Merge branch 'users' into 'develop'
Fix users lookup/return type

See merge request pleroma/pleroma!201
2018-06-08 11:10:10 +00:00
lambda
bb639a362e Merge branch 'feature/rejectnonpublic' into 'develop'
Add MRF to drop all posts with "followers-only" or "direct" privacy settings

See merge request pleroma/pleroma!202
2018-06-08 11:08:50 +00:00
Rachel H
fa0c2727d8 Fix users lookup/return type
* Allow viewing user in frontend by id on pageload
2018-06-07 23:18:45 -07:00
squidboi
e2c4013c88
s/get_by_ap_id/get_cached_by_ap_id/ 2018-06-07 22:33:50 -07:00
squidboi
6e7f91bf8f
final format 2018-06-07 22:14:39 -07:00
squidboi
82225dfc8d
even more formatting 2018-06-07 22:10:11 -07:00
lambda
c86823f724 Merge branch 'bugfix/locked-account-regression' into 'develop'
security fix: locked account regression

See merge request pleroma/pleroma!200
2018-06-08 05:10:08 +00:00
squidboi
990cde7439
more formatting 2018-06-07 22:03:24 -07:00
squidboi
5b9e1f228a
formatting 2018-06-07 21:55:58 -07:00
squidboi
f69d38e455
add mrf for dropping follower-only and direct posts 2018-06-07 21:00:57 -07:00
William Pitcock
47c7e259c4 activitypub transmogrifier: fix locked account state from being clobbered 2018-06-08 02:52:29 +00:00
William Pitcock
a003bdc30a activitypub transmogrifier: learn locked state in Update messages 2018-06-08 02:52:24 +00:00
William Pitcock
09604182d0 add the ability to 'quarantine' an activitypub peer, causing them to be treated as an OStatus peer. 2018-06-07 14:38:09 +00:00
Sir_Boops
3f0440ac3c
Dedupe uploads 2018-06-06 13:25:44 -06:00
eal
29c9c8d93b Extract host from ap_id, add index 2018-06-06 21:13:40 +03:00
eal
9075b6d25b ActivityPub.ex: filter domain blocked activities. 2018-06-03 23:33:33 +03:00
lain
06439f64d0 Better error handling for ActivityPubController 2018-06-03 19:58:59 +02:00
lain
5e76adb07e Fix url guessing attacks. 2018-05-30 20:00:45 +02:00
eal
5d3fdbc082 MastoAPI: Add streaming for lists. 2018-05-30 16:48:59 +03:00
lain
841ee8e3e4 Simplify DM query.
Should also use indexes better.
2018-05-26 16:25:32 +02:00
lain
4b3ec53514 Merge branch 'develop' into csaurus/pleroma-feature/mstdn-direct-api 2018-05-26 16:00:59 +02:00
lain
745072b2cc Merge branch 'kaniini/pleroma-feature/activitypub-accept-reject-conformance' into develop 2018-05-26 15:15:52 +02:00
lain
0a6c897c94 Formatting. 2018-05-26 15:11:50 +02:00
lain
bfce29866f Make Mastodon follow hack more explicit. 2018-05-26 15:07:21 +02:00
lain
3839a11ef5 Don't treat remote accepts/rejects as local.
Also, use specialized functions to get safe data.
2018-05-26 14:07:46 +02:00
lain
dd9bb37893 Rename id helper method. 2018-05-26 13:57:11 +02:00
William Pitcock
7e873756e7 activitypub transmogrifier: use fetch_latest_follow to verify a follow object exists 2018-05-26 11:20:52 +00:00
William Pitcock
1c926c7b60 activitypub: allow mastodon S2S block extension support to be disabled 2018-05-26 08:30:41 +00:00
Hakaba Hitoyo
e90b734f1c debug 2018-05-26 14:10:12 +09:00
Hakaba Hitoyo
9c7da2ef48 output repeats at ActivityPub outbox 2018-05-26 14:02:57 +09:00
William Pitcock
7cf3cf77cf activitypub transmogrifier: cleanups and tests for incoming accepts/rejects 2018-05-25 12:53:12 +00:00
William Pitcock
f35e6bf75b activitypub transmogrifier: clean up accept/reject handling a bit 2018-05-25 09:40:11 +00:00
William Pitcock
62c95e8d4d run mix format 2018-05-25 09:39:46 +00:00
William Pitcock
502ba33d01 activitypub: fix up accept/reject semantics for following
fixes #175
2018-05-25 06:14:18 +00:00
William Pitcock
c0ca9f82b9 mastodon api: properly track if an account is locked or not 2018-05-25 06:14:09 +00:00
William Pitcock
47dc52a758 activitypub utils: optimize block and follow activity lookup
multi-field @> comparison is very expensive, so only use @> for the field where it matters
this makes the query take only a few usec to execute verses many msec on a busy instance
2018-05-25 05:23:49 +00:00
lambda
c2dcd767cf Merge branch 'feature/incoming-remote-unfollow' into 'develop'
Add support for incoming remote unfollows and blocks/unblocks

See merge request pleroma/pleroma!158
2018-05-24 19:52:24 +00:00
Francis Dinh
1197ec10a8 Rewrite block fetch query 2018-05-24 13:26:59 -04:00
lain
1cd6194dee More efficient queries. 2018-05-24 12:44:26 +02:00
lambda
06c97f211f Merge branch 'feature/deps-migration' into 'develop'
Migrate to comeonin 4 and Cachex 3

See merge request pleroma/pleroma!162
2018-05-23 09:03:11 +00:00
csaurus
4fd9df100f Merge branch 'develop' into feature/mstdn-direct-api 2018-05-21 20:19:37 -04:00
William Pitcock
9a2d097ed8 activitypub controller: note that the HTTP Host header must be forwarded for http signature validation to work 2018-05-21 19:22:30 +00:00
Francis Dinh
46427cb90f Pass correct number of arguments to unfollow 2018-05-21 11:57:15 -04:00
Francis Dinh
cc5373b846 Fix unblock handling 2018-05-21 05:00:58 -04:00
Francis Dinh
2573332214 Add undo block handler 2018-05-21 04:35:43 -04:00
Francis Dinh
c8a16f334d Format 2018-05-20 21:02:06 -04:00
Francis Dinh
89c5de9096 Fix unfollows 2018-05-20 21:01:14 -04:00
Francis Dinh
1afd6d37bd Merge remote-tracking branch 'upstream/develop' into feature/incoming-remote-unfollow
Fixed some conflicts in transmogrifier.ex
2018-05-20 19:17:15 -04:00
Thog
e55c6f311b
Migrate to comeonin 4 and Cachex 3
Also fix some warning in the code and add a missing alias
2018-05-20 20:08:40 +02:00
lain
434601a5c3 Return private / direct posts on user timelines, too. 2018-05-20 16:15:18 +02:00
Francis Dinh
a9141d88aa Pass user instead of their ap_id to User.block 2018-05-19 22:02:13 -04:00
Francis Dinh
3b706ea493 Remove handler for incoming undos with object references 2018-05-19 21:34:30 -04:00
Francis Dinh
1e43de0f86 Formatting and add tests for blocks/unblocks 2018-05-19 21:23:52 -04:00
Francis Dinh
da9744eb84 Use correct variable names in unfollow 2018-05-19 20:57:37 -04:00
Thog
6f39ecc41b
Support Undo like activities (Fix #139) 2018-05-19 22:14:15 +02:00
lambda
ad563669c8 Merge branch 'feature/remote-user-deactivation' into 'develop'
remote user deactivation

See merge request pleroma/pleroma!154
2018-05-19 09:30:09 +00:00
William Pitcock
2051530868 activitypub transmogrifier: handle hubzilla AP actor quirks 2018-05-19 03:28:29 -05:00
William Pitcock
4d2c6707c2 activitypub: normalize the actor to ensure we have its URI 2018-05-19 03:28:28 -05:00
William Pitcock
13d4b6d2b5 remote user deactivation: fix test failures 2018-05-19 01:26:13 -05:00
Francis Dinh
0ec1abb3b6 Add federated blocks 2018-05-18 18:09:56 -04:00
Francis Dinh
8d11bae0d5 Revert "Undo formatting in user.ex"
This reverts commit e6dc15b96c.
2018-05-17 23:55:00 -04:00
Francis Dinh
e6dc15b96c Undo formatting in user.ex 2018-05-17 23:53:34 -04:00
Francis Dinh
d8c842a771 Add support for incoming remote unfollows 2018-05-17 22:15:57 -04:00
csaurus
4dfb40a546 Handle cases where a to/cc field is absent on a status 2018-05-14 21:54:25 -04:00
William Pitcock
9390492138 ActivityPub create: discard activities from deactivated users 2018-05-13 19:05:02 -05:00
csaurus
2ce48c1a42 Formatting 2018-05-13 15:36:41 -04:00
csaurus
9aabff4883 Fix tests. 2018-05-13 15:33:59 -04:00
lain
c7a85de35c Revert "Remove 'unlisted' handling for now."
This reverts commit 1027d1f696.
2018-05-13 12:38:13 +02:00
lain
1027d1f696 Remove 'unlisted' handling for now.
It's just too slow (over 1 second on small systems, haven't looked at
the queries in detail yet). We'll need some other way to handle it.
2018-05-13 12:07:11 +02:00
lain
a5c9dd0a2a Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into develop 2018-05-13 11:59:35 +02:00
lain
3c3933e40b Unlisted fetching: Reverse logic
Generates a faster query.
2018-05-13 11:58:03 +02:00
lambda
aeff2d6474 Merge branch 'feature/unrepeats' into 'develop'
Add unrepeats

Closes #69

See merge request pleroma/pleroma!113
2018-05-13 09:32:29 +00:00
lain
ec531ca281 Add test. 2018-05-13 11:18:48 +02:00
lain
29376fcc13 Format. 2018-05-13 10:56:44 +02:00
lain
76722ea9c8 Merge branch 'develop' into kaniini/pleroma-bugfix/unlisted-statuses 2018-05-13 10:56:11 +02:00
Francis Dinh
54ccbd8479 Use original status id instead of announce id 2018-05-13 03:42:31 -04:00
csaurus
c8d418acdd api/v1/timelines/direct implementation 2018-05-12 21:50:59 -04:00
csaurus
392bd9ef56 Stream function to handle direct messages. 2018-05-12 17:40:59 -04:00
csaurus
c60a5405db Detect and try to stream incoming "direct" messages 2018-05-12 17:40:59 -04:00
Francis Dinh
4d88747561 Revert "Log error when handling unrepeats"
This reverts commit c17c55e989.
2018-05-11 15:34:46 -04:00
Francis Dinh
c17c55e989 Log error when handling unrepeats 2018-05-11 15:29:19 -04:00
href
c220a6db43
format & made get_policies/1 private 2018-05-10 18:51:58 +02:00
href
e9e6f37bda
Chain policies
- The `:pleroma, :instance, :rewrite_policy` can now be either a policy
or a list of policies
- Made a behaviour for MRF policies
2018-05-10 18:41:06 +02:00
Francis Dinh
900c735467 Match proper number of values from unannounce 2018-05-09 00:04:14 -04:00
Francis Dinh
54f6628590 Change argument order and call correct # of args 2018-05-08 23:59:36 -04:00
Francis Dinh
e55f69a676 Handle Undo activites containing an Announce 2018-05-08 23:50:19 -04:00
Francis Dinh
4d5ec883b7 Federate correct activity 2018-05-08 21:52:21 -04:00
lain
ffe028cd73 More warning fixes. 2018-05-07 18:11:37 +02:00
lambda
6c2903d9a1 Merge branch 'feld-warnings' into 'develop'
Clean up warnings

See merge request pleroma/pleroma!144
2018-05-06 18:42:31 +00:00
eal
bfad57c7c9 Get rid of unsafe variables. 2018-05-06 09:58:59 +03:00
Mark Felder
7a884d70d8 Group def renders here as well 2018-05-04 22:31:46 +00:00
Mark Felder
14c0c6d16b Fix formatting 2018-05-04 22:03:14 +00:00
Mark Felder
a24eed0f57 That last change was stupid. Multiline comments in Elixir don't really exist.
Instead we'll just pad with # intstead of playing stupid games with the compiler.
2018-05-04 21:53:52 +00:00
Mark Felder
79d41aa12e Dirty hack to remove the warning
warning: code block contains unused literal "internal -> Mastodon\n" (remove the literal or assign it to _ to avoid warnings)
  lib/pleroma/web/activity_pub/transmogrifier.ex
2018-05-04 21:48:30 +00:00
Mark Felder
aaacebd906 Fix unused variables, imports, and aliases 2018-05-04 21:42:20 +00:00
Mark Felder
42f1a098aa Fix build. Too eager with the fixing of unused variables.
== Compilation error in file lib/pleroma/web/activity_pub/views/user_view.ex ==
** (CompileError) lib/pleroma/web/activity_pub/views/user_view.ex:54: undefined function _total/0
    (stdlib) lists.erl:1338: :lists.foreach/2
    (stdlib) erl_eval.erl:670: :erl_eval.do_apply/6
2018-05-04 21:26:33 +00:00
Mark Felder
636f0fa402 Clean up unused aliases and imports 2018-05-04 21:25:31 +00:00
Mark Felder
943820ae29 More unused variables 2018-05-04 21:16:02 +00:00
Mark Felder
ab4aa5720a Fix a bunch of unused variable warnings 2018-05-04 20:59:01 +00:00
William Pitcock
a3d1d4894f ActivityPub core: fix handling of unlisted statuses by leveraging a similar strategy as for blocks 2018-04-28 22:32:46 -05:00
lain
4d55d7c95e Insert object after being rewritten. 2018-04-28 16:10:24 +02:00
lambda
a7a40bb8f1 Merge branch 'fix/blocked-user-boosts' into 'develop'
ActivityPub.ex: do not return boosted statuses from blocked users.

See merge request pleroma/pleroma!111
2018-04-28 13:49:12 +00:00
William Pitcock
90bbd94614 ActivityPub MRF SimplePolicy: fix media stripping 2018-04-25 16:28:53 -05:00
Francis Dinh
2d775bf1be Merge branch 'feature/unrepeats' of git.pleroma.social:normandy/pleroma into feature/unrepeats 2018-04-25 01:58:50 -04:00
Francis Dinh
9e0dd21ed6 Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into feature/unrepeats 2018-04-25 00:46:28 -04:00
lain
c78e7d8b11 Fix formatting. 2018-04-24 21:25:31 +02:00
lambda
7a52c4549c Merge branch 'feature/message-rewrite-facility' into 'develop'
message rewrite facility

See merge request pleroma/pleroma!112
2018-04-24 17:21:28 +00:00
Dashie
9972678a68
Add User.decrease_note_count and call it from ActivityPub.delete 2018-04-24 11:34:18 +02:00
Francis Dinh
8c0806539c Embed announce activity data instead of linking to it 2018-04-22 21:28:51 -04:00
Francis Dinh
b1742eca42 Revert "Rename make_unannounce_data helper to make_undo_data"
This reverts commit c649ca8958.
2018-04-22 19:42:28 -04:00
Francis Dinh
c649ca8958 Rename make_unannounce_data helper to make_undo_data
This makes it a bit more easier to adapt for unlikes as well in the
future.
2018-04-22 01:55:41 -04:00
eal
22bfeac256 Update note count in ActivityPub.create. 2018-04-21 12:58:04 +03:00
lain
9e6ae44729 Formatting fixes. 2018-04-21 09:43:53 +02:00
Francis Dinh
f0798440de Use correct activity for undo 2018-04-20 23:22:16 -04:00
Francis Dinh
4b9f2ab526 Fix federation of unreblog activity 2018-04-20 23:09:19 -04:00
nenolod@dereferenced.org
f08f9d4498 ActivityPub MRF: fix nsfw tagging of objects with attachments by looking at the right object (the child in this case) 2018-04-19 07:45:09 -05:00
Francis Dinh
7b4f55238e Handle unrepeats via the TwitterAPI 2018-04-18 06:00:40 -04:00
Francis Dinh
687db1bc3a Expose unannounce activity so that it can be tested 2018-04-18 03:39:42 -04:00
Francis Dinh
0251690e96 Add federation for unrepeats 2018-04-17 20:35:07 -04:00
Francis Dinh
c9e7b984d5 Add make_unannounce_data helper function 2018-04-17 04:13:08 -04:00
Francis Dinh
d16877251a doc fixes 2018-04-16 10:59:32 -04:00
Francis Dinh
b949577472 Add unrepeat functionality 2018-04-14 20:19:48 -04:00
William Pitcock
d24ddd9fb9 ActivityPub MRF: implement the SimplePolicy policy 2018-04-14 06:32:45 -05:00
William Pitcock
4a178b3d65 ActivityPub: implement MRF core hook and baseline noop policy object 2018-04-14 06:32:44 -05:00
eal
48380aeccc ActivityPub.ex: do not return boosted statuses from blocked users. 2018-04-14 14:26:20 +03:00
lain
b3b7ab5d9a Load all users at once in timelines. 2018-04-02 16:35:41 +02:00
lain
bc31bee7c4 Generates contexts and ids on insertion time. 2018-04-02 15:17:09 +02:00
lain
2222e5599c Don't fetch anything except ap_id for follower / following
collections.

Should speed up the queries because ecto doesn't have to parse the json.
2018-03-31 20:02:09 +02:00
lain
4afbef39f4 Format the code. 2018-03-30 15:01:53 +02:00
lain
d2099c849d More Jason changes. 2018-03-27 16:45:38 +02:00
lain
2c1c221301 Fix follower collection id. 2018-03-25 19:34:33 +02:00
William Pitcock
2aea3bc632 activitypub transmogrifier: rewrite incoming hashtags 2018-03-24 16:42:17 -05:00
lain
5da2355e71 For outgoing objects, fake mastodon style ap id for ostatus. 2018-03-23 16:07:02 +01:00
William Pitcock
3fcdfb75d0 activitypub: add outbox endpoint 2018-03-22 00:26:54 -05:00
William Pitcock
381ba256bf activitypub: add restrict_limit 2018-03-22 00:26:47 -05:00
William Pitcock
1a94704230 activitypub: implement following/followers endpoints 2018-03-22 00:26:39 -05:00
lain
c50c7745bc Fetch relayed messages from source while we don't have linked data sigs. 2018-03-21 07:12:14 +01:00
lambda
9b97b023c5 Merge branch 'feld-Logger' into 'develop'
Logging cleanup

See merge request pleroma/pleroma!76
2018-03-20 05:57:47 +00:00
Mark Felder
16d102c153 Clarify that this error is about a problem decoding the expected JSON
payload
2018-03-19 18:18:52 +00:00
Mark Felder
9a858621d6 AP and WebFinger need love here 2018-03-19 17:56:49 +00:00
Mark Felder
04395cb9bd Grammar consistency
Most log messages are sentence fragments so make them consistent by
removing periods. Log messages that are expressing urgency with ! or
pending more work with "..." are OK.
2018-03-19 17:31:58 +00:00
lain
ec83175100 Use connection pools. 2018-03-19 17:42:09 +01:00
lain
4d5161b16d Only fetch if it's http. 2018-03-19 10:28:28 +01:00
William Pitcock
59a76ea464 activitypub transmogrifier: rewrite non-http URLs using the object's external URL
Signed-off-by: lain <lain@soykaf.club>
2018-03-14 08:53:29 +01:00
lain
30d65639c1 Fix Mastodon emojis.
Code by Kaniini
2018-03-13 08:05:43 +01:00
lain
ff7bc16a7e Restrict activity fixing more.
If we need it for older ones, we can add a task for that later.
2018-03-08 19:09:46 +01:00
lain
8228ae96d8 Only run the fix-up tasks once. 2018-03-07 20:19:48 +01:00
lain
d2ad99298e Handle incoming deletes. 2018-03-03 18:38:40 +01:00
lain
1377b2e569 Restrict public by recipients.
This is much faster than going through the json. This does break
unlisted, for which we'll probably have to add another table field.
2018-02-26 10:09:30 +01:00
lain
82df16f7c3 Actual real fix. 2018-02-25 22:28:53 +01:00
lain
0d69bbc1fb One more fix. 2018-02-25 22:20:38 +01:00
lain
8c712b3198 Fix context stitching. 2018-02-25 21:42:28 +01:00
lain
e9de04b74b Add support for outgoing update. 2018-02-25 21:08:32 +01:00
lain
f61fd00db5 Make likes and announces public. 2018-02-25 18:20:06 +01:00
lain
4d13cc0dc6 Fix specs. 2018-02-25 16:52:33 +01:00
lain
dfaddeb765 Use update_and_set cache. 2018-02-25 16:34:24 +01:00
lain
e3629af4da Handle remote update activities. 2018-02-25 16:14:25 +01:00
lain
dd97193311 Set conversation to parent conversation. 2018-02-25 13:35:08 +01:00
lain
b76de1ecd3 Some fixes to AP fetching. 2018-02-25 10:56:01 +01:00
lain
82e34cae95 Unify object representation. 2018-02-24 20:16:41 +01:00
lain
2b5d265954 Don't deliver to local followers. 2018-02-24 19:04:56 +01:00
lain
df73a9c6d6 . 2018-02-24 18:50:02 +01:00
lain
5bc7628022 Fix. 2018-02-24 18:49:09 +01:00
lain
59ad395ffa Better signature errors messages. 2018-02-24 18:47:08 +01:00
lain
fb5add56fa Bit more signature debugging. 2018-02-24 18:01:49 +01:00
lain
e5fcc51a06 Remove unneccesary subscriptions on update. 2018-02-24 17:36:02 +01:00
lain
9a4d400ff4 Fix remote following. 2018-02-24 12:49:56 +01:00
lain
06b512acf1 Never update local users from foreign sources. 2018-02-24 12:05:40 +01:00
lain
541a4cbbb6 Oh no! More fixes! 2018-02-24 10:51:15 +01:00
lain
01d5ef65fa More fixes to user upgrading. 2018-02-24 10:42:47 +01:00
lain
efd4d04933 Fix user upgrading code. 2018-02-24 10:28:38 +01:00
lain
aa79d64e0d Correctly stitch mastodon -> ostatus replies. 2018-02-23 15:00:41 +01:00
lain
2583a9f6e8 More logging. 2018-02-23 15:00:19 +01:00
lain
5dc68d303b Get objects that people you know favorite. 2018-02-22 09:02:34 +01:00
lain
c443aec83d Add banner image to user json. 2018-02-22 08:24:18 +01:00
lain
37e406ae36 Get avatar and banner from AP users. 2018-02-22 08:14:15 +01:00
lain
4816b09fa7 Add user upgrade function. 2018-02-21 22:21:40 +01:00
lain
a06b9a3e0b Logging. 2018-02-21 16:22:20 +01:00
lain
810cf8618f ActivityPub: Fetch missing activities on reply. 2018-02-21 15:22:24 +01:00
lain
279e1ce556 Typo. 2018-02-21 08:54:48 +01:00
lain
b52672294e Move incoming AP to Federator. 2018-02-21 08:51:03 +01:00
lain
9c89916969 ActivityPub: One queue item per server. 2018-02-20 08:51:19 +01:00
lain
297a2c7d3f Ignore duplicate create activities. 2018-02-19 17:37:45 +01:00
lain
6b6ab592ab AP: Fix incoming conversations. 2018-02-19 10:39:03 +01:00
lain
6b32b9e346 Notifications: Use all recipients, not just "to". 2018-02-19 10:05:26 +01:00
lain
932d346d35 fix typo. 2018-02-18 23:13:19 +01:00
lain
8b11546334 For existing users, just replace info. 2018-02-18 23:11:31 +01:00
lain
decbf3a47f fix typo. 2018-02-18 23:02:44 +01:00
lain
342d0b01d1 Only push to followers if they are addressed. 2018-02-18 23:01:37 +01:00
lain
dc1d3ceb72 Fix log. 2018-02-18 22:41:38 +01:00
lain
e368b68dcf Log but ignore signature errors. 2018-02-18 22:40:08 +01:00
lain
76e71f47d3 Inbox: Don't add the same thing twice. 2018-02-18 22:37:44 +01:00
lain
010f818a29 Fix conversations. 2018-02-18 20:52:07 +01:00
lain
deaad6d97a Fix delivery to CC. 2018-02-18 16:59:41 +01:00
lain
803bdc1a67 Federate non-public over ActivityPub only, do some better signing. 2018-02-18 16:05:25 +01:00
lain
4bc57ef20c Don't relay non-public messages. 2018-02-18 15:58:18 +01:00
lain
5d89997a70 Respect visibility in API. 2018-02-18 15:50:34 +01:00
lain
5729233c36 Don't show unlisted in public. 2018-02-18 15:32:11 +01:00
lain
c974f6544f Show users their own posts in timeline. 2018-02-18 15:20:36 +01:00
lain
44586f2967 ActivityPub: Fallback for unhandled outgoing activities. 2018-02-18 15:20:03 +01:00
lain
20e6190ead Transmogrify outgoing nsfw. 2018-02-18 14:07:13 +01:00
lain
8ca66b5961 ActivityPub: Add conversation id. 2018-02-18 13:58:52 +01:00
lain
6ab0aba50a Transmogrify outgoing hashtags. 2018-02-18 13:51:03 +01:00
lain
6046f10431 Actually fix incoming attachments. 2018-02-18 13:06:51 +01:00
lain
6352dffd13 Drop unhandle activities. 2018-02-18 12:51:35 +01:00
lain
b99eeb2bdf Try to fetch AP user data first. 2018-02-18 12:27:05 +01:00
lain
68752b2047 Switch protocols to AP when post come in through AP. 2018-02-18 12:04:59 +01:00
lain
77c6c424a6 ActivityPub: Make fake Create activities for objects without one. 2018-02-18 11:24:54 +01:00
lain
81ea359a7c ActivityPub: Handle incoming announces. 2018-02-17 21:57:31 +01:00
lain
5e36b750c1 ActivityPub: Fetch an object from an id. 2018-02-17 21:56:33 +01:00
lain
0f2ad25a7b AcitvityPub: Outgoing Announces. 2018-02-17 20:47:45 +01:00
lain
32b995fbb6 ActivityPub: Implement outgoing likes. 2018-02-17 20:22:14 +01:00
lain
e1b12a7782 ActivityPub: Handle incoming likes. 2018-02-17 20:13:12 +01:00
lain
ab27c90c9f ActivityPub: Handle attachments. 2018-02-17 18:38:58 +01:00
lain
c2d0cb1a29 ActivtyPub Delivery: Use shared inbox if possible. 2018-02-17 16:18:10 +01:00
lain
7b26443a76 ActivityPub: Send out Accept after Follow. 2018-02-17 16:08:55 +01:00
lain
e7b73359e3 ActivityPub: Partly handle incoming follows. 2018-02-17 14:55:44 +01:00
lain
5682e48a25 ActivityPub: tags -> tag. 2018-02-17 14:20:53 +01:00
lain
05ba6ca1b8 Do some transmogrifying for the output. 2018-02-17 14:11:20 +01:00
lain
5a371892a0 Fix specs. 2018-02-17 10:26:44 +01:00
lain
7851b9ba81 ActivityPub: Use recipients fields. 2018-02-15 20:32:07 +01:00
lain
5454ec6a6c ActivityPubController: Handle inbox data. 2018-02-15 20:00:43 +01:00
lain
ef0300889d Transmogrifier: Handle basic notice creation. 2018-02-15 20:00:06 +01:00
lain
ae26604378 ActivityPub: Refactor create function. 2018-02-15 19:59:35 +01:00
lain
8cf97ee8e1 ActivityPub: Basic note federation with Mastodon. 2018-02-11 20:43:33 +01:00
Roger Braun
ae1ec858f4 Basic AP user building. 2018-02-11 17:20:43 +01:00
Lain Iwakura
4a13b84887 Add recipients field to activities.
Also do some very basic checks for AP message insertion.
2017-12-12 18:07:14 +01:00
Roger Braun
888ec9e579 ActivityPub: Check inbox requests for valid signature. 2017-12-12 10:17:50 +01:00
Lain Iwakura
64330d9455 ActivityPub: Add object routes / controller. 2017-12-11 18:21:33 +01:00
Lain Iwakura
a89a613e4e ActivityPub: Use only string keys in views. 2017-12-11 18:20:41 +01:00
Lain Iwakura
da005d3332 ActivityPub: Add Objects View. 2017-12-11 18:19:46 +01:00
Roger Braun
5599c5920c Basic incoming AP support. 2017-12-11 10:37:22 +01:00
Lain Iwakura
e31a5ff4af Priority queue fixes. 2017-12-06 16:51:11 +01:00
Roger Braun
5ff5d583b6 MastodonAPI: Streaming fixes.
Now shows repeats in the home tl.
2017-11-19 13:47:50 +01:00
Thog
59770c3f5c
Fix all compilation warnings 2017-11-19 02:22:07 +01:00
Roger Braun
a743940463 MastoAPI: Implement all streaming functions. 2017-11-16 16:49:51 +01:00
Roger Braun
5719f69ae3 MastodonAPI: Stream fixes. 2017-11-16 13:48:58 +01:00
eal
06c3ee3bac Accept 1 as true. 2017-11-14 15:54:50 +02:00
eal
c84723b679 MastoAPI: Add media timelines. 2017-11-14 15:41:16 +02:00
Roger Braun
bd5bdc4c24 MastoAPI: Basic streaming. 2017-11-11 14:59:25 +01:00
Roger Braun
f1d27a5fbb Add actor column to activities. 2017-11-09 10:41:19 +01:00
Roger Braun
d2430d5007 Look through whole db for user timelines.
They already have an index that's good enough.
2017-11-08 17:25:18 +01:00
Roger Braun
7252f6b054 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into develop 2017-11-05 12:12:19 +01:00
Roger Braun
046bee34d3 Fix bug when no posts are in the db. 2017-11-05 12:11:59 +01:00
Roger Braun
867ac1e4f5 Handle nil cases. 2017-11-02 22:47:48 +01:00
Roger Braun
8ef58a266b Don't return blocked users' activities in contexts. 2017-11-02 22:44:36 +01:00
Roger Braun
a47727adde Don't return activities from blocked users. 2017-11-02 22:37:26 +01:00
Roger Braun
3037814fde Only search through last 100_000 activities for fetches.
This is purely a performance enhancement
2017-10-31 15:26:37 +01:00
Roger Braun
5293516730 Use more efficient query to fetch likes. 2017-10-24 14:39:01 +02:00
Roger Braun
9f417fd5e9 Speed up deletion and related queries. 2017-10-23 18:30:09 +02:00
Roger Braun
38f3908c14 Revert "Simplify query."
This reverts commit a17b261379.
2017-10-19 17:56:27 +02:00
Roger Braun
a17b261379 Simplify query. 2017-10-18 11:56:47 +02:00
Roger Braun
260f09dd6c MastoAPI: Return reblogs, too. 2017-09-17 14:20:54 +02:00
Roger Braun
422d0f324f MastodonAPI: Add user favorites endpoint. 2017-09-17 13:09:49 +02:00
Roger Braun
678dd4c8ec Use desc id to sort instead of desc inserted_at
Should mean the same and is indexed.
2017-09-17 11:16:08 +02:00
Roger Braun
fc85c9f086 Add tag timelines. 2017-09-14 13:22:09 +02:00
Roger Braun
07b694814e Optimize conversation fetching. 2017-09-12 13:48:48 +02:00
Roger Braun
61adf676d5 Add basic mastodon notification support. 2017-09-11 18:53:19 +02:00
Roger Braun
a22f2e683b Add type restriction to activitypub fetcher
Mainly because Mastodon only returns notes, not the other activities.
2017-09-09 12:05:17 +02:00
Roger Braun
3438a120cc Don't delete new delete activity... 2017-09-04 20:47:43 +02:00
Roger Braun
5db535c0b1 Add delete to ActivityPub. 2017-09-04 18:47:33 +02:00
Roger Braun
9fd8640202 Order by id instead of inserted_at to better use indexes. 2017-08-08 12:24:20 +02:00
Roger Braun
140f72725d Use follower address in user entry. 2017-07-19 19:06:49 +02:00
Roger Braun
5e17e04144 Make user timelines faster for users with few statuses. 2017-07-01 16:43:10 +02:00
Roger Braun
201804b836 Only return posts in TwAPI conversations. 2017-06-30 16:41:09 +02:00
Roger Braun
d4de38e8ff Order conversation fetches like GS does. 2017-06-30 16:30:19 +02:00
Roger Braun
70024632ba AP refactoring. 2017-05-16 18:19:04 +02:00
Roger Braun
a2ca3b8605 Add option to keep id for follows. 2017-05-10 18:45:38 +02:00
Roger Braun
e49770ee88 Add some debugging info. 2017-05-07 20:16:07 +02:00
Roger Braun
db08498a9f Prevent double insertions. 2017-05-07 20:13:10 +02:00
Roger Braun
4f9328c622 Preserve ids on favorites / retweets. 2017-05-07 20:05:03 +02:00
Roger Braun
b403ea4d2b Merge branch 'develop' into dtluna/pleroma-feature/unfollow-activity 2017-05-07 19:28:23 +02:00
Roger Braun
fa2610c795 Handle incoming favorites, fetch potentially missing messages. 2017-05-05 16:07:44 +02:00
Roger Braun
c48c381e90 Merge branch 'develop' into dtluna/pleroma-refactor/1 2017-05-05 11:46:59 +02:00
Roger Braun
c85998ab8a Parse incoming retweets. 2017-05-04 18:42:29 +02:00
Roger Braun
861a294cda Add announce federation. 2017-05-03 17:41:55 +02:00
Roger Braun
df71c142cf Remove doubled 'to' recipients. 2017-05-03 16:08:24 +02:00
Roger Braun
9c42453e06 Return note objects as ostatus post activities. 2017-05-03 09:54:17 +02:00
Roger Braun
945b4b55e6 Federate likes. 2017-05-02 16:45:54 +02:00
Roger Braun
a3e82c5c24 Save context in likes / announces. 2017-05-02 15:54:14 +02:00
Roger Braun
32a95d73da Add twkn timeline. 2017-05-02 14:12:43 +02:00
Roger Braun
6dd8335477 Mark incoming activties as non-local. 2017-05-02 10:47:04 +02:00
Roger Braun
009fcd2acf Stop adding statusnetConversationIds. 2017-04-30 14:02:04 +02:00
dtluna
6cf7c13228 Refactor code to comply with credo suggestions 2017-04-27 16:18:50 +03:00
Roger Braun
c5fa682c31 Refactor, add beginnings of websub client subscriptions. 2017-04-26 18:33:10 +02:00
Roger Braun
ab0114fbaa Return salmon path for users, basic incoming salmon handling. 2017-04-24 18:46:34 +02:00
dtluna
28b203d08f Add Undo of Follow Activity insertion 2017-04-21 19:54:21 +03:00
dtluna
5229b01944 Merge branch 'develop' of ssh.gitgud.io:lambadalambda/pleroma into feature/user-timeline 2017-04-16 17:08:17 +03:00
Roger Braun
7617a593b9 Support data uris in uploads. 2017-04-16 14:23:30 +02:00
dtluna
7a0046d127 Merge branch 'develop' of ssh.gitgud.io:lambadalambda/pleroma into feature/user-timeline 2017-04-16 13:32:56 +03:00
Roger Braun
4f7adb343c Address liking / announcing to the original author. 2017-04-15 14:16:01 +02:00
Roger Braun
60c60de330 Add announcements / retweets to TwAPI. 2017-04-15 13:54:46 +02:00
Roger Braun
21c397820f Add announcements to activitypub. 2017-04-15 12:11:20 +02:00
Roger Braun
a926038cd0 Add unliking to activitypub. 2017-04-14 18:09:30 +02:00
dtluna
18cd04ade5 Add user timeline 2017-04-14 16:09:13 +03:00
Roger Braun
fa0c279139 Favorite changes.
- Add 'likes' to activity, collection of ids of people who liked it.
- show if you favorited something or not.
- Don't allow double favorites
- Address favorites to the followers of the liked activity's author.
2017-04-14 15:07:24 +02:00
Roger Braun
1388054796 Add liking to ActivityPub. 2017-04-13 15:50:05 +02:00
Roger Braun
b666f11d2f Add max_id fetching to activity fetching. 2017-04-12 17:12:00 +02:00
dtluna
8075badafe Add Follow activity insertion 2017-04-04 03:30:07 +03:00
Roger Braun
6aa1523bb3 Put objects in inserted activties into the db. 2017-03-30 18:07:29 +02:00
Roger Braun
d18473f0c3 Add port if specified. 2017-03-30 14:32:36 +02:00
Roger Braun
e7dc39e40c Basic file uploading via TwAPI. 2017-03-29 02:07:56 +02:00
Roger Braun
866a2663d4 Add fetching of activities in context. 2017-03-24 00:09:08 +01:00
Roger Braun
e56dba1563 Add context and inReplyTo. 2017-03-23 23:34:10 +01:00
Roger Braun
74112ef99e Add id to objects, too. 2017-03-23 21:22:49 +01:00
Roger Braun
1f0f79d959 Generate ids for activities. 2017-03-23 17:56:49 +01:00
Roger Braun
569d9bac17 Add fetching for recipients. 2017-03-22 14:45:17 +01:00
Roger Braun
2db28df4cf Add public timeline TwAPI. 2017-03-21 21:09:20 +01:00
Roger Braun
b9d0e34506 Add since_id for activitypub fetching. 2017-03-21 20:31:48 +01:00
Roger Braun
d4cf273f28 Add limiting to activity pub fetching. 2017-03-21 20:22:05 +01:00
Roger Braun
9a8850eb9e Basic status creation and retrieval. 2017-03-21 17:53:20 +01:00
Roger Braun
8de523c8ae Basic AP objects. 2017-03-21 09:21:52 +01:00