Commit graph

1200 commits

Author SHA1 Message Date
William Pitcock ba8dab7542 twitterapi: user view: return if an account is locked or not 2018-06-11 22:15:53 +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 993312cdb3 twitterapi: add profile setting for locked/unlocked accounts 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 1452b2823f user: add a workaround for situations where Pleroma may believe a followee is followed
this was caused by lack of Undo follows in the early days, and can likely be eventually removed
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 a2c4a5a75b mastodon api: allow setting an account locked or not 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 6f89d2d583 stash api controller 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
lambda 4a16ade2ee Merge branch 'mastopost' into 'develop'
Allow posting images without text in mastofe

See merge request pleroma/pleroma!194
2018-06-08 06:02:21 +00: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
lambda 839cb7b424 Merge branch 'develop' into 'mastopost'
# Conflicts:
#   .gitignore
2018-06-07 16:29:33 +00:00
lambda 595ca3bb3a Merge branch 'feature/quarantine' into 'develop'
add the ability to 'quarantine' an activitypub peer, causing them to be treated as an OStatus peer.

See merge request pleroma/pleroma!199
2018-06-07 14:44:08 +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
Rachel H 1525a0404b Fix follow errors 2018-06-07 00:39:24 -07:00
Sir_Boops 3f0440ac3c
Dedupe uploads 2018-06-06 13:25:44 -06:00
Rachel H b4292295d7 Allow posting images without text in mastofe 2018-06-06 11:29:49 -07:00
eal 29c9c8d93b Extract host from ap_id, add index 2018-06-06 21:13:40 +03:00
lambda 0a0c6bf394 Merge branch 'bugfix/webfinger-xml-crash' into 'develop'
webfinger robustness improvements

See merge request pleroma/pleroma!195
2018-06-06 16:44:44 +00:00
William Pitcock 1abf0f3b3e webfinger: use https as default fallback instead of http
realistically, all instances need to be on https anyway to properly federate with all
software
2018-06-06 16:27:14 +00:00
William Pitcock aaa81d3540 XML: handle erlang errors too 2018-06-06 16:27:13 +00:00
lambda b5d8213e70 Merge branch 'fix/oauth-http-basic' into 'develop'
Make OAuth token endpoint work with HTTP Basic auth

See merge request pleroma/pleroma!191
2018-06-06 08:27:08 +00:00
D Anzorge 3607dc4558 Make token exchange return errors with 400 as status code 2018-06-06 03:14:50 +02:00
eal f9719b064c Merge branch 'fix/emoji-picker' into 'develop'
set visible_in_picker to true in custom_emojis

Closes #177 and mastofe#16

See merge request pleroma/pleroma!188
2018-06-05 21:18:25 +00:00
D Anzorge 73904e8f78 Make OAuth token endpoint work with HTTP Basic auth
client_id/client_secret can now be supplied in an Authorization header
2018-06-04 00:59:00 +02:00
eal 9075b6d25b ActivityPub.ex: filter domain blocked activities. 2018-06-03 23:33:33 +03:00
eal 4856962434 MastoAPI: add domain blocking. 2018-06-03 22:21:23 +03:00
lain 8073af6e10 Better error handling for OstatusController. 2018-06-03 21:04:44 +02:00
lain 06439f64d0 Better error handling for ActivityPubController 2018-06-03 19:58:59 +02:00
lain 4856ba596f Better error handling for MastodonApiController. 2018-06-03 19:28:11 +02:00
lain 0f70e83e8c Better error handling in TwitterApiController. 2018-06-03 19:11:22 +02:00
Haelwenn (lanodan) Monnier b143694b98
lib/pleroma/web/mastodon_api/mastodon_api_controller.ex: set visible_in_picker to true in custom_emojis
Fixes: https://github.com/ilianaw/emojos.in/issues/4
Closes: https://git.pleroma.social/pleroma/pleroma/issues/177
Closes: https://git.pleroma.social/pleroma/mastofe/issues/16
2018-06-03 18:41:18 +02:00
eal dca1d6d162 Merge branch 'fix/user-timeline-reading-user' into 'develop'
MastoAPI user timelines: render statuses for the logged in user.

See merge request pleroma/pleroma!187
2018-06-01 09:35:29 +00:00
eal 8c609ee3f9 MastoAPI user timelines: render statuses for the logged in user. 2018-06-01 12:30:11 +03:00
lambda 98b8f08783 Merge branch 'fix/twitterapi-incorrect-follows-you' into 'develop'
TwitterAPI: fix "Follows you" being shown for the wrong user.

Closes pleroma-fe#89

See merge request pleroma/pleroma!185
2018-06-01 08:51:04 +00:00
eal 935e544e19 TwitterAPI: fix "Follows you" being shown for the wrong user. 2018-05-31 15:27:42 +03:00
lain 349400c06a Fix url guessing attacks. 2018-05-30 20:00:27 +02:00
eal 5d3fdbc082 MastoAPI: Add streaming for lists. 2018-05-30 16:48:59 +03:00
eal 7cb2e2971e MastoAPI: fix dm_timeline getting non-create activities. 2018-05-30 15:02:22 +03:00
eal 35cb8969c4 MastoAPI: Fix link headers with restrictive params. 2018-05-29 13:31:36 +03:00
lain 3ece4a3ebc Only return certain activities in TwitterAPI mentions. 2018-05-28 12:38:48 +02:00
lain a9e36e5a64 Fix user topic streaming. 2018-05-26 21:06:46 +02: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
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 e80d91c64a introduce User.maybe_direct_follow() and use it where we used to call User.follow() 2018-05-25 09:40:10 +00:00
William Pitcock c89b90222c twitter api: also remove explicit User.follow here 2018-05-25 09:40:06 +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 f3a71f2986 Merge branch 'feature/lists' into 'develop'
Mastodon List API

See merge request pleroma/pleroma!138
2018-05-24 20:22:43 +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
lambda c41012053a Merge branch 'feature/change-password' into 'develop'
Feature/change password

See merge request pleroma/pleroma!166
2018-05-24 17:16:37 +00:00
eal 3dbd9809d4 MastoAPI: add lists. 2018-05-24 15:34:39 +03:00
lain 1cd6194dee More efficient queries. 2018-05-24 12:44:26 +02:00
eal a8369db4f2 MastoAPI: add lists. 2018-05-24 13:18:39 +03:00
lain 0b5bc62b33 Don't save double tags in AP objects we create
This crashed Mastodon workers.
2018-05-23 17:25:24 +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
Francis Dinh 72b93d13f8 Hook up block/unblock to TwitterAPI 2018-05-22 05:41:17 -04:00
Francis Dinh 55f9aefd08 Hook unfollow into TwitterAPI 2018-05-22 04:49:30 -04:00
Francis Dinh b2c6ae7d82 Hook up unfollow and (un)block to MastoAPI + tests 2018-05-22 04:27:40 -04:00
csaurus 4fd9df100f Merge branch 'develop' into feature/mstdn-direct-api 2018-05-21 20:19:37 -04:00
Syldexia d0690622cd Added endpoint for changing passwords 2018-05-21 23:06:03 +01:00
lambda b4064dfe30 Merge branch 'feature/clarify-http-sig-error' into 'develop'
clarify HTTP signature error in logs

See merge request pleroma/pleroma!165
2018-05-21 21:20:41 +00: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
William Pitcock 75cfd9d34d webfinger: fix finding the XRD uri for statusnet instances 2018-05-21 12:41:31 +00:00
lain d269c69a0b Actually fix missing alias. 2018-05-21 12:32:29 +02:00
lain bf64208b52 Add missing alias. 2018-05-21 12:09:03 +02:00
Francis Dinh d045b96f95 Add tests for incoming unfollow over OStatus 2018-05-21 05:11:13 -04:00
Francis Dinh cc5373b846 Fix unblock handling 2018-05-21 05:00:58 -04:00
Francis Dinh f2d6c3a512 Handle unfollows from OStatus 2018-05-21 04:36:20 -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 dca26f3655 Fix specs. 2018-05-20 19:22:26 +02:00
lain ff007af0c2 Return visilility in twitter api, too. 2018-05-20 18:01:24 +02:00
lain 434601a5c3 Return private / direct posts on user timelines, too. 2018-05-20 16:15:18 +02:00
lambda 8b0c222b43 Merge branch 'feature/account-deletion' into 'develop'
Feature/account deletion

Closes #115

See merge request pleroma/pleroma!157
2018-05-20 10:57:19 +00: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
Syldexia d1366f8d46 Modified deleting an account to run as a task 2018-05-19 13:35:49 +01:00
lambda 7831b38705 Merge branch 'feature/webfinger-mime-ld-json' into 'develop'
webfinger: handle application/ld+json links

See merge request pleroma/pleroma!159
2018-05-19 09:31:08 +00: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 725b05d04a run mix format 2018-05-19 08:48:15 +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 1a250d65af webfinger: only do ld+json on modern json webfinger 2018-05-19 01:28:19 -05:00
William Pitcock d1f6ecf607 webfinger: interpret application/ld+json links as an alternate to application/activity+json 2018-05-19 01:28:12 -05:00
William Pitcock cce5a9cb1c webfinger: expose the application/ld+json link alongside the older application/activity+json link 2018-05-19 01:28:03 -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
Syldexia 98b36d359a Fixed formatting and test 2018-05-13 15:43:42 +01:00
Syldexia 5bfb7b4ce6 Moved account deletion stuff to somewhere that hopefully makes more sense 2018-05-13 14:36:02 +01:00
Syldexia a16117225f Added endpoint for user account deletion 2018-05-13 14:35:48 +01: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