Commit graph

4324 commits

Author SHA1 Message Date
Ekaterina Vaartis
36f2275dc9 A feature for shareable emoji packs, use it in download_from & tests 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
74fb6d8647 Move EmojiAPIController from EmojiAPI to PleromaAPI 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
6cd651a38b Make the emoji controller api more RESTy 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
3971bf9c5f Change :sha to :checksum 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
7c784128fd Change emoji api responses to JSON 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
f24731788e Move emoji pack list from /list to / 2019-09-19 00:16:33 +03:00
vaartis
cb125ffaf7 Apply suggestion to lib/pleroma/web/emoji_api/emoji_api_controller.ex 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
8f509e6d1e Use with w/ pack_info_res 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
8790365fef Remove unused variable 2019-09-19 00:16:33 +03:00
vaartis
b8a214b0ab Split list_packs 2019-09-19 00:16:33 +03:00
vaartis
f251225cae Apply suggestions to emoji_api_controller.ex 2019-09-19 00:16:33 +03:00
vaartis
c049c32270 Fixed a typo in create_archive_and_cache 2019-09-19 00:16:33 +03:00
vaartis
163082de6f Apply suggestion to lib/pleroma/web/emoji_api/emoji_api_controller.ex 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
f6d4acc871 Fix credo warnings 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
87057101b0 Add documentation for the emoji api endpoints 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
9eb2ee4df0 Allow importing old (emoji.txt / plain) packs from the filesystem 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
13cd93a0d3 Use && insted of "and" for checking shared-files for packs
share-files can be nil and "and" does not like that
2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
f5131540dc Add a way to create emoji packs via an endpoint 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
8dbdd5c280 Allow uploading new emojis to packs from URLs 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
16edfef12e Handle empty shortcode/filename/new_shortcode/new_filename 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
9afe7258dd Implememt emoji pack file updating + write tests 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
261d92f9c2 Update the pack fallback-src sha generation condition
The old one would not regenerate sha when fallback src changed
2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
bcc0bfd0c5 Add an endpoint for emoji pack metadata updating 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
b78973d27f fallback can't have pack.json, reflect that in code
having pacj.json and sha256 in a fallback pack would cause a circular dependency of itself
2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
2a94eca096 Change YAML to JSON 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
b0ecd412f5 Clean out old emojis on reload 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
2d4b8f3d20 Add an endpoint for deleting emoji packs 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
3a8669b487 Fix responses for emoji pack controlller 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
7a0c755d0a Send ok for emoji reloading as text, not as json 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
ee620ecbf1 Add caching for emoji pack sharing 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
7fb7dd9e0e Only find SHA256 for packs that are shared 2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
54b8e683bc Swap TOML for YAML to get YAML generation for packs from fallbacks
If fallback url doesn't have a pack.yml file, one from the source will
be used
2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
b791a08656 Implement API actions on packs
That incldues listing them and downloading them from other instances
or from the remote url
2019-09-19 00:16:33 +03:00
Ekaterina Vaartis
6a42641b8d Add pack.toml loading 2019-09-19 00:16:33 +03:00
ab2ca3038f Merge branch 'hide-follower-following-count' into 'develop'
Add a setting to hide follows/followers stats from the user profile

See merge request pleroma/pleroma!1663
2019-09-18 21:13:15 +00:00
25b4365656 Merge branch 'admin_api_invite_tokens' into 'develop'
POST for creating invite tokens in admin api

See merge request pleroma/pleroma!1637
2019-09-18 21:11:37 +00:00
Haelwenn
e32d099a3a Merge branch 'feature/poll-refresh' into 'develop'
Poll refetching

See merge request pleroma/pleroma!1694
2019-09-18 20:58:53 +00:00
rinpatch
5028b7b578 Fix credo issues 2019-09-18 22:09:03 +03:00
rinpatch
c096dd86e5 Do not refetch local objects 2019-09-18 20:01:26 +03:00
rinpatch
eb87a86b5b Preserve internal fields when reinjecting 2019-09-18 19:53:51 +03:00
rinpatch
d32894ae51 Move object internal fields to a constant 2019-09-18 19:24:20 +03:00
rinpatch
e3f902b3a1 Set updated_at even if the object stayed the same 2019-09-18 19:07:25 +03:00
rinpatch
a9c700ff15 Fix wrong argument order when calling NaiveDateTime.diff 2019-09-18 18:52:33 +03:00
rinpatch
7ef575d11e Initial poll refresh support
Implement refreshing the object with an interval and call the function
when getting the poll.
2019-09-18 18:13:21 +03:00
Maxim Filippov
384b7dd40d Fix response 2019-09-18 18:06:49 +03:00
Maxim Filippov
f89728ad95 Merge branch 'develop' into feature/return-link-for-password-reset 2019-09-18 16:44:11 +03:00
Alex S
a18f1e7cd7 namings 2019-09-18 10:49:14 +03:00
Alex S
2263c8b6b9 little fixes 2019-09-18 10:49:14 +03:00
Alex S
4faf2b1555 post for creating invite tokens in admin api 2019-09-18 10:49:14 +03:00
Haelwenn (lanodan) Monnier
e501c822c9
markdown.ex: put two-spaces before the description-newline 2019-09-17 23:05:27 +02:00
Haelwenn (lanodan) Monnier
4785596a2c
markdown.ex: end suggestions list with a newline
Otherwise we end up with suggestion on the same level as the childs

Markdown is a fuck…
2019-09-17 23:05:27 +02:00
Haelwenn (lanodan) Monnier
d2097fd0f5
markdown.ex: \n\n on >1 suggestions, 2-spaces on one 2019-09-17 23:05:27 +02:00
Haelwenn (lanodan) Monnier
d6182a3c8f
markdown.ex: Make suggestion(s) plural only if on >1 2019-09-17 23:05:27 +02:00
Haelwenn (lanodan) Monnier
c0c5628200
description.exs: remove empty strings on descriptions 2019-09-17 23:05:26 +02:00
Haelwenn (lanodan) Monnier
106afaed58
markdown.ex: do not fail if there is no children 2019-09-17 23:05:26 +02:00
Haelwenn (lanodan) Monnier
e0d8c8897e
docs/markdown.ex: do no print empty suggestions 2019-09-17 23:05:26 +02:00
Maxim Filippov
f9dd121ad3 Admin API: Return link alongside with token on password reset 2019-09-17 23:09:08 +03:00
Haelwenn (lanodan) Monnier
7f211a48e0
docs/markdown.ex: child header as "- key (type): description" 2019-09-17 21:47:32 +02:00
Maksim Pechnikov
0447c42715 Merge branch 'develop' into issue/733 2019-09-17 22:20:39 +03:00
rinpatch
ef2e2c5e12 Merge branch 'feature/return-total-for-reports' into 'develop'
Admin API: Return total for reports

See merge request pleroma/pleroma!1628
2019-09-17 19:09:56 +00:00
Maksim Pechnikov
7dd51652f9 Merge branch 'develop' into issue/733 2019-09-17 21:20:08 +03:00
Steven Fuchs
6193157f19 Fix notification warnings 2019-09-17 18:12:27 +00:00
Haelwenn
2301de3d75 Merge branch 'fix/upgrade_user_from_ap_id' into 'develop'
Fix `Transmogrifier.upgrade_user_from_ap_id/1`

See merge request pleroma/pleroma!1677
2019-09-17 17:16:39 +00:00
rinpatch
95a4a19417 Merge branch 'support/tests' into 'develop'
add tests for activity_pub/utils.ex

See merge request pleroma/pleroma!1627
2019-09-17 14:47:26 +00:00
Steven Fuchs
80c5c3495b remove remaining errors from tests 2019-09-17 14:44:52 +00:00
Roman Chvanikov
9fa2586abd Refactor SubscriptionNotificationView 2019-09-17 17:44:10 +03:00
Roman Chvanikov
e9f69a3eb7 Move pleroma_api controllers into controllers sub-folders 2019-09-17 16:52:23 +03:00
Roman Chvanikov
7d1773bc6b Rename SubscriptionNotificationController list and get actions to index and show 2019-09-17 16:48:24 +03:00
Roman Chvanikov
a76168e743 Cleanup PleromaAPIController 2019-09-17 16:44:54 +03:00
Roman Chvanikov
a81f80233d Apply suggestion to lib/pleroma/web/router.ex 2019-09-17 13:43:10 +00:00
Roman Chvanikov
f9be517c7f Apply suggestion to lib/pleroma/web/pleroma_api/subscription_notification_controller.ex 2019-09-17 13:42:40 +00:00
Roman Chvanikov
c0f776faec Apply suggestion to lib/pleroma/web/pleroma_api/subscription_notification_controller.ex 2019-09-17 13:42:36 +00:00
Roman Chvanikov
2688b876ab Apply suggestion to lib/pleroma/web/pleroma_api/subscription_notification_controller.ex 2019-09-17 13:42:28 +00:00
eugenijm
450bf7a63c Mastodon API: Add a setting to hide follow/follower count from the user view (hide_follows_count and hide_followers_count) 2019-09-17 14:45:47 +03:00
rinpatch
a21584556f Update oban to 0.8.1
This version uses a different locking mechanism, which gets rid of
`WARNING:  you don't own a lock of type ShareLock` log spam
2019-09-17 13:04:43 +03:00
Roman Chvanikov
6042e21b25 Move subscription notifications to a separate controller 2019-09-16 21:59:49 +03:00
Roman Chvanikov
56b60798c2 Code style fixes 2019-09-16 20:50:14 +03:00
Roman Chvanikov
76c3e290fc Merge develop 2019-09-16 20:30:42 +03:00
Maxim Filippov
df15ed13d1 Merge branch 'develop' into feature/moderation-log-filters 2019-09-16 19:44:06 +03:00
Egor Kislitsyn
085d014f08 Fix Transmogrifier.upgrade_user_from_ap_id/1 2019-09-16 19:26:00 +07:00
Maxim Filippov
219dca1b00 Merge branch 'develop' into feature/return-total-for-reports 2019-09-16 14:40:17 +03:00
Egor Kislitsyn
96816ceaa2 Revert "Merge branch 'revert-4fabf83a' into 'develop'"
This reverts commit fe7fd33126, reversing
changes made to 4fabf83ad0.
2019-09-16 17:55:04 +07:00
kaniini
c623b4324d Revert "Merge branch 'streamer-refactoring' into 'develop'"
This reverts merge request !1653
2019-09-16 09:09:21 +00:00
Steven Fuchs
aab264db82 Streamer refactoring 2019-09-16 07:44:03 +00:00
kaniini
17142a3720 Merge branch 'feature/delivery-tracking' into 'develop'
Track signed fetches of objects and use them for delete federation

See merge request pleroma/pleroma!1661
2019-09-16 07:39:58 +00:00
kaniini
d1a84ceec8 Merge branch 'feature/optimize_rich_media_parser' into 'develop'
added prepare html for RichMedia.Parser

See merge request pleroma/pleroma!1672
2019-09-16 07:37:54 +00:00
Maksim Pechnikov
d75bc728e7 Merge branch 'develop' into issue/733 2019-09-16 07:34:22 +03:00
Maksim Pechnikov
b4cf74c106 added prepare html for RichMedia.Parser 2019-09-15 14:53:58 +03:00
Maksim Pechnikov
8751809e1e Merge branch 'develop' into support/tests 2019-09-15 14:22:15 +03:00
Ivan Tashkinov
610236d6be [#1149] Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
# Conflicts:
#	docs/config.md
2019-09-15 10:12:24 +03:00
rinpatch
9c64a25713 Merge branch 'config-changes' into 'develop'
two separate files for config.md and generated config.md

See merge request pleroma/pleroma!1666
2019-09-14 17:26:35 +00:00
rinpatch
62bbba80f3 Merge branch 'fix/truncate-remote-user-fields' into 'develop'
Truncate remote user fields

See merge request pleroma/pleroma!1619
2019-09-14 16:39:42 +00:00
Roman Chvanikov
d7457c9165 Merge branch 'develop' into refactor/subscription 2019-09-14 18:29:51 +03:00
Ivan Tashkinov
6bcedb693c [#1149] Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
# Conflicts:
#	docs/config.md
#	mix.lock
2019-09-14 16:11:44 +03:00
rinpatch
5c5ebd3861 Mastodon API: Respect post privacy in favourited/reblogged endpoints 2019-09-14 01:50:15 +03:00
lain
1be09bde2d Merge branch 'refactor/add_link_headers' into 'develop'
Refactor `add_link_headers/7` -> `add_link_headers/3`

See merge request pleroma/pleroma!1636
2019-09-13 17:06:38 +00:00
rinpatch
ba70a8cae6 Merge branch 'develop' into feature/delivery-tracking 2019-09-13 19:42:53 +03:00
rinpatch
ac4a748fad Disallow NULLs in deliveries 2019-09-13 19:28:35 +03:00
Alex S
69faec031d markdown generation to the new file 2019-09-13 19:02:42 +03:00
Roman Chvanikov
0bd2b85edb Separate Subscription Notifications from regular Notifications 2019-09-13 18:25:27 +03:00
rinpatch
8900cb68ae Apply suggestion to lib/pleroma/web/activity_pub/activity_pub_controller.ex 2019-09-13 15:25:15 +00:00
rinpatch
05f8a066a1 Apply suggestion to lib/pleroma/delivery.ex 2019-09-13 15:23:26 +00:00
rinpatch
2784962dba Apply suggestion to lib/pleroma/web/activity_pub/activity_pub_controller.ex 2019-09-13 15:23:03 +00:00
lain
53a3ad6043 Merge branch 'cleanup-activity' into 'develop'
Cleanup `Pleroma.Activity` and add more tests

See merge request pleroma/pleroma!1623
2019-09-13 14:48:00 +00:00
Haelwenn
0d9609894f Merge branch 'feature/change-email' into 'develop'
Add email change endpoint

Closes #1156

See merge request pleroma/pleroma!1580
2019-09-13 12:46:16 +00:00
rinpatch
f884987ace Merge branch 'admin-config-description' into 'develop'
Admin config description

Closes #1178 and #1209

See merge request pleroma/pleroma!1611
2019-09-13 12:36:24 +00:00
rinpatch
3896a51b8a Apply suggestion to lib/pleroma/web/activity_pub/activity_pub_controller.ex 2019-09-13 10:09:56 +00:00
rinpatch
5170170483 Apply suggestion to lib/pleroma/web/activity_pub/activity_pub_controller.ex 2019-09-13 10:09:46 +00:00
rinpatch
fb96facc32 Remove unused functions and fix credo issues 2019-09-13 12:29:42 +03:00
rinpatch
ce23529d91 Use delivery info when federating deletes 2019-09-13 11:38:17 +03:00
Egor Kislitsyn
25d8216804 Add email change endpoint 2019-09-13 13:09:35 +07:00
Egor Kislitsyn
39dc9b470c Cleanup Pleroma.Activity and Pleroma.Web.ActivityPub.Utils 2019-09-13 12:44:59 +07:00
Maksim Pechnikov
d8a178274b fix Activity.get_by_id 2019-09-13 07:12:34 +03:00
Maksim Pechnikov
2b40e57a72 Merge branch 'develop' into test/activity_pub/transmogrifier.ex 2019-09-13 06:55:05 +03:00
Haelwenn
51609217c2 Merge branch 'fix/error-log-double-quotes' into 'develop'
Fix double quotes in error logs

See merge request pleroma/pleroma!1656
2019-09-12 20:21:56 +00:00
rinpatch
b0e6058021 Parse http signature for request to objects/activities 2019-09-12 23:03:52 +03:00
Maksim Pechnikov
936951826e Merge branch 'develop' into test/activity_pub/transmogrifier.ex 2019-09-12 22:15:43 +03:00
rinpatch
dabc4a00f5 Put the cache with the right key when using a tracking function 2019-09-12 22:10:15 +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
rinpatch
56828abf6d Use Jason for rendering responses
Although Jason readme says Phoenix 1.4+ already does it by default, [it actually does it only for new projects](3bfb9f6e90/lib/phoenix.ex (L58-L59))
2019-09-11 23:06:31 +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
be32d90a0c little refactor 2019-09-11 09:25:33 +03:00
Alex S
5ff12e7df1 some changes 2019-09-11 09:25:33 +03:00
Alex S
35757b6d0e don't add behaviour to suggestions 2019-09-11 09:25:33 +03:00
Alex S
0624e06a9c little fix 2019-09-11 09:25:33 +03:00
Alex S
6721301086 some changes 2019-09-11 09:25:33 +03:00
Alex S
a1f2dfb10a expanding regex sigils to use modifiers 2019-09-11 09:25:33 +03:00
Alex S
67e4300931 description formatters 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
Maxim Filippov
d1abf7a358 Merge branch 'develop' into feature/moderation-log-filters 2019-09-10 01:23:20 +03: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
40a61532ca activity: when restricting deactivated users, precalculate the user list
the PostgreSQL query planner is easily confused due to the complexity of
certain queries we make.  while we plan to simplify these queries through
unification of activities and objects, we are not yet there.  it has been
discovered that using a precalculated list of deactivated users encourages
the query planner to prefer simpler indices instead of the
activity_visibility index.

accordingly, drop the subquery and precalc the user list instead.
2019-09-06 23:14:29 +00: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
ab2f21e470 tests for mastodon_api_controller.ex 2019-09-06 21:50:00 +03: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