Maksim Pechnikov
936951826e
Merge branch 'develop' into test/activity_pub/transmogrifier.ex
2019-09-12 22:15:43 +03:00
rinpatch
769fb778d4
Track object/create activity fetches
2019-09-12 21:37:36 +03:00
Maksim Pechnikov
4f548cb2b7
added test for Ostatus
2019-09-12 10:25:43 +03:00
Mark Felder
74e4c72c4a
Fix double quotes in error logs
...
Example:
pleroma: [error] Couldn't fetch ""https://pleroma.soykaf.com/objects/6288a14b-0623-40fc-a26a-0d358f8a11ca "", error: nil
2019-09-11 16:16:09 -05:00
Maksim Pechnikov
007e0c1ce1
added tests
2019-09-11 23:19:06 +03:00
Haelwenn
46ae62d159
Merge branch 'patch-5' into 'develop'
...
Mastodon API: URI encode hashtag name in generated URLs
See merge request pleroma/pleroma!1642
2019-09-11 17:47:19 +00:00
lain
fb7332aec7
Merge branch 'fix/oom-parallel-rendering' into 'develop'
...
Revert "Parallelize template rendering"
See merge request pleroma/pleroma!1654
2019-09-11 11:21:03 +00:00
Alex S
a1f2dfb10a
expanding regex sigils to use modifiers
2019-09-11 09:25:33 +03:00
Maksim Pechnikov
fcf604fa43
added tests
2019-09-11 07:23:33 +03:00
rinpatch
43f02dfe38
Revert "Parallelize template rendering"
...
This reverts commit 1ad71592ad
.
Since it had no limit on the number on concurrent processes it OOM killed
instances while rendering hellthreads. When I tried introducing a
concurrency limit with Task.async_stream/manual folds it lead to about 3 times
worse performance on threads larger than 1000 activities (we are talking
30s vs 1.2 minutes), I think this is not worth the about 1.5 times
performance increase on smaller threads when using it.
2019-09-10 22:01:45 +03:00
Maksim Pechnikov
a31af93e1d
added tests /activity_pub/transmogrifier.ex
2019-09-10 16:43:10 +03:00
Egor Kislitsyn
b40b10b53d
Add an endpoint to get multiple statuses by IDs
2019-09-10 13:39:45 +07:00
minibikini
11e12b5761
Add Pleroma.Plugs.Cache
2019-09-09 18:53:08 +00:00
edbaf78176
Merge branch 'fix/read-inbox' into 'develop'
...
Fix `ActivityPubController.read_inbox/2`
Closes #1248
See merge request pleroma/pleroma!1649
2019-09-09 18:21:29 +00:00
Egor Kislitsyn
e0f84d0043
Fix ActivityPubController.read_inbox/2
2019-09-10 01:11:57 +07:00
Ivan Tashkinov
c3f00447af
Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
2019-09-08 08:41:10 +03:00
e5c6bf3673
Mastodon API: URI encode hashtag name in generated URLs
...
Otherwise hashtags with word characters other than those allowed in URLs (e.g. Japanese characters) produce hashtag URLs that are invalid.
2019-09-07 19:50:45 +00:00
Maksim Pechnikov
8c6cdff3cc
Merge branch 'develop' into issue/1218
2019-09-07 22:17:32 +03:00
Maksim Pechnikov
39f99dc6cd
Merge branch 'develop' into support/tests
2019-09-07 22:13:43 +03:00
Ariadne Conill
5effb2cbca
activitypub: help ecto build a better query for thread mute filtering
...
using an indexed value in thread_mute table helps ecto build a better query.
2019-09-06 23:11:26 +00:00
Maksim Pechnikov
eb74c3d5c7
Merge branch 'develop' into issue/1218
2019-09-06 14:01:07 +03:00
Ivan Tashkinov
ca1ba1e272
[ #1149 ] Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
...
# Conflicts:
# test/web/twitter_api/twitter_api_controller_test.exs
2019-09-06 13:26:05 +03:00
Egor Kislitsyn
40b3289c26
Refactor add_link_headers/7
-> add_link_headers/3
2019-09-06 17:08:47 +07:00
rinpatch
896ffabe37
Merge branch 'so-long-twitterapi' into 'develop'
...
Removing TwitterAPI
See merge request pleroma/pleroma!1605
2019-09-06 08:43:38 +00:00
Maxim Filippov
736165c082
Reverse reports list
2019-09-05 16:54:34 +03:00
Haelwenn
fe7cf44c40
Merge branch 'feature/mastoapi-accounts-external' into 'develop'
...
Mastdon API: Add ability to get a remote account by nickname to `/api/v1/accounts/:id`
See merge request pleroma/pleroma!1622
2019-09-05 12:48:27 +00:00
rinpatch
26fe6f70c9
Move checking for restrict_local to User.get_cached_by_id_or_nickname
2019-09-05 15:39:10 +03:00
rinpatch
b312ca3d52
Mastodon API Poll view: Fix handling of polls without an end date
2019-09-05 12:03:39 +03:00
Ivan Tashkinov
79cf629e1a
Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
2019-09-05 11:30:41 +03:00
rinpatch
3e30f6e198
Merge branch 'fix/safe-render-notifications' into 'develop'
...
Do not crash if one notification failed to render
See merge request pleroma/pleroma!1630
2019-09-05 05:47:06 +00:00
rinpatch
558969a0fd
Do not crash if one notification failed to render
2019-09-05 08:32:49 +03:00
Maksim Pechnikov
ae506ca997
fix formatting
2019-09-04 21:40:53 +03:00
Maksim
e2011a667c
Apply suggestion to lib/pleroma/web/activity_pub/utils.ex
2019-09-04 18:35:01 +00:00
Maksim
8306078de1
Apply suggestion to lib/pleroma/web/activity_pub/utils.ex
2019-09-04 17:31:14 +00:00
Maxim Filippov
af746fa4a8
Return total for reports
2019-09-04 20:08:13 +03:00
Maksim Pechnikov
a890451187
fetch_announcements -> take_announcements
2019-09-04 17:42:27 +03:00
Maksim Pechnikov
8cbad5500c
add tests for activity_pub/utils.ex
2019-09-04 15:25:12 +03:00
rinpatch
3face45467
Mastodon API: Add pleroma.thread_muted
to Status entity
...
Needed for pleroma-fe!941
2019-09-04 14:17:23 +03:00
rinpatch
c2b6c1b089
Extend /api/pleroma/notifications/read
to mark multiple notifications
...
as read and make it respond with Mastoapi entities
2019-09-04 12:38:27 +03:00
rinpatch
cc1d1ee406
Mastdon API: Add ability to get a remote account by nickname to
...
`/api/v1/accounts/:id`
2019-09-03 19:26:10 +03:00
Ivan Tashkinov
dd017c65a4
[ #1149 ] Refactored Oban workers API (introduced enqueue/3
).
2019-08-31 21:58:42 +03:00
Ivan Tashkinov
a90ea8ba15
[ #1149 ] Addressed code review comments (code style, jobs pruning etc.).
2019-08-31 19:08:56 +03:00
Ivan Tashkinov
e890ea7e82
[ #1149 ] Added Oban job for "activity_expiration". Merged remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
...
# Conflicts:
# config/config.exs
2019-08-31 14:25:43 +03:00
rinpatch
70eed0594c
credo fixes
2019-08-31 13:08:43 +03:00
rinpatch
bd3ed3a622
Add back /api/qvitter/statuses/notifications/read.json
2019-08-31 11:43:06 +03:00
rinpatch
64410497d2
Remove TwitterAPI representers
2019-08-31 10:41:15 +03:00
rinpatch
985122cc03
Remove Activity, User and Notification views from TwitterAPI
2019-08-31 10:31:15 +03:00
rinpatch
90c2dae9a4
Remove most of Pleroma.Web.TwitterAPI.TwitterAPI
2019-08-31 10:20:34 +03:00
Maksim Pechnikov
6ef0103ca0
added Emoji struct
2019-08-31 10:14:53 +03:00
Maksim Pechnikov
d8098d142a
added Emoji.Formatter
2019-08-30 22:04:17 +03:00
Maksim Pechnikov
d7808b5db4
added code\path fields without html tags in ets
2019-08-30 07:30:54 +03:00
7853b3f17d
Fix AntiFollowbotPolicy when trying to follow a relay
2019-08-30 00:38:03 +00:00
Haelwenn
d9d7765383
Merge branch 'fix-osada-follow' into 'develop'
...
Transmogrifier: Fix follow handling when the actor is an object.
Closes #1211
See merge request pleroma/pleroma!1604
2019-08-28 07:10:35 +00:00
lain
66519f2100
Merge branch 'list-controller' into 'develop'
...
Extract list actions from `MastodonAPIController` into `ListController`
See merge request pleroma/pleroma!1600
2019-08-27 21:15:54 +00:00
Maksim
ffcd742aa0
Apply suggestion to lib/pleroma/web/activity_pub/activity_pub_controller.ex
2019-08-27 17:37:19 +00:00
lain
c30cc039e4
Transmogrifier: Use Containment.get_actor to get actors.
2019-08-27 12:22:30 -05:00
Maksim Pechnikov
00abe099cd
added tests for ActivityPub.like\unlike
2019-08-27 16:21:03 +03:00
rinpatch
eb1739c596
Remove most of TwitterAPIController
2019-08-27 12:29:19 +03:00
lain
3da65292b3
Transmogrifier: Fix follow handling when the actor is an object.
2019-08-26 14:34:52 -05:00
Egor Kislitsyn
4194abbc8f
Move mastodon_api/*_controller.ex to mastodon_api/controllers/
2019-08-26 19:37:57 +07:00
Egor Kislitsyn
30510ade0e
Extract MastodonAPIController's list actions into MastodonAPI.ListController; Add more tests
2019-08-26 19:37:54 +07:00
Egor Kislitsyn
4d82bc8b0b
Extract MastodonAPI.MastodonAPIController.errors/2 to MastodonAPI.FallbackController
2019-08-26 19:16:40 +07:00
kaniini
6dc24422dc
Merge branch 'issue/1177' into 'develop'
...
[#1177 ] fixed unfollow for relay actor
See merge request pleroma/pleroma!1589
2019-08-25 19:43:27 +00:00
Maxim Filippov
37dd3867bb
Log admin/moderator actions
2019-08-25 19:39:37 +00:00
lain
90986667ce
Merge branch 'admin-create-users' into 'develop'
...
user creation admin api will create multiple users
See merge request pleroma/pleroma!1170
2019-08-24 16:04:19 +00:00
lain
efb8818e9e
Activity Expiration: Switch to 'expires_in' system.
2019-08-24 17:22:48 +02:00
Maksim Pechnikov
654d291b6d
update tests
2019-08-24 17:41:53 +03:00
Maksim Pechnikov
6062017493
put_resp_header("content-type", "application/activity+json") -> put_resp_content_type("application/activity+json")
2019-08-24 17:17:17 +03:00
lain
cc6c0b4ba6
Merge remote-tracking branch 'origin/develop' into sixohsix/pleroma-post_expiration
2019-08-24 15:48:33 +02:00
Ivan Tashkinov
581123f8bb
[ #1149 ] Introduced quantum
job scheduler. Documentation & config changes.
2019-08-23 18:28:23 +03:00
Maksim Pechnikov
8dc6a6b210
fix /inbox for Relay
2019-08-22 22:48:07 +03:00
Maksim Pechnikov
399ca9133b
fix test
2019-08-22 21:54:37 +03:00
Maksim Pechnikov
f95b67c933
Merge branch 'develop' into issue/1177
2019-08-22 21:13:03 +03:00
Ivan Tashkinov
7101ba1a21
Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
2019-08-22 21:01:28 +03:00
Ivan Tashkinov
256ff09aa8
[ #1149 ] Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
...
# Conflicts:
# lib/pleroma/application.ex
# lib/pleroma/scheduled_activity_worker.ex
# lib/pleroma/web/federator/retry_queue.ex
# lib/pleroma/web/oauth/token/clean_worker.ex
# test/user_test.exs
# test/web/federator_test.exs
2019-08-22 20:59:58 +03:00
Egor Kislitsyn
a79ebac592
Improve AP routes rate limit
2019-08-22 16:03:43 +07:00
Maksim Pechnikov
64bfb41c55
fixed unfollow for relay actor
2019-08-22 06:57:55 +03:00
Sachin Joshi
37229af15f
remove old user create and delete routes for admin
2019-08-22 00:15:00 +05:45
lain
f740d786a3
Merge branch 'rate-limit-ap-routes' into 'develop'
...
[#1174 ] Rate limit AP routes
See merge request pleroma/pleroma!1586
2019-08-21 16:45:20 +00:00
lain
74f7f308f8
Merge branch 'fix/admin-api-user-deletion' into 'develop'
...
Fix deactivated user deletion
See merge request pleroma/pleroma!1546
2019-08-20 19:34:47 +00:00
Egor Kislitsyn
8d899d6197
Add :ap_routes
rate limit
2019-08-20 22:10:36 +07:00
lain
8340fe8fcc
Merge branch 'digest-template' into 'develop'
...
Improve digest email template
See merge request pleroma/pleroma!1565
2019-08-20 12:55:51 +00:00
lain
ef43016b2c
Merge branch 'feature/custom-fields' into 'develop'
...
Add custom profile fields
See merge request pleroma/pleroma!1488
2019-08-20 12:44:14 +00:00
Maxim Filippov
5171aa5b4d
Refactor check_actor_is_active
2019-08-19 20:36:25 +03:00
kaniini
18c8c8d176
Merge branch 'feature/hide-muted-threads-from-timeline' into 'develop'
...
Hide muted theads from home/public timelines unless `with_muted` is set
See merge request pleroma/pleroma!1575
2019-08-18 21:57:55 +00:00
lain
7ab2dbbdb6
Merge branch 'pleroma-conversations' into 'develop'
...
Extended Pleroma Conversations
See merge request pleroma/pleroma!1535
2019-08-16 12:55:33 +00:00
Egor Kislitsyn
158231cd20
Add configurable colors and logo for the digest template
2019-08-16 18:32:25 +07:00
rinpatch
1ad71592ad
Parallelize template rendering
2019-08-15 18:05:50 +03:00
rinpatch
a4a3e3becd
Hide muted theads from home/public timelines unless with_muted
is set
2019-08-15 17:37:30 +03:00
Maxim Filippov
ec969eec51
Merge branch 'develop' into 'fix/admin-api-user-deletion'
...
# Conflicts:
# CHANGELOG.md
2019-08-14 22:45:32 +00:00
Maxim Filippov
2b94ae3b39
Do not check if actor is active when deleting a user
2019-08-15 01:35:29 +03:00
rinpatch
bd5ad0af78
Cache follow state
2019-08-15 00:47:30 +03:00
rinpatch
31d576de0c
Merge branch 'misc-otp-issues' into 'develop'
...
Misc OTP issues
See merge request pleroma/pleroma!1567
2019-08-14 19:22:15 +00:00
rinpatch
dc902ad3df
Merge branch 'fix/http-signatures-post' into 'develop'
...
activitypub: publisher: add (request-target) to http signature when POSTing
See merge request pleroma/pleroma!1569
2019-08-14 19:16:52 +00:00
kaniini
1754f8ce6d
Apply suggestion to lib/pleroma/web/activity_pub/publisher.ex
2019-08-14 19:05:44 +00:00
Ariadne Conill
5bb418a90d
activitypub: publisher: add (request-target) to http signature when POSTing
2019-08-14 19:01:51 +00:00
Ariadne Conill
626e094589
MRF: fix up unserializable option lists in describe implementations
2019-08-14 18:54:17 +00:00
Ivan Tashkinov
8778c16dac
Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
2019-08-14 21:44:50 +03:00
stwf
574856ef01
streamline Streamer pings
2019-08-14 11:58:32 -04:00
stwf
15ef521009
Isolate OAuth.Token.CleanWorker
2019-08-14 11:57:50 -04:00
stwf
51bdf0cab6
use default child_specs
2019-08-14 11:55:17 -04:00
lain
d3af9e19ed
Conversations: Load relations in one query.
2019-08-14 17:01:11 +02:00
lain
f73212b2a3
Conversation: Render new participation on update.
2019-08-14 15:56:15 +02:00
lain
df81abb68c
Conversations: Use correct oauth paths for extended api.
2019-08-14 15:55:43 +02:00
Egor Kislitsyn
4b7f1c6995
Improve digest email template
2019-08-14 20:46:05 +07:00
lain
560dbad538
Merge remote-tracking branch 'origin/develop' into pleroma-conversations
2019-08-14 15:30:40 +02:00
Egor Kislitsyn
e457fcc479
Add :max_remote_account_fields
config option
2019-08-14 14:58:06 +07:00
Egor Kislitsyn
f7bbf99caa
Use info.fields instead of source_data for remote users
2019-08-14 14:52:54 +07:00
Egor Kislitsyn
7d6f8a7fd7
Linkify custom fields values in ActivityPub.UserViewx
2019-08-14 14:52:54 +07:00
Egor Kislitsyn
5178f960c3
Support user attachment update in Transmogrifier
2019-08-14 14:52:54 +07:00
Egor Kislitsyn
88598c9baf
Add profile custom fields to ActivityPub.UserView
2019-08-14 14:52:54 +07:00
Egor Kislitsyn
a22f540fc4
Add custom fields to TwitterAPI.UserView
2019-08-14 14:52:54 +07:00
Egor Kislitsyn
e0ac5c7a66
Add custom profile fields
2019-08-14 14:52:54 +07:00
kaniini
5c35d2f1d8
Merge branch 'preload-user-timelines' into 'develop'
...
Preload thread mutes/bookmarks in user_statuses
See merge request pleroma/pleroma!1563
2019-08-14 01:04:07 +00:00
kaniini
fe42844bda
Merge branch 'get-context-optimizations' into 'develop'
...
Preload thread mutes/bookmarks in get_context
See merge request pleroma/pleroma!1562
2019-08-14 01:03:54 +00:00
rinpatch
8202f1634a
Preload thread mutes/bookmarks in user_statuses
2019-08-14 03:02:09 +03:00
rinpatch
f4e087ee48
Preload thread mutes/bookmarks in get_context
...
Also removes filtering for creates (was done on the database side
already) and filtering for the requested activity (moved to the database
side) from application side.
2019-08-14 02:36:54 +03:00
rinpatch
9ef31767f2
Merge branch 'feature/mrf-vocabulary' into 'develop'
...
MRF Vocabulary
See merge request pleroma/pleroma!1559
2019-08-13 22:51:15 +00:00
kaniini
c3a54cc34d
Merge branch 'feature/mrf-describe' into 'develop'
...
MRF describe API
See merge request pleroma/pleroma!1561
2019-08-13 22:46:19 +00:00
Ariadne Conill
abfbcfdcb3
mrf_vocabulary: add describe API support
2019-08-13 22:39:26 +00:00
Ariadne Conill
4244e17de0
fix credo
2019-08-13 22:36:24 +00:00
Haelwenn
47c20ab796
Merge branch 'fix/mastoapi-more-object-preloads' into 'develop'
...
Mastodon API: Preloading and normalization optimizations
See merge request pleroma/pleroma!1558
2019-08-13 22:32:49 +00:00
rinpatch
46d7bef7e7
Nicer formatting for safe_render errors
2019-08-14 01:15:18 +03:00
Ariadne Conill
f305e97eeb
nodeinfo: use MRF.describe() instead of hardcoded MRF transparency stuff
2019-08-13 22:09:02 +00:00
Ariadne Conill
c574b7a1fc
MRF: add describe() to all modules, add base MRF configuration to base describe()
2019-08-13 22:08:58 +00:00
Ariadne Conill
694bc43123
MRF: add describe() for gathering and describing the MRF configuration
2019-08-13 21:26:24 +00:00
Maksim
fea4d89e9f
tests for Web/ActivityPub/Relay
2019-08-13 21:12:59 +00:00
Maksim
04da1166db
tests for /web/mastodon_api/mastodon_api.ex
2019-08-13 21:12:37 +00:00
Ariadne Conill
3fdbeb7087
MRF: add vocabulary policy module
2019-08-13 20:55:38 +00:00
rinpatch
c1b6952d2a
Mastodon API: Preloading and normalization optimizations
...
- Try to normalize the activity instead of object wherever possible
- Put the `user` key on non-home timelines as well so bookmarks and
thread mutes are preloaded there as well
- Skip trying to get the user when rendering mentions if the id ==
as:Public or user's follower collection
- Preload the object when getting replied to activities and do not crash
if it's not present
This almost solves the problem of Pleroma hammering the db with a lot
of queries when rendering timelines, the things left are
1. When rendering mentions and the user is not in cache, save it for
later and request all uncached users in one go
2. Somehow get rid of needing to get the latest follow activity to
detect the value of `requested` in a relationship. (create a database
view for user relationship and cache it maybe?)
2019-08-13 20:34:34 +03:00
Ivan Tashkinov
0e1c481a94
[ #1149 ] Added more oban workers. Refactoring.
2019-08-13 20:20:26 +03:00
Ariadne Conill
f46cd7e9c7
config: remove legacy activitypub accept_blocks setting
...
Anyone who is interested in dropping blocks can write their own MRF
policy at this point. This setting predated the MRF framework.
Disabling the side effect (unsubscription) is still a config option
per policy.
2019-08-13 02:15:21 +00:00
lain
511ccea5aa
ConversationView: Align parameter names with other views.
2019-08-12 14:23:06 +02:00
lain
60231ec7bd
Conversation: Add endpoint to get a conversation by id.
2019-08-12 13:58:04 +02:00
lain
23c46f7e72
Conversations: Use 'recipients' for accounts in conversation view.
...
According to gargron, this is the intended usage.
2019-08-12 12:51:08 +02:00
rinpatch
92479c6f48
Do not fetch the reply object in fix_type
unless the object has the
...
`name` key and use a depth limit when fetching it
2019-08-11 22:49:55 +03:00
Ariadne Conill
9cfc289594
MRF: ensure that subdomain_match calls are case-insensitive
2019-08-10 21:19:26 +00:00
kaniini
84808e1697
Merge branch 'develop' into 'fix/hide-follows-counters'
...
# Conflicts:
# CHANGELOG.md
2019-08-10 18:49:04 +00:00
Sergey Suprunenko
af4cf35e20
Strip internal fields including likes from incoming and outgoing activities
2019-08-10 18:47:40 +00:00
rinpatch
0802a08871
Mastodon API: Fix thread mute detection
...
It was calling CommonAPI.thread_muted? with post author's account
instead of viewer's one.
2019-08-10 16:27:46 +03:00
Maxim Filippov
dfae61c25c
Fix deactivated user deletion
2019-08-09 23:05:28 +03:00
Ivan Tashkinov
267262491e
Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
2019-08-09 20:09:56 +03:00
Ivan Tashkinov
b7fad8d395
[ #1149 ] Oban jobs implementation for :federator_incoming and :federator_outgoing queues.
2019-08-09 20:08:01 +03:00
rinpatch
409bcad54b
Mastodon API: Set follower/following counters to 0 when hiding
...
followers/following is enabled
We are already doing that in AP representation, so I think we should do
it here as well for consistency.
2019-08-09 16:53:55 +03:00
lain
29807ef6a5
Merge branch 'feature/digest-email' into 'develop'
...
Feature/digest email
See merge request pleroma/pleroma!1078
2019-08-08 14:38:33 +00:00
lain
a2b98f6d58
Merge remote-tracking branch 'origin/develop' into pleroma-conversations
2019-08-08 16:04:20 +02:00
Thibaut Girka
9c0da1009a
Return profile URL in MastodonAPI's url
field
2019-08-07 21:40:53 +00:00
Thibaut Girka
089d53a961
Simplify logic to mention.js url
field
...
`User.profile_url` already fallbacks to ap_id
2019-08-07 20:55:37 +00:00
Thibaut Girka
a10c840aba
Return profile URL when available instead of actor URI for MastodonAPI mention URL
...
Fixes #1165
2019-08-07 20:29:30 +00:00
Haelwenn
aa718ab8f6
Merge branch 'fix/object-reembeds' into 'develop'
...
Do not rembed the object after updating it
Closes #1142
See merge request pleroma/pleroma!1538
2019-08-06 22:14:00 +00:00