Commit graph

739 commits

Author SHA1 Message Date
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
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
kaniini
bee6acd51d Merge branch 'feature/create-tombstone-instead-of-delete' into 'develop'
Create tombstone instead of object deletion

See merge request pleroma/pleroma!593
2018-12-27 19:37:55 +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
Maxim Filippov
f75f707f6c Revert Activity tombstones, add ObjectTombstone struct 2018-12-25 03:00:06 +03:00
Maxim Filippov
18a4cbb244 Capitalize "tombstone" 2018-12-24 20:09:18 +03:00
Maxim Filippov
0f412cf6e6 Create tombstone instead of object deletion 2018-12-24 02:25:36 +03:00
William Pitcock
3c08d229db tests: add legal boilerplate 2018-12-23 20:57:10 +00:00
William Pitcock
71f6d9f418 transmogrifier: significantly rework handling of peertube videos, add test 2018-12-23 13:31:08 +00:00
Maksim Pechnikov
89b3729afa fix warnings 2018-12-12 09:09:19 +03:00
lain
76d6b1c6ab Merge remote-tracking branch 'origin' into follower-hiding 2018-12-05 21:27:56 +01:00
Maksim Pechnikov
dd8aee332c formatting the code 2018-12-04 17:48:55 +03:00
Maksim Pechnikov
5c6d47614d all tests passed 2018-12-04 17:44:15 +03:00
Maksim Pechnikov
a9e4a97586 update test 2018-12-04 14:04:06 +03:00
Maksim Pechnikov
80bfdb4e7d update test 2018-12-04 14:04:06 +03:00
William Pitcock
f85949cc69 object: factor out fetching functions into Pleroma.Object.Fetcher module 2018-12-04 04:52:09 +00:00
William Pitcock
e8caecb5c7 object: move object containment out of transmogrifier into it's own module 2018-12-04 04:52:09 +00:00
William Pitcock
fe000f82f8 tests: activitypub: fix broken test due to invalid child object 2018-12-04 04:52:09 +00:00
William Pitcock
4ca4c83871 tests: fix most remaining failures 2018-12-04 04:52:09 +00:00
lain
6be0ab1e55 Hide network in ap. 2018-12-02 17:35:32 +01:00
lain
badbe2656c More fixes. 2018-11-27 18:12:03 +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
William Pitcock
55640c4804 tests: add a test to verify the general fake direction protection works in all cases 2018-11-17 20:31:20 +00:00
William Pitcock
dc1d8e13b4 tests: add a testcase for user collision 2018-11-17 20:20:45 +00:00
William Pitcock
1a940cb46e tests: add tests for contain_origin_from_id() 2018-11-17 20:16:03 +00:00
William Pitcock
b483ae0a72 tests: add a second spoofing variant 2018-11-17 18:25:32 +00:00
William Pitcock
9c8adfb6ef test: fix more test defects 2018-11-17 18:16:55 +00:00
William Pitcock
d9cb081f07 tests: add additional spoofing tests 2018-11-17 18:12:11 +00:00
William Pitcock
2ab8e28728 transmogrifier tests: fix defective spoofing test 2018-11-17 18:11:46 +00:00
William Pitcock
69b8c0e299 tests: add test for internal data stripping 2018-11-10 12:24:25 +00:00
kaniini
99a8ef967e Merge branch 'tests/prismo-url-map' into 'develop'
Test that prismo url-map transforms into a string

See merge request pleroma/pleroma!414
2018-11-10 11:17:12 +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
href
7d328c658d
Small wrapper module around Application.get_env/put_env
Same API as the old Pleroma.Config
2018-11-06 16:00:48 +01:00
href
36ca3c1b3e
format 2018-11-06 15:17:29 +01: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
Haelwenn (lanodan) Monnier
c5f26f3ce2
Test that prismo url-map transforms into a string 2018-11-01 11:30:50 +01:00
lain
1e9ced5af4 Test Relay, switch to runtime configuration. 2018-11-01 09:01:43 +00:00
William Pitcock
2ac13061af testsuite: formatting 2018-10-26 06:37:00 +00:00
William Pitcock
0d0c1dcf44 tests: add testsuite for broken thread filter 2018-10-26 06:35:06 +00:00
William Pitcock
b1d1f9bc27 tests: add test for user inbox 2018-10-25 05:24:17 +00:00
William Pitcock
d830a243a3
transmogrifier: more robustly handle dereferencing pointer URIs 2018-09-27 20:00:48 +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
2c820e10b8
transmogrifier_test: incoming notices with tag not being an array (kroeg) 2018-09-27 20:00:47 +02:00
William Pitcock
303af9ba4c tests: add regression tests 2018-09-01 23:33:10 +00:00
William Pitcock
bc36d40bee tests: add a testcase for verifying that objects without a valid ID are always rejected 2018-08-23 01:25:27 +00:00
Haelwenn (lanodan) Monnier
74c74decf5
Basic peertube support. 2018-08-21 18:24:09 +02: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
7fbcd4caaf test: add kroeg fixtures 2018-08-14 17:09:17 +00:00
hakabahitoyo
9c1b6f11c5 improve test 2018-07-21 02:57:56 +09:00
hakabahitoyo
908cefd84a debug 2018-07-21 02:19:20 +09:00
hakabahitoyo
9c2afb2e71 improve test 2018-07-21 01:44:35 +09:00
Haelwenn (lanodan) Monnier
24b5a75d09
Add test for Plume Articles 2018-07-12 23:08:28 +02: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
lambda
be800d7936 Merge branch 'bugfix/block-follow-relationships' into 'develop'
fix follow relationship leaks when blocked

See merge request pleroma/pleroma!230
2018-06-19 09:42:45 +00:00
William Pitcock
3707a7fa42 tests: transmogrifier: ensure incoming blocks have the same effect as local blocks 2018-06-19 00:59:28 +00:00
William Pitcock
a2c6778ce6 tests: add regression test for contentMap-only posts 2018-06-18 22:14:51 +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
299ef74f2e tests: add regression test for locking/unlocking account updates 2018-06-08 02:52:34 +00: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
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
William Pitcock
1db0dc3072 tests: add tests to verify the accept request is discarded if no follow activity could be found 2018-05-26 11:20:53 +00:00
William Pitcock
7cf3cf77cf activitypub transmogrifier: cleanups and tests for incoming accepts/rejects 2018-05-25 12:53:12 +00:00
Francis Dinh
b2c6ae7d82 Hook up unfollow and (un)block to MastoAPI + tests 2018-05-22 04:27:40 -04:00
Francis Dinh
cc5373b846 Fix unblock handling 2018-05-21 05:00:58 -04:00
Francis Dinh
89c5de9096 Fix unfollows 2018-05-20 21:01:14 -04:00
Francis Dinh
56de0216ae pass user to User.blocks?/2 instead of ap_id 2018-05-20 19:45:05 -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
Francis Dinh
d46393f6ef Fix test for blocks 2018-05-20 02:15:56 -04:00
Francis Dinh
1e43de0f86 Formatting and add tests for blocks/unblocks 2018-05-19 21:23:52 -04:00
Thog
6f39ecc41b
Support Undo like activities (Fix #139) 2018-05-19 22:14:15 +02:00
William Pitcock
4033ed6714 tests: add test for hubzilla follow activity too 2018-05-19 03:28:32 -05:00
William Pitcock
19c96c8a19 tests: add tests for Transmogrifier.maybe_fix_user_object() 2018-05-19 03:28:30 -05: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
lain
89954a2ce7 Fix format. 2018-05-13 13:02:24 +02: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
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
Francis Dinh
16b793656d Add tests for unrepeats 2018-05-11 15:30:47 -04:00
Francis Dinh
8b4ee0ea51 Fix formatting 2018-05-04 03:19:48 -04: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
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
e981280fa7 Formatting fixes 2018-04-25 01:43:45 -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
Francis Dinh
8c0806539c Embed announce activity data instead of linking to it 2018-04-22 21:28:51 -04:00
lain
0574df273c Small cleanup. 2018-04-22 10:01:10 +02: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
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
5b0d0b9ab2 Add unreblogging tests 2018-04-14 22:34:06 -04: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
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
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
d2ad99298e Handle incoming deletes. 2018-03-03 18:38:40 +01:00
lain
e9de04b74b Add support for outgoing update. 2018-02-25 21:08:32 +01:00
lain
4ea2a41014 Fix more specs. 2018-02-25 17:48:31 +01:00
lain
8e7f63afde Fix specs. 2018-02-25 16:40:37 +01:00
lain
e3629af4da Handle remote update activities. 2018-02-25 16:14:25 +01:00
lain
b76de1ecd3 Some fixes to AP fetching. 2018-02-25 10:56:01 +01:00
lain
e5fcc51a06 Remove unneccesary subscriptions on update. 2018-02-24 17:36:02 +01:00
lain
01d5ef65fa More fixes to user upgrading. 2018-02-24 10:42:47 +01:00
lain
aa79d64e0d Correctly stitch mastodon -> ostatus replies. 2018-02-23 15:00:41 +01:00
lain
eb3f14da86 Missing test skeleton. 2018-02-23 08:49:57 +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
810cf8618f ActivityPub: Fetch missing activities on reply. 2018-02-21 15:22:24 +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
539340d914 Handle sensitive property. 2018-02-18 14:14:16 +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
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
e1b12a7782 ActivityPub: Handle incoming likes. 2018-02-17 20:13:12 +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
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
b331cb449a Merge branch 'develop' into feature/activitypub 2018-02-12 10:24:15 +01:00
lain
26ccb768d3 Make test output easier to read. 2018-02-12 10:14:11 +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
Lain Iwakura
e2e6365035 ActivityPub: Add controller tests. 2017-12-11 18:22:48 +01:00
Lain Iwakura
da005d3332 ActivityPub: Add Objects View. 2017-12-11 18:19:46 +01:00
Roger Braun
f1d27a5fbb Add actor column to activities. 2017-11-09 10:41:19 +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
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
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
db08498a9f Prevent double insertions. 2017-05-07 20:13:10 +02:00
Roger Braun
b403ea4d2b Merge branch 'develop' into dtluna/pleroma-feature/unfollow-activity 2017-05-07 19:28:23 +02:00
Roger Braun
df71c142cf Remove doubled 'to' recipients. 2017-05-03 16:08:24 +02:00
Roger Braun
a3e82c5c24 Save context in likes / announces. 2017-05-02 15:54:14 +02:00
dtluna
28b203d08f Add Undo of Follow Activity insertion 2017-04-21 19:54:21 +03:00
Roger Braun
eb9358c8d6 Add basic Avatar updating code. 2017-04-16 16:06:19 +02:00
Roger Braun
d7e3b72c6a Add avatar objects to user, fix specs. 2017-04-16 15:28:28 +02:00
Roger Braun
7617a593b9 Support data uris in uploads. 2017-04-16 14:23:30 +02:00
Roger Braun
4f7adb343c Address liking / announcing to the original author. 2017-04-15 14:16:01 +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
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
Roger Braun
6aa1523bb3 Put objects in inserted activties into the db. 2017-03-30 18:07:29 +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
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
37e443ce6c Add friends status fetching. 2017-03-22 16:51:20 +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
ad303783af Add status posting via TwAPI. 2017-03-21 18:17:35 +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