Commit graph

289 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