Commit graph

1339 commits

Author SHA1 Message Date
Egor Kislitsyn
585bc57edb
Extract media actions from MastodonAPIController to MediaController 2019-10-01 14:36:35 +07:00
Egor Kislitsyn
36a34c36fe
Extract poll actions from MastodonAPIController to PollController 2019-10-01 11:44:34 +07:00
kPherox
a0f101ee80
Merge remote-tracking branch 'upstream/develop' into fix-prameter-name-of-accounts-update-credentials 2019-10-01 01:40:33 +09:00
Egor Kislitsyn
0c6009dd2e
Extract mascot actions from MastodonAPIController to MascotController 2019-09-30 19:32:43 +07:00
Egor Kislitsyn
987e0b8be8
Move update_credentials to MastodonAPI.AccountController 2019-09-30 19:10:56 +07:00
Egor Kislitsyn
c0ce2d5faf
Move account_register, relationships and verify_credentials to MastodonAPI.AccountController 2019-09-30 19:10:55 +07:00
Egor Kislitsyn
3c5ecb70b4
Add PleromaAPI.AccountController 2019-09-30 19:10:55 +07:00
Egor Kislitsyn
e7aef27c00
Fix merge 2019-09-30 19:10:54 +07:00
kaniini
0e356cc800 Merge branch 'split-masto-api/reports' into 'develop'
Extract report actions from `MastodonAPIController` to `ReportController`

See merge request pleroma/pleroma!1744
2019-09-30 11:17:30 +00:00
kaniini
74d8fadf37 Merge branch 'split-masto-api/conversations' into 'develop'
Extract conversation actions from `MastodonAPIController` to ConversationController

See merge request pleroma/pleroma!1743
2019-09-30 10:49:40 +00:00
Egor Kislitsyn
b7f27a4f58
Extract report actions from MastodonAPIController to ReportController
Update MastodonAPI.ReportView
2019-09-30 17:44:10 +07:00
Ariadne Conill
7cad6ea67a pleroma api: hook up scrobbler controller 2019-09-30 10:39:17 +00:00
Ariadne Conill
b7877e9b1c mastodon api: implement rendering of listen activities 2019-09-30 10:39:17 +00:00
Egor Kislitsyn
d4d88b3361
Extract conversation actions from MastodonAPIController to ConversationController 2019-09-30 16:52:07 +07:00
kaniini
6d74a7528c Merge branch 'feature/follow-requests-count' into 'develop'
Mastodon API: add follow_requests_count

See merge request pleroma/pleroma!1726
2019-09-29 11:44:31 +00:00
Maksim Pechnikov
1053319cd6 Merge branch 'develop' into tests/mastodon_api_controller.ex 2019-09-28 10:36:04 +03:00
Haelwenn (lanodan) Monnier
9202904da9
status_controller.ex: Posting media status without content defined 2019-09-28 01:53:41 +02:00
kaniini
92d08d4113 Merge branch 'split-masto-api/follow-requests' into 'develop'
Extract follow requests actions from `MastodonAPIController` to `FollowRequestController`

See merge request pleroma/pleroma!1730
2019-09-27 07:54:54 +00:00
kaniini
68bf99baf2 Merge branch 'split-masto-api/domain-blocks' into 'develop'
Extract domain blocks actions from `MastodonAPIController` to `DomainBlockController`

See merge request pleroma/pleroma!1729
2019-09-27 07:54:08 +00:00
kaniini
27a3221d57 Merge branch 'split-masto-api/scheduled-statuses' into 'develop'
Extract scheduled statuses actions from `MastodonAPIController` to `ScheduledActivityController`

See merge request pleroma/pleroma!1728
2019-09-27 07:53:22 +00:00
Egor Kislitsyn
408750b94e Extract domain blocks actions from MastodonAPIController to DomainBlockController 2019-09-27 14:28:05 +07:00
Egor Kislitsyn
99c5a35890 Extract follow requests actions from MastodonAPIController to FollowRequestController 2019-09-27 14:25:17 +07:00
Egor Kislitsyn
8d31530119 Cleanup ScheduledActivityView 2019-09-27 13:36:28 +07:00
Egor Kislitsyn
0a5b106ddd Extract scheduled statuses actions from MastodonAPIController to ScheduledActivityController 2019-09-27 13:36:28 +07:00
Egor Kislitsyn
621377f378 Extract filter actions from MastodonAPIController to FilterController 2019-09-27 13:06:25 +07:00
Ariadne Conill
14294243a2 mastodon api: implement follow_requests_count 2019-09-27 04:22:40 +00:00
Egor Kislitsyn
5ea5c58a85 Move view logic from StatusController.context to StatusView and add a test 2019-09-27 10:52:47 +07:00
Egor Kislitsyn
98d1347a4e Extract status actions from MastodonAPIController into StatusController 2019-09-27 10:51:15 +07:00
kaniini
219771288c Merge branch 'refactor/common_api' into 'develop'
Refactor `CommonAPI.post/2`

See merge request pleroma/pleroma!1713
2019-09-27 03:46:02 +00:00
Maksim Pechnikov
73ae38ca04 add deprecated tag 2019-09-26 21:08:04 +03:00
Maksim Pechnikov
3d722dc200 Merge branch 'develop' into tests/mastodon_api_controller.ex 2019-09-26 16:16:30 +03:00
Egor Kislitsyn
3572cf29b7 Extract timeline actions from MastodonAPIController into TimelineController 2019-09-26 10:53:42 +07:00
Egor Kislitsyn
eed774d058 Add CommonAPI.ActivityDraft 2019-09-26 10:29:34 +07:00
kaniini
6abe12dced Merge branch 'refactor/notification-controller' into 'develop'
Extract notification actions from `MastodonAPIController` into `NotificationController`

See merge request pleroma/pleroma!1646
2019-09-26 03:13:22 +00:00
kaniini
48a82c4609 Merge branch 'refactor/user' into 'develop'
Simplify updating user's `info`

See merge request pleroma/pleroma!1712
2019-09-26 03:00:38 +00:00
Hakaba Hitoyo
5fb72170a7 Revert "add _discoverable_ keyword into ActivityPub @context"
This reverts commit 3aef4bdf8f37efd1055a84c5fca12ec4559a17f5.
2019-09-26 02:57:41 +00:00
Maksim Pechnikov
1a858134ed Merge branch 'develop' into issue/1218 2019-09-25 12:24:12 +03:00
Egor Kislitsyn
035f22f784 Fix Credo warnings 2019-09-24 19:50:09 +07:00
Egor Kislitsyn
209395c7e6 Add User.change_info/2 and User.update_info/2 2019-09-24 19:50:07 +07:00
Egor Kislitsyn
a66a7a328f Extract notification actions from MastodonAPIController into NotificationController 2019-09-24 15:16:44 +07:00
Egor Kislitsyn
79b25be4e1 Do not return tuple when unneeded 2019-09-24 15:03:20 +07:00
Maksim Pechnikov
d75d0ae134 Merge branch 'develop' into tests/mastodon_api_controller.ex 2019-09-24 08:06:04 +03:00
kaniini
760df67a7b Merge branch 'remove-direct-messages-from-public-timeline' into 'develop'
Fix private and direct statuses not being filtered out from the public timeline for an authenticated user.

Closes #1223

See merge request pleroma/pleroma!1703
2019-09-23 22:35:09 +00:00
Steven Fuchs
e1d2d69c87 Clean up views 2019-09-23 22:33:59 +00:00
Maksim Pechnikov
494bb6bac6 updated tests 2019-09-23 22:37:30 +03:00
Maksim Pechnikov
179fa32dd5 Merge branch 'develop' into tests/mastodon_api_controller.ex 2019-09-23 21:41:57 +03:00
eugenijm
7cf1252455 Mastodon API: Fix private and direct statuses not being filtered out from the public timeline for an authenticated user (GET /api/v1/timelines/public) 2019-09-20 18:27:00 +03:00
Ivan Tashkinov
6f67aed3ac [#1234] Merge remote-tracking branch 'remotes/upstream/develop' into 1234-mastodon-2-4-3-oauth-scopes
# Conflicts:
#	lib/pleroma/web/admin_api/admin_api_controller.ex
2019-09-19 10:59:09 +03:00
eugenijm
fe5e0b7846 Mastodon API: Return pleroma.direct_conversation_id when creating direct messages (POST /api/v1/statuses) 2019-09-19 08:59:25 +03:00
feld
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
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
Ivan Tashkinov
01c1078015 [#1234] Merge remote-tracking branch 'remotes/upstream/develop' into 1234-mastodon-2-4-3-oauth-scopes
# Conflicts:
#	lib/pleroma/web/activity_pub/activity_pub_controller.ex
2019-09-17 22:53:26 +03:00
Ivan Tashkinov
76068873db [#1234] Defined admin OAuth scopes, refined other scopes. Added tests. 2019-09-17 22:19:39 +03: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
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
Ivan Tashkinov
efbc2edba1 [#1234] Merge remote-tracking branch 'remotes/upstream/develop' into 1234-mastodon-2-4-3-oauth-scopes
# Conflicts:
#	lib/pleroma/web/activity_pub/activity_pub_controller.ex
#	lib/pleroma/web/router.ex
2019-09-15 18:52:27 +03:00
Ivan Tashkinov
e6f43a831b [#1234] Permissions-related fixes / new functionality (Masto 2.4.3 scopes). 2019-09-15 18:22:08 +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
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
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
Egor Kislitsyn
b40b10b53d Add an endpoint to get multiple statuses by IDs 2019-09-10 13:39:45 +07:00
Ivan Tashkinov
b63faf9819 [#1234] Mastodon 2.4.3 hierarchical scopes initial support (WIP). 2019-09-08 15:00:03 +03:00
shadowfacts
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
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
Egor Kislitsyn
40b3289c26 Refactor add_link_headers/7 -> add_link_headers/3 2019-09-06 17:08:47 +07: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
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
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
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
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
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
kPherox
8ca4f145a5
Extract if block into private function 2019-08-26 17:09:32 +09:00
kPherox
b15e226593
Change to delete empty name field 2019-08-25 07:34:15 +09:00
kPherox
705b5adfc4
Fix type of fields_attributes
Convert tuple list to map list when parameters is `:urlencoded` or `:multipart`
2019-08-25 07:34:14 +09:00
kPherox
45e21a9df4
Rename fields to fields_attributes 2019-08-25 07:34:11 +09:00
lain
cc6c0b4ba6 Merge remote-tracking branch 'origin/develop' into sixohsix/pleroma-post_expiration 2019-08-24 15:48:33 +02: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
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
rinpatch
1ad71592ad Parallelize template rendering 2019-08-15 18:05:50 +03:00
rinpatch
bd5ad0af78 Cache follow state 2019-08-15 00:47:30 +03:00
lain
560dbad538 Merge remote-tracking branch 'origin/develop' into pleroma-conversations 2019-08-14 15:30:40 +02:00
Egor Kislitsyn
f7bbf99caa Use info.fields instead of source_data for remote users 2019-08-14 14:52:54 +07:00
Egor Kislitsyn
e0ac5c7a66 Add custom profile fields 2019-08-14 14:52:54 +07: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
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
Maksim
04da1166db tests for /web/mastodon_api/mastodon_api.ex 2019-08-13 21:12:37 +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
lain
511ccea5aa ConversationView: Align parameter names with other views. 2019-08-12 14:23:06 +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
kaniini
84808e1697 Merge branch 'develop' into 'fix/hide-follows-counters'
# Conflicts:
#   CHANGELOG.md
2019-08-10 18:49:04 +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
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
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
lain
3af6d14da7 Pleroma Conversations API: Add a way to set recipients. 2019-08-05 15:09:19 +02:00
lain
eee98aaa73 Pleroma API: Add endpoint to get conversation statuses. 2019-08-02 19:53:08 +02:00
lain
7483679a7b StatusView: Return direct conversation id. 2019-07-31 15:12:29 +02:00
Ariadne Conill
b93498eb52 constants: add as_public constant and use it everywhere 2019-07-29 02:43:19 +00:00
Sachin Joshi
242f5c585e add account confirmation email resend in mastodon api 2019-07-28 20:30:10 +00:00
Sergey Suprunenko
b20020da16 Show the url advertised in the Activity in the Status JSON response 2019-07-24 19:28:21 +00:00
Eugenij
4504135894 Add domain_blocking to the relationship API (GET /api/v1/accounts/relationships) 2019-07-24 15:12:27 +00:00
Mike Verdone
2c83eb0b15 Revert "squash! Expose expires_at datetime in mastoAPI only for the activity actor"
This reverts commit 2981821db8.
2019-07-24 17:09:59 +02:00
Mike Verdone
2981821db8 squash! Expose expires_at datetime in mastoAPI only for the activity actor
NOTE: rewrite the commit msg
2019-07-24 16:51:09 +02:00
Mike Verdone
3cb471ec06 Expose expires_at datetime in mastoAPI only for the activity actor
In the "pleroma" section of the MastoAPI for status activities you can
see an expires_at item that states when the activity will expire, or
nothing if the activity will not expire.

The expires_at date is only visible to the person who posted the
activity. This is the conservative approach in case some attacker
decides to write a logger for expiring posts. However, in the future of
OCAP, signed requests, and all that stuff, this attack might not be that
likely. Some other pleroma dev should remove the restriction in the code
at that time, if they're satisfied with the security implications of
doing so.
2019-07-24 14:47:22 +02:00
Sadposter
a5d6287ba8 Hide blocked users from interactions 2019-07-22 02:42:29 +00:00
Mark Felder
9169f331b6 Merge branch 'develop' into feature/matstodon-statuses-by-name 2019-07-19 16:55:10 -05:00
Eugenij
4bf2bb9cff Fix password reset for non-test env
Fixes `Plug.Conn.NotSentError` that causes a 5xx error in response
instead of 404 and 400.

Fixes pattern matching error caused by different response format
in test and non-test env: `Pleroma.Emails.Mailer.deliver_async` returns
:ok when PleromaJobQueue is enabled and `{:ok, _}` when it's disabled.
In tests, it's disabled.
2019-07-17 18:09:31 +00:00
Alexander Strizhakov
10f82c88b8 mastoapi password reset
added rate limit to password reset

configure rate limit in runtime
2019-07-16 21:44:50 +00:00
Ivan Tashkinov
889dc17abd [#1094] Rate-limited follow & unfollow actions. 2019-07-16 19:18:30 +03:00
Eugenij
520ee6c591 Add pleroma.deactivated to the Account entity (Mastodon API) 2019-07-16 11:14:46 +00:00
Eugenij
c4ca142e14 Add the blocked_by attribute to the relationship API (GET /api/v1/accounts/relationships) 2019-07-16 11:04:11 +00:00
rinpatch
996fd58ac4 Merge branch 'bugfix/poll-id-as-string' into 'develop'
Status View: Poll ids are strings.

See merge request pleroma/pleroma!1430
2019-07-16 06:06:22 +00:00
lain
1ed24bcc76 Status View: Poll ids are strings.
All ids in mastodon are strings, in general.
2019-07-16 12:47:40 +09:00
Mark Felder
ffb4eb9779 Merge branch 'develop' into feature/matstodon-statuses-by-name 2019-07-15 17:10:27 -05:00
Sergey Suprunenko
b74300bc7a Add more tests for MastodonAPIController and CommonAPI 2019-07-15 19:47:23 +00:00
Alexander Strizhakov
e7c39b7ac8 Feature/1072 muting notifications 2019-07-14 13:29:31 +00:00
Ivan Tashkinov
d72876c57d [#1041] Minor refactoring. 2019-07-13 15:21:50 +03:00
Ivan Tashkinov
369e9bb42f [#1041] Rate-limited status actions (per user and per user+status). 2019-07-13 14:49:39 +03:00
Eugenij
4198c3ac39 Extend Pleroma.Pagination to support offset-based pagination, use async/await to execute status and account search in parallel 2019-07-11 13:55:31 +00:00
Haelwenn (lanodan) Monnier
252e129b1e
MastoAPI: Add categories to custom emojis
Note: This isn’t in a release yet, can be seen in mastofe on the
rebase/glitch-soc branch.
2019-07-10 17:02:37 +02:00
Sergey Suprunenko
ff55e3c16f Create mentions only for explicitly mentioned users 2019-07-10 13:29:50 +00:00
Egor Kislitsyn
5104f65b69 Wrap error messages into gettext helpers 2019-07-10 18:10:09 +07:00
Maksim
008c55e4e9 add test for search_controller/ 100% coverage 2019-07-10 08:28:03 +00:00
feld
93a0eeab16 Add license/copyright to all project files 2019-07-10 05:13:23 +00:00
kaniini
1417627d07 Merge branch 'remove-avatar-header' into 'develop'
Ability to reset avatar, profile banner and backgroud

See merge request pleroma/pleroma!1187
2019-07-09 17:51:41 +00:00
kaniini
1179a13533 Merge branch 'features/sec-websocket-protocol-header' into 'develop'
Features: MastoAPI streaming Sec-WebSocket-Protocol header

See merge request pleroma/pleroma!1381
2019-07-09 16:52:22 +00:00
rinpatch
72b88c82bc Mastodon API: Fix embedded relationships not being rendered inside of statuses 2019-07-08 12:07:08 +03:00
Haelwenn (lanodan) Monnier
e174614eb9
MastoAPI Streaming: Keep compatibility with access_token 2019-07-07 08:49:29 +02:00
KokaKiwi
a7885748c7
MastoAPI streaming: Replace access_token with Sec-WebSocket-Protocol 2019-07-06 20:29:17 +02:00
Eugenij
5184b0f41a Use fallback values for search queries
This is to make sure the entire request doesn't return a 500 error if
user or status search times out.
2019-07-03 10:19:51 +00:00
Eugenij
1f76740e10 Add hashtag filter to user statuses (GET /api/v1/accounts/:id/statuses) 2019-06-30 09:08:46 +00:00
Egor Kislitsyn
889a9c3a3f Polish IdempotencyPlug 2019-06-27 01:53:58 +07:00
Egor Kislitsyn
0b8aeac0f3 Remove previous idempotency implementation from post_status 2019-06-26 18:49:14 +07:00
Roman Chvanikov
a7a54068f9 Fix Controller.render/4 deprecation 2019-06-26 03:28:02 +03:00
Sachin Joshi
a0c65bbd6c Merge branch 'develop' into 'remove-avatar-header'
# Conflicts:
#   CHANGELOG.md
2019-06-23 03:25:50 +00:00
rinpatch
df2dab69a7 Merge branch 'begone-the-dot-hack' into 'develop'
Remove the dot hack when posting from Mastodon API and add proper errors when the post exceeds character limits

See merge request pleroma/pleroma!1298
2019-06-19 10:22:23 +00:00
rinpatch
c7acca2abb Mastodon API: Sanitize display names
Closes #1000
2019-06-18 14:12:11 +03:00
rinpatch
dce27de733 Mastodon API: Remove the dot hack 2019-06-18 05:04:41 +03:00
Maksim
a04bf131e0 [#570] add user:notification stream 2019-06-16 10:33:25 +00:00
lain
135c196769 Merge branch 'bugfix/980-polls-double-vote' into 'develop'
MastodonAPI Controller: Band-Aid double vote problem.

See merge request pleroma/pleroma!1275
2019-06-15 15:13:48 +00:00
lain
a440cf856d Mastodon API: Return the token needed for the chat. 2019-06-15 10:59:35 +02:00
rinpatch
62ffc00a5d Merge branch 'feature/add-background-image-to-mastoapi' into 'develop'
AccountView: Add user background.

See merge request pleroma/pleroma!1280
2019-06-14 16:49:28 +00:00
Maksim
ee4ed87fb4 [#948] /api/v1/account_search added optional parameters (limit, offset, following) 2019-06-14 11:39:57 +00:00
lain
eac298083f MastodonAPI: Add a way to update the background image. 2019-06-14 11:19:22 +02:00
lain
5965efb216 AccountView: Add user background. 2019-06-13 19:08:05 +02:00
lain
966543379d MastodonAPI Controller: Band-Aid double vote problem. 2019-06-12 16:36:23 +02:00
Egor Kislitsyn
ad04d12de6 Replace MastodonAPIController.account_register/2 rate limiter 2019-06-11 16:06:03 +07:00
Egor Kislitsyn
bc8f059367 Add rate limiting for search endpoints 2019-06-11 14:28:39 +07:00
Egor Kislitsyn
93397fce3d Contain search for unauthenticated users 2019-06-05 16:37:43 +07:00
Maksim Pechnikov
4f2e359687 Merge branch 'develop' into issue/941 2019-06-04 09:49:08 +03:00
kaniini
9d2563a3de Merge branch 'generic-fe-settings' into 'develop'
Generic settings store for frontend user settings

See merge request pleroma/pleroma!1221
2019-06-04 05:43:43 +00:00
Maksim Pechnikov
f13d6c7f78 update api to set skip_thread_containment 2019-06-03 21:02:57 +03:00
rinpatch
dc91bcc0af Merge branch 'develop' into feature/polls-2-electric-boogalo 2019-06-03 13:16:17 +03:00
lambda
314758c25b Merge branch 'align-mastodon-conversations' into 'develop'
Mastodon Conversations API: Align to Mastodon behavior

See merge request pleroma/pleroma!1215
2019-06-03 09:48:37 +00:00
rinpatch
026b245dbc Merge branch 'develop' into feature/polls-2-electric-boogalo 2019-06-03 11:14:52 +03:00
rinpatch
1fd8e19d76 Remove a TODO comment as the tests for poll view were written 2019-06-02 23:46:17 +03:00
rinpatch
e3c460353d Refresh the object in CommonAPI.vote instead of MastoAPI controller 2019-06-02 23:24:48 +03:00
rinpatch
6bc9e5c020 Mastodon API: Refresh the object before rendering it after voting 2019-06-01 21:41:49 +03:00
rinpatch
444406167b Mastodon API: actually check for poll votes 2019-06-01 21:41:23 +03:00
rinpatch
65db5e9f52 Resolve merge conflicts 2019-06-01 16:29:58 +03:00
rinpatch
300d94c628 Add poll votes
Also in this commit by accident:
- Fix query ordering causing exclude_poll_votes to not work
- Do not create notifications for Answer objects
2019-06-01 16:17:46 +03:00
Haelwenn (lanodan) Monnier
5d3ece2861
Remove now useless flavours switching 2019-06-01 01:44:10 +02:00
Haelwenn (lanodan) Monnier
aa9f52edd2
mastodon_api_controller.ex: Remove vanilla from supported_flavours 2019-06-01 01:44:10 +02:00
lain
7861974ab2 MastodonAPI: Add extension to set and get pleroma_settings_store. 2019-05-31 14:50:18 +02:00
lain
aaad85c4d9 AccountView: settings -> settings_store 2019-05-31 14:49:46 +02:00
lain
eb2963bc43 User: Add settings store to Info, AccountView
This is to provide a generic frontend settings storage mechanism for all kinds
of frontends.
2019-05-31 14:27:15 +02:00
lain
97fb50d9fa Mastodon Conversation API: Don't return own account in 'accounts'. 2019-05-31 11:27:14 +02:00
Sergey Suprunenko
1690be991e Replace missing non-nullable Card attributes with empty strings 2019-05-30 21:03:31 +00:00
Mark Felder
e7edfd9fec Permit fetching statuses from API with nickname or id 2019-05-29 12:20:18 -05:00
Mark Felder
672fddb721 Default search limit should be 40
https://docs.joinmastodon.org/api/rest/search/
2019-05-29 08:06:26 -05:00
Sachin Joshi
1452a96ad6 ability to set and reset avatar, profile banner and backgroud in Mastodon API 2019-05-27 15:31:01 +05:45
William Pitcock
9bec891eb4 kill @httpoison 2019-05-25 04:24:21 +00:00
rinpatch
e6b175ed6c Fix credo issues 2019-05-22 21:57:46 +03:00
rinpatch
cdac5efd10 Merge branch 'bugfix/account_view_source.note' into 'develop'
MastoAPI AccountView: fill source.note with plaintext version of note

Closes #926

See merge request pleroma/pleroma!1189
2019-05-22 05:39:01 +00:00
Haelwenn (lanodan) Monnier
0e2c215a00
MastoAPI AccountView: fill source.note with plaintext version of note
Closes: https://git.pleroma.social/pleroma/pleroma/issues/926
2019-05-22 07:22:19 +02:00
rinpatch
63b0b7190c MastoAPI: Add GET /api/v1/polls/:id 2019-05-21 20:40:35 +03:00
rinpatch
0407ffe75f Change validation error status codes to be more appropriate 2019-05-21 17:12:38 +03:00
rinpatch
f28747858b Actual vote count in poll view 2019-05-21 14:27:09 +03:00
rinpatch
3f96b3e4b8 Enforce poll limits and add error handling for MastodonAPI's post endpoint 2019-05-21 10:54:20 +03:00
rinpatch
76a7429bef Add poll limits to /api/v1/instance and initial state 2019-05-21 09:13:10 +03:00
kaniini
d4847b17ca Merge branch 'refactor/add-virtual-thread-muted-field' into 'develop'
Add virtual :thread_muted? field

Closes #901

See merge request pleroma/pleroma!1178
2019-05-20 23:30:19 +00:00
Aaron Tinio
eb02edcad9 Add virtual :thread_muted? field
that may be set when fetching activities
2019-05-21 00:35:46 +08:00
Sadposter
daeae8e2e7
Move default mascot configuration to config/ 2019-05-20 16:12:55 +01:00
Sadposter
e81f0fc6d4
Add mascot get/set tests 2019-05-20 12:58:06 +01:00
Sadposter
54e9cb5c2d
Add API endpoints for a custom user mascot 2019-05-20 12:39:23 +01:00
rinpatch
1d90f9b969 Remove tags/mentions/rich text from poll options because Mastodon and
add custom emoji
2019-05-19 17:06:44 +03:00
rinpatch
5ece901af3 Resolve merge conflicts and remove IO.inspects 2019-05-18 13:37:38 +03:00
lain
412a3d8a0f Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into rum-index 2019-05-17 12:26:59 +02:00
lambda
1dcdcd8871 Merge branch 'bugfix/903-mastoapi-relationship-requested' into 'develop'
MastoAPI account_view.ex: requested is false when following is true

Closes #903

See merge request pleroma/pleroma!1169
2019-05-17 10:07:51 +00:00
lambda
46684db84d Update account_view.ex 2019-05-17 09:53:44 +00:00
rinpatch
642a67dd44 Render polls in statuses 2019-05-17 11:44:47 +03:00
Alexander Strizhakov
7ed682213f Fix/902 random compile failing 2019-05-17 07:25:20 +00:00
Haelwenn (lanodan) Monnier
68c75a08e8
MastoAPI account_view.ex: requested is false when following is true
Closes: https://git.pleroma.social/pleroma/pleroma/issues/903
2019-05-17 07:44:09 +02:00
William Pitcock
de114ffbb0 activitypub: remove contain_timeline() 2019-05-15 15:53:06 +00:00
lain
cbb3451023 CommonAPI: Refactor visibility, forbid public to private replies. 2019-05-15 16:30:08 +02:00
lain
f1e67bdc31 Search: Add optional rum indexing / searching. 2019-05-15 15:28:01 +02:00
Mark Felder
bbacdf2352 Bump Mastodon API level 2019-05-13 15:52:16 -05:00
Alexander Strizhakov
a2be420f94 differences_in_mastoapi_responses.md: fullname & bio are optionnal
[ci skip]
2019-05-13 18:35:45 +00:00
Sachin Joshi
7701a4c841 Make irreversible field default to false in filters 2019-05-14 00:13:15 +05:45
lain
01c45ddc9e Search: Use RUM index. 2019-05-11 11:26:46 +02:00
Maksim
799e1f48b5 Refactoring functions for dealing with oauth scopes. 2019-05-08 10:52:13 +00:00
rinpatch
4c5125dedc Remove bookmarks assoc and add a fake bookmark assoc instead 2019-05-07 19:33:22 +00:00
rinpatch
3a7c14645e - Actually use preloaded bookmarks in views
- Preload bookmarks in bookmark timeline
- Rework bookmark preload tests
2019-05-07 19:33:22 +00:00
rinpatch
06947c9147 Remove bookmarks assoc 2019-05-07 19:33:22 +00:00
lambda
238dd72fad Merge branch 'conversations_three' into 'develop'
Conversations once more.

See merge request pleroma/pleroma!1119
2019-05-07 14:43:21 +00:00
rinpatch
d089ff2460 Merge branch 'fix/embeded-relationship-in-follows' into 'develop'
Fix embeded relationships in Mastodon API

See merge request pleroma/pleroma!1118
2019-05-03 20:36:13 +00:00
Haelwenn (lanodan) Monnier
b5ad1715b2
MastoAPI: profile update with emoji_map 2019-05-03 16:41:23 +02:00
Haelwenn (lanodan) Monnier
d70af32127
Pleroma.User: remove emojify on parse_bio 2019-05-03 16:27:50 +02:00
feld
acb04306b6 Standardize construction of websocket URL
This follows up on the change made in d747bd98
2019-05-03 11:45:04 +00:00
lain
a0c755cc4a MastodonApi: Bump api level. 2019-05-03 13:40:43 +02:00
rinpatch
38b79461df Fix embeded relationships in Mastodon API
Currently some endpoints render accounts without for user resulting in
embedded relationship being empty. It causes bugs in followers/following
tab in pleroma-fe but I fixed it for other endpoints as well just in
case
2019-05-03 00:49:17 +03:00
lain
45f790becc Merge remote-tracking branch 'origin/develop' into conversations_three 2019-05-01 18:40:41 +02:00
Alex S
f11e7037c2 test fixes 2019-05-01 16:09:53 +07:00
Alex S
bdfa3a6fa8 Merging with develop
Conflicts:
lib/pleroma/web/activity_pub/transmogrifier.ex
lib/pleroma/user.ex
2019-05-01 12:29:33 +07:00
rinpatch
0fd176b990 Merge branch 'fix/add-default-scope-mastoapi' into 'develop'
Add default_scope to /api/v1/update_credentials

See merge request pleroma/pleroma!1100
2019-04-29 06:45:18 +00:00
rinpatch
ce3789e39a Add default_scope to /api/v1/update_credentials 2019-04-27 23:55:54 +03:00
rinpatch
c3e9fcf098 Fix bookmarks depending on embeded object and move checking if the
status is bookmarked to SQL
2019-04-27 23:06:46 +03:00
lambda
4de5fef1f8 Merge branch 'feature/807-bookmark-endpoint-extension' into 'develop'
Feature/807 bookmark endpoint extension

Closes #807

See merge request pleroma/pleroma!1059
2019-04-26 11:59:47 +00:00
rinpatch
dfc8425659 Move settings to Source subentity 2019-04-25 10:31:14 +03:00
Alex S
a825056d4d test fixes 2019-04-25 14:09:57 +07:00
Alex S
85953c0836 fixes for tests 2019-04-25 13:46:40 +07:00
Alex S
3c2ae80008 unused 2019-04-25 13:42:10 +07:00
Alex S
1258128f4f favourites add bookmark display 2019-04-25 13:38:24 +07:00
Alex S
73d01857e3 bookmarks in separate table 2019-04-25 13:38:24 +07:00
rinpatch
4baea6e6d9 Fix leaking private configuration parameters in Mastodon and Twitter APIs, and add new configuration parameters to Mastodon API
This patch:
- Fixes `rights` in twitterapi ignoring `show_role`
- Fixes exposing default scope of the user to anyone in Mastodon API
- Extends Mastodon API to be able to show and set `no_rich_text`, `default_scope`, `hide_follows`, `hide_followers`, `hide_favorites` (requested by the FE in #674)

Sorry in advance for 500 line one commit diff, I should have split it up to separate MRs
2019-04-24 20:01:42 +03:00
Sergey Suprunenko
9dd36e5bcb Extend Mastodon API with public endpoint for getting Favorites timeline of any user (#789) 2019-04-23 02:47:43 +00:00
kaniini
10c40e13d2 Merge branch 'mastoapi/add-in-reply-to-screen-name' into 'develop'
Add `in_reply_to_account_acct` to MastoAPI status entity

See merge request pleroma/pleroma!1086
2019-04-23 02:43:53 +00:00
rinpatch
f60d072bbb Add pleroma.in_reply_to_account_acct to MastoAPI status entity 2019-04-22 11:54:27 +03:00
rinpatch
d21d921def Replace Object.normalize(activity.data[object] with Object.normalize(acitivty) to benefit from preloading 2019-04-22 11:27:29 +03:00
Egor
b9cdf6d3b9 Use User.get_cached* everywhere 2019-04-22 07:20:43 +00:00
kaniini
7fcbda702e Merge branch 'rework-emoji-management' into 'develop'
Remove finmoji and add a way to download emojis in packs

Closes #817 and #821

See merge request pleroma/pleroma!1073
2019-04-22 02:07:19 +00:00
Roman Chvanikov
4908e0eeee Fix Credo warning 2019-04-21 23:24:33 +07:00
Roman Chvanikov
eeb093631c Fix Credo warning 2019-04-21 23:19:36 +07:00
Roman Chvanikov
e56afefef9 Refactor conversation function in MastodonAPIController to use a View 2019-04-21 23:14:27 +07:00
Roman Chvanikov
2662bea4e0 Add accounts and last_status to conversation read response 2019-04-21 20:26:13 +07:00
eugenijm
375fd21055 Set correct values in the MastoAPI reblog status view 2019-04-21 05:40:22 +03:00
Ekaterina Vaartis
52ed287e87 Fix incorrect multiple emoji tag handling introduced in initial impl 2019-04-20 11:17:17 +03:00
eugenijm
fa48532387 Handle reblogs on the first follow request in MastoAPI 2019-04-20 04:39:49 +03:00
rinpatch
6069d0fd36 Fix object search depending on embeded object 2019-04-18 09:28:20 +03:00
rinpatch
ad681877df Make credo happy 2019-04-17 14:52:01 +03:00
rinpatch
e641651e2b Fix unbookmarking 2019-04-17 14:27:02 +03:00
rinpatch
b09ae02c04 Added some more normalization calls all in mastodon api controller 2019-04-17 13:04:58 +03:00
rinpatch
627e5a0a49 Merge branch 'develop' into feature/database-compaction 2019-04-17 12:22:32 +03:00
lain
76999c73a7 Conversation: Add accounts to output. 2019-04-15 22:28:42 +02:00
lain
0da985182f Conversation: Return full status object, id is a string. 2019-04-15 21:58:58 +02:00
lambda
56956de6fa Merge branch 'fix/status-reblogged' into 'develop'
Assign reblogged in the Mastodon reblog status view

Closes #812

See merge request pleroma/pleroma!1057
2019-04-15 10:26:23 +00:00
eugenijm
27d78dc526 Use User.get_cached_by* 2019-04-15 12:37:49 +03:00
eugenijm
507e7821e3 Handle follow/unfollow directed to themselves 2019-04-15 10:21:18 +03:00
eugenijm
679a8ef629 Assign reblogged in the Mastodon reblog status view 2019-04-14 11:35:15 +03:00
lambda
0a09692c7d Merge branch 'features/mastoapi/2.6.0-min_id-pagination' into 'develop'
Features: mastoapi-2.6.0 `min_id` pagination

Closes #351

See merge request pleroma/pleroma!976
2019-04-12 09:34:12 +00:00
Alexander Strizhakov
711ade961e adding destroy multiple for mastofe 2019-04-12 02:28:46 +00:00
Alexander Strizhakov
e03d24af96 in_reply_to_id - null 2019-04-12 02:21:32 +00:00
lain
c352a0aba6 Conversations: Make tests run. 2019-04-10 17:48:31 +02:00
Sadposter
be8350baa2
Merge branch 'develop' into feature/user-status-subscriptions 2019-04-10 10:44:54 +01:00
kaniini
97395e013e Merge branch 'notification-pleroma-settings' into 'develop'
Notification controls

Closes #738

See merge request pleroma/pleroma!988
2019-04-10 02:10:31 +00:00
Sadposter
589629cf3e
Used cached user resources in subscriptions 2019-04-08 15:56:14 +01:00
lambda
23067908de Merge branch 'feature/770-add-emoji-tags' into 'develop'
Feature/770 add emoji tags

See merge request pleroma/pleroma!998
2019-04-08 09:50:00 +00:00
eugenijm
2056efa714 Add scheduler for sending scheduled activities to the queue 2019-04-06 23:56:29 +03:00
eugenijm
fc92a0fd8d Added limits and media attachments for scheduled activities. 2019-04-06 23:55:58 +03:00
eugenijm
b3870df51f Handle scheduled_at on status creation. 2019-04-06 23:55:58 +03:00
eugenijm
7bf622ce73 Add scheduled activities 2019-04-06 23:55:58 +03:00
Sadposter
c05fe4da0a
Document subscription endpoints, fix typos
Also adds a quick error case on the subscription endpoints
to avoid 500s
2019-04-06 16:20:06 +01:00
Alex S
7410aee886 Merge develop to 770-add-emoji-tags
Merge conflict in test/web/mastodon_api/mastodon_api_controller_test.exs
2019-04-06 20:34:00 +07:00
Sergey Suprunenko
325a268017 Redirect to the referer url after mastofe authorization 2019-04-05 23:36:42 +00:00
Sadposter
9ca91cbb87 Change relationship direction of subscriptions 2019-04-05 17:02:07 +01:00
rinpatch
f0f30019e1 Refactor html caching functions to have a key instead of a module, use more correct terminology and fix summaries in mastoapi 2019-04-05 15:19:44 +03:00
Haelwenn (lanodan) Monnier
af0065a71f
mastodon_api_controller.ex: Add pleroma-tan to initial_state 2019-04-04 09:07:25 +02:00
Alex S
fa8483cb80 Merging develop into feature/770-add-emoji-tags
Conflict test/web/twitter_api/util_controller_test.exs
2019-04-02 20:39:52 +07:00
lambda
b95cf3d490 Merge branch 'get_by_id' into 'develop'
Replace `Repo.get_by` with existing functions

See merge request pleroma/pleroma!1010
2019-04-02 12:43:28 +00:00
Alex S
9e0567ec52 Merge develop into feature/770-add-emoji-tags 2019-04-02 19:16:29 +07:00
lambda
091baf9316 Merge branch 'features/mastoapi/2.6.0-force-login-option' into 'develop'
MastoAPI 2.6.0 `force_login` option

Closes #734

See merge request pleroma/pleroma!999
2019-04-02 10:57:38 +00:00
Egor Kislitsyn
88d3cb44c3 replace Repo.get_by(User, nickname: nickname) with User.get_by_nickname(nickname) 2019-04-02 17:47:02 +07:00
Egor Kislitsyn
1b3d921921 change Repo.get(User, id) => User.get_by_id(id) 2019-04-02 17:01:26 +07:00
Egor Kislitsyn
4212527928 change Repo.get(Activity, id) => Activity.get_by_id(id) 2019-04-02 16:50:31 +07:00
Ivan Tashkinov
6910fb371b Fixed local MastoFE authentication / force_login option. 2019-04-01 17:25:25 +03:00
Alex S
3601f03147 Adding tag to emoji ets table
changes in apis
2019-04-01 17:17:57 +07:00
Haelwenn (lanodan) Monnier
c8abef373b
mastodon_api_controller.ex: fallback to first for min_id 2019-03-28 17:23:21 +01:00
Haelwenn (lanodan) Monnier
6b407872b4
mastodon_api_controller.ex: Use min_id in link header instead of since_id 2019-03-28 17:23:21 +01:00
Haelwenn (lanodan) Monnier
6f15224053
activity_pub.ex: Move limit/max_id restrictions to Pagination helpers 2019-03-28 17:18:59 +01:00
eugenijm
cd90695a34 Add PUT /api/pleroma/notification_settings endpoint 2019-03-28 18:55:16 +03:00
eugenijm
a4ab60ac54 Add vapid_key to the POST /api/v1/apps response 2019-03-26 23:27:37 +03:00
eugenijm
691d1208b5 Add GET /api/v1/apps/verify_credentials 2019-03-26 21:53:28 +03:00
lambda
c6ab5ebe7c Merge branch 'features/mastoapi/2.7.2-instance-attributes' into 'develop'
Mastodon 2.7.2 instance attributes (registrations, languages)

See merge request pleroma/pleroma!979
2019-03-26 16:01:52 +00:00
Ivan Tashkinov
eef1042b16 Mastodon 2.7.2 instance attributes (registrations, languages). 2019-03-26 16:27:17 +03:00
eugenijm
568e348588 Increment replies_count on replies (MastoAPI) 2019-03-26 15:27:04 +03:00
rinpatch
a7f58b3c13 Serve non-public activities in /api/v1/favourites
Fixes #648
2019-03-25 02:15:45 +03:00
William Pitcock
3cc2554fa3 mastodon api: add conversation_id extension (ref #674) 2019-03-21 23:25:41 +00:00
Zachary Dunn
a2e03d4f3c Initial attempt at updating return type 2019-03-18 13:56:59 +00:00
eugenijm
1588688a11 Added support for exclude_types, limit, and min_id in Mastodon
notifications.

Unify Mastodon-compatible pagination logic.
2019-03-18 11:27:27 +03:00
Karen Konou
da53c079db Refactor to store user ap_id, add tests 2019-03-15 14:20:08 +01:00
Karen Konou
15b21d1983 refactor filtering mechanism 2019-03-15 14:18:53 +01:00
Karen Konou
c8f31e0bc2 Implement mastodon's reblog hiding feature 2019-03-15 14:18:21 +01:00
Haelwenn
41fc67aa49 Merge branch 'mastoapi/mime_type' into 'develop'
Extend MastoAPI to provide attachment mimetypes

See merge request pleroma/pleroma!938
2019-03-15 09:48:50 +00:00
rinpatch
d7a34b604b Extend MastoAPI to provide attachment mimetypes 2019-03-15 11:58:12 +03:00
eugenijm
100413bf2c Add is_seen to MastoAPI notifications, extract rendering logic into separate NotificationView, add tests 2019-03-15 01:35:48 +03:00
kaniini
59333f2d56 Merge branch 'admin-api-account-view-namespace' into 'develop'
MastodonAPI.Admin.AccountView → AdminAPI.AccountView

See merge request pleroma/pleroma!930
2019-03-14 02:01:10 +00:00
kaniini
86871c8a04 Merge branch 'feature/add-local-to-users-admin-api' into 'develop'
Add "local" & "tags" to users admin API

See merge request pleroma/pleroma!932
2019-03-14 02:00:47 +00:00
Maxim Filippov
f3964f4024 Ensure empty array is returned for tags 2019-03-14 03:17:09 +03:00
Maxim Filippov
257d8e78e5 Add tags 2019-03-14 01:52:24 +03:00
kaniini
4e72762322 Merge branch 'mastofe-content-types' into 'develop'
Set content types settings on mastofe endpoint.

See merge request pleroma/pleroma!894
2019-03-13 22:04:23 +00:00
eugenijm
e416c344dd Unify unfollow, accept and reject follow requests using CommonAPI 2019-03-13 20:28:36 +03:00
Maxim Filippov
490d9cf7b1 Add "local" to users admin API 2019-03-13 16:04:44 +03:00
Haelwenn (lanodan) Monnier
cc0f2f8ba3
MastodonAPI.Admin.AccountView → AdminAPI.AccountView 2019-03-13 12:17:57 +01:00
Haelwenn (lanodan) Monnier
fb82f6fc7c
[Credo] Remove parentesis on argument-less functions 2019-03-13 04:26:56 +01:00
Haelwenn (lanodan) Monnier
a3a9cec483
[Credo] fix Credo.Check.Readability.AliasOrder 2019-03-13 04:26:54 +01:00
Maxim Filippov
25eb6cf1cb Add "roles" to users admin API 2019-03-12 22:15:28 +03:00
kaniini
c231ed610a Merge branch 'masto-api-followers-following' into 'develop'
MastoAPI followers/following endpoints

See merge request pleroma/pleroma!924
2019-03-12 16:27:47 +00:00
eugenijm
984b5f8adf MastoAPI followers/following endpoints 2019-03-12 16:01:24 +03:00
lain
3474066f6d MastoAPI Accounts: Add fetching by nickname.
This is to make it easier for the frontends to handle domain.com/users/nickname
urls.
2019-03-11 15:18:32 +01:00
lain
4811eefa6e MastoAPI StatusView: Add locality indicator. 2019-03-11 13:48:27 +01:00
William Pitcock
19afd9f81f http: rework connection timeouts to match hackney docs, enforce 1 second max TCP connection timeout 2019-03-08 22:56:16 +00:00
eugenijm
7342b5a45f Preserve parameters in link headers (Mastodon API) 2019-03-07 09:12:16 +03:00
Maksim
bc7570c282 [#647] tests for web push 2019-03-06 13:20:12 +00:00
kaniini
10248d86a2 Merge branch 'unify-follow' into 'develop'
Unify follow code with CommonAPI

Closes #690

See merge request pleroma/pleroma!889
2019-03-04 13:25:32 +00:00
KokaKiwi
bf43f055dd Set content types settings on mastofe endpoint. 2019-03-04 12:00:02 +01:00
eugenijm
86e4b48a5e Fix DM visibility for blocking users 2019-03-04 06:24:27 +03:00
eugenijm
594694607c Unify Mastodon and Twitter follow implementations using CommonAPI 2019-03-04 01:00:37 +03:00
kaniini
6c6a2dbfdd Merge branch 'feature/add-pagination-to-users-admin-api' into 'develop'
Add pagination and search to users

See merge request pleroma/pleroma!873
2019-03-03 15:59:15 +00:00
Maxim Filippov
5b08b470f6 Add "local" params to users search 2019-03-01 20:13:02 +03:00
William Pitcock
28b4093233 mastodon websocket: return errors using ok, not stop 2019-02-28 16:23:55 +00:00
William Pitcock
388a3f4ca2 mastodon websocket: bring back infinity timeout 2019-02-28 16:23:24 +00:00
William Pitcock
f1d37a5e23 mastodon websocket: use pattern match to get query data, robustly handle errors 2019-02-28 16:02:48 +00:00
William Pitcock
bc53dff5b6 mastodon api: websocket: update code for cowboy 2.x 2019-02-28 15:44:12 +00:00
Maxim Filippov
72b7a0797e Use Mastodon API views in Admin API 2019-02-28 17:43:09 +03:00
kaniini
cf426a719d Merge branch 'with-mutes' into 'develop'
Add `with_muted` param.

Closes #683

See merge request pleroma/pleroma!872
2019-02-28 10:22:19 +00:00
lain
c1ae495878 Add user muted status info to MastodonAPI. 2019-02-27 16:46:47 +01:00
William Pitcock
1536640962 mastodon api: embed relationship card under account card for Pleroma FE convenience 2019-02-27 13:01:10 +00:00
lain
9e0686efa6 Move visibility into own module. 2019-02-22 13:29:52 +01:00
lain
62296f5a25 Fix private post card handling. 2019-02-22 12:02:51 +01:00
Egor
bff9eb5ef7 Reports 2019-02-20 16:51:25 +00:00
lain
59c27f29c8 Add some nicer urls in status view. 2019-02-20 17:36:16 +01:00
Ivan Tashkinov
b574d97c2e [#468] Added support for push OAuth scope (Mastodon 2.4+). 2019-02-20 17:27:41 +03:00
Ivan Tashkinov
6fe7acd58e [#468] Merged upstream/develop. 2019-02-20 16:48:59 +03:00
Ekaterina Vaartis
5a46d37af9 Update the mute implementation to the current codebase
Make it part of the info thing (and do a migration to ensure it's there)
2019-02-19 23:09:16 +03:00
Ekaterina Vaartis
da64ea4a55 Implement mastodon mutes endpoint
Aparently i forgot to add it, it gets a list of muted users
2019-02-19 21:49:55 +03:00
Ekaterina Vaartis
f41f017bbc Implement muting, add it to the mastodon API 2019-02-19 21:49:55 +03:00
Ivan Tashkinov
c0ecbf6669 [#468] Merged upstream/develop. 2019-02-19 19:10:55 +03:00
kaniini
c23bd05737 Merge branch 'features/flavour-switching' into 'develop'
[MastoAPI] Add switching of frontend flavours

See merge request pleroma/pleroma!807
2019-02-18 04:01:51 +00:00
kaniini
cd019a5927 Merge branch 'follow-request-count' into 'develop'
Follow request count

See merge request pleroma/pleroma!817
2019-02-18 04:01:26 +00:00
Ivan Tashkinov
bc4f77b10b [#468] Merged upstream/develop, resolved conflicts. 2019-02-17 14:07:04 +03:00
Ivan Tashkinov
dcf24a3233 [#468] Refactored OAuth scopes' defaults & missing selection handling. 2019-02-17 13:49:14 +03:00
Haelwenn (lanodan) Monnier
4df455f69b
[MastoAPI] Add switching of frontend flavours 2019-02-16 19:50:13 +01:00
rinpatch
96c725328b Remove a limit on attachments in Mastodon API and document the changes in responses from vanilla mastodon 2019-02-16 20:38:25 +03:00
Ivan Tashkinov
2a4a4f3342 [#468] Defined OAuth restrictions for all applicable routes.
Improved missing "scopes" param handling.
Allowed "any of" / "all of" mode specification in OAuthScopesPlug.
Fixed auth UI / behavior when user selects no permissions at /oauth/authorize.
2019-02-15 19:54:37 +03:00
eugenijm
ecdf0657ba Add logic for keeping follow_request_count up-to-date on the follow,
`approve_friend_request`, and `deny_friend_request` actions.
Add follow_request_count to the user view.
2019-02-15 12:20:20 +03:00
Ivan Tashkinov
027adbc9e5 [#468] Refactored OAuth scopes parsing / defaults handling. 2019-02-14 17:03:19 +03:00
Ivan Tashkinov
063baca5e4 [#468] User UI for OAuth permissions restriction. Standardized storage format for scopes fields, updated usages. 2019-02-14 00:29:29 +03:00
Karen Konou
ac72b578da Merge branch 'develop' into feature/thread-muting 2019-02-11 12:10:49 +01:00
Karen Konou
c01ef574c1 Refactor as per Rin's suggestions, add endpoint tests 2019-02-11 12:04:02 +01:00
Karen Konou
cc21fc5f53 refactor, status view updating, error handling 2019-02-10 10:42:30 +01:00
Haelwenn (lanodan) Monnier
6a6a5b3251
de-group alias/es 2019-02-09 16:31:17 +01:00
Haelwenn (lanodan) Monnier
8bcfac93a8
Make credo happy 2019-02-09 14:59:20 +01:00
Karen Konou
98ec578f4d Merge branch 'develop' into feature/thread-muting 2019-02-08 12:44:02 +01:00
Ivan Tashkinov
2c68cf7e9e OAuth2 security fixes: redirect URI validation, "Mastodon-Local" security breach fix.
(`POST /api/v1/apps` could create "Mastodon-Local" app wth any redirect_uris,
and if that happened before /web/login is accessed for the first time
then Pleroma used this externally created record with arbitrary
redirect_uris and client_secret known by creator).
2019-02-07 22:14:06 +03:00
Karen Konou
f4ff4ffba2 Migration and some boilerplate stuff 2019-02-07 17:36:14 +01:00
Mark Felder
74518d0b60 hide_followings was renamed to hide_followers in the FE, but never synced up in the BE
This was a dirty regex replace which worked on my server
2019-02-06 22:34:44 +00:00
William Pitcock
65a4b9fbea mastodon api: rich media: don't clobber %URI struct with a string 2019-02-06 18:02:15 +00:00
kaniini
eb2b1960e0 Merge branch 'feature/split-hide-network-v2' into 'develop'
Split hide_network into hide_followers & hide_followings (fixed)

See merge request pleroma/pleroma!765
2019-02-05 18:56:59 +00:00
William Pitcock
1d94b67e40 mastodon api: fix rendering of cards without image URLs (closes #597) 2019-02-05 18:30:27 +00:00
rinpatch
00835bf678 Merge branch 'fix/rich-media-relative-path' into 'develop'
Fix rich media relative path

Closes #588

See merge request pleroma/pleroma!759
2019-02-04 16:01:34 +00:00
Maxim Filippov
16ce129e38 Split hide_network into hide_followers & hide_followings (fixed) 2019-02-03 21:55:04 +03:00
rinpatch
68d461b3a9 Check if rich media uri is relative 2019-02-02 12:24:24 +03:00
rinpatch
833404f0f5 Use with instead of if in the card 2019-02-02 12:04:18 +03:00
rinpatch
e4d18f328b merge only if page_url is an absolute path 2019-02-02 11:53:46 +03:00
rinpatch
cbadf9d333 Fix rich media relative path 2019-02-02 11:38:37 +03:00
kaniini
486749064f Revert "Merge branch 'feature/split-hide-network' into 'develop'"
This reverts merge request !733
2019-02-01 20:22:58 +00:00
eugenijm
d747bd9870 Use String.replace_leading instead of String.replace for getting websocket streaming api url.
Extract the login responsible for obtaining websocket URL into the corresponding
Endpoint function.
2019-02-01 21:58:43 +03:00
Haelwenn (lanodan) Monnier
74c6119f28
MastodonAPI.MastodonAPIController: Return a 404 when we fail to get a list 2019-02-01 18:21:16 +01:00
kaniini
0a82a7e6d6 Merge branch 'feature/split-hide-network' into 'develop'
Split hide_network into hide_followers & hide_followings

See merge request pleroma/pleroma!733
2019-02-01 17:05:29 +00:00
Haelwenn
00d4333373 Merge branch 'features/glitch-soc-frontend' into 'develop'
Features/glitch soc frontend

See merge request pleroma/pleroma!192
2019-01-31 10:16:11 +00:00
href
4aff4efa8d
Use multiple hackney pools
* federation (ap, salmon)
* media (rich media, media proxy)
* upload (uploader proxy)

Each "part" will stop fighting others ones -- a huge federation outbound
could before make the media proxy fail to checkout a connection in time.

splitted media and uploaded media for the good reason than an upload
pool will have all connections to the same host (the uploader upstream).
it also has a longer default retention period for connections.
2019-01-30 15:06:46 +01:00
Haelwenn
ebb3496386 Merge branch 'feature/rich-media-part-2-electric-boogaloo' into 'develop'
Rich Media support, part 2.

See merge request pleroma/pleroma!719
2019-01-29 05:11:08 +00:00
Maxim Filippov
50d6183893 Split hide_network into hide_followers & hide_followings 2019-01-28 21:40:08 +03:00
Haelwenn
de0fb88a9c Merge branch 'safe-render-activities' into 'develop'
remove unnecessary filter (re !723)

See merge request pleroma/pleroma!729
2019-01-28 11:48:03 +00:00
href
df2f7b39dd
re f83bae7c: remove unnecessary filter 2019-01-28 12:24:14 +01:00
William Pitcock
ddc7ae2c1a mastodon api: card: force OGP images through mediaproxy 2019-01-28 06:42:27 +00:00
William Pitcock
8e42251e06 rich media: add helpers module, use instead of MastodonAPI module 2019-01-28 06:04:54 +00:00
William Pitcock
24a103a1fe mastodon api: formatting 2019-01-28 05:53:17 +00:00
William Pitcock
5a37ddc2dc mastodon api: embed card in status object 2019-01-28 05:53:17 +00:00
William Pitcock
132d815f1f mastodon api: factor out status card fetching, move status card rendering to statusview, add opengraph extended data 2019-01-28 05:53:17 +00:00
Haelwenn (lanodan) Monnier
cda1470e02
[MastoAPI][GlitchAPI] Add bookmarks 2019-01-28 04:47:32 +01:00
lambda
16ab1437d6 Merge branch 'safe-render-activities' into 'develop'
Views: wrap activity rendering in a rescue

See merge request pleroma/pleroma!723
2019-01-27 20:10:09 +00:00
href
f83bae7c22
Views: wrap activity rendering in a rescue
this avoids complete timeline breakage when an activity fucks up
rendering.
2019-01-27 19:16:20 +01:00
kaniini
5eb81d2c72 Merge branch 'features/mastoapi-multi-hashtag' into 'develop'
MastodonAPI multi-hashtag

See merge request pleroma/pleroma!652
2019-01-27 12:45:50 +00:00
Haelwenn (lanodan) Monnier
a65c188593
Web.MastodonAPI.AccountView: Add is_moderator and is_admin
Closes: https://git.pleroma.social/pleroma/pleroma/issues/557
2019-01-27 10:33:22 +01:00
Haelwenn (lanodan) Monnier
de956b9e04
Web.MastodonAPI.MastodonAPIController: tag+any bookmark params in a array and flatten it 2019-01-26 16:46:20 +01:00
William Pitcock
1f7843b9b8 mastodon api: use OGP uri instead of page_url for deducing domain name, fix test 2019-01-26 15:24:16 +00:00
William Pitcock
86037e9c39 mastodon api: use HTML.extract_first_external_url() 2019-01-26 15:13:27 +00:00
William Pitcock
78047d57bf mastodon api: provider_name setting is required too on the card 2019-01-26 14:47:32 +00:00
Haelwenn (lanodan) Monnier
39863236eb Web.MastodonAPI.MastodonAPIController: generic get_status_card/1 function for MastoAPI 2.6.x
Mastodon API 2.6.x added a card key to the Status object so the Card can be shown in the timeline without an extra request at each status.
2019-01-26 14:18:23 +00:00
Haelwenn (lanodan) Monnier
3f64379b13 Web.MastodonAPI.MastodonAPIController: Add Rich-Media support 2019-01-26 14:18:23 +00:00
Haelwenn (lanodan) Monnier
5a84def6a6
Fix the logic in multi-hashtag TLs 2019-01-26 04:46:02 +01:00
Haelwenn (lanodan) Monnier
f9cae0d04f
[WIP,MastoAPI] Multi-tag timelines 2019-01-26 04:45:36 +01:00
lain
2de208817c Merge branch 'develop' into rename/pleroma_activity_consistency 2019-01-23 13:05:58 +01:00
lambda
69454c8345 Merge branch 'feature/dm-sanity' into 'develop'
DM sanitization

See merge request pleroma/pleroma!458
2019-01-21 12:35:10 +00:00
Haelwenn (lanodan) Monnier
98c8184c1f
Activity: get_create_activity_by_object_ap_id/1 → get_create_by_object_ap_id/1 2019-01-21 08:00:41 +01:00
Haelwenn (lanodan) Monnier
2fdbd4d137
Activity: create_activity_by_object_id_query/1 → create_by_object_ap_id/1 when is_list 2019-01-21 08:00:40 +01:00
lambda
f3045a179e Merge branch 'i1t/pleroma-477_user_search_improvements' into 'develop'
I1t/pleroma 477 user search improvements

See merge request pleroma/pleroma!685
2019-01-20 10:24:05 +00:00
William Pitcock
75dfa1f0b0 mastodon api: get_visibility(): DMs never have a cc list. 2019-01-20 02:27:48 +00:00
Mark Felder
8c368d42a2 Make attachment links configurable
Thanks @href!
2019-01-17 15:48:14 +00:00
lain
943324b661 MastoAPI: Don't break on missing users. 2019-01-16 15:13:09 +01:00
Ivan Tashkinov
dc45ec62c2 [#477] User search improvements: tsquery search with field weights, friends & followers boosting. 2019-01-14 20:04:45 +03:00
Sadposter
9daf162461 Honour parameters on MastoAPI /favourites 2019-01-12 14:42:52 +00:00
Sadposter
144b48da95 Add link headers to MastoAPI /favourites
As documented at https://docs.joinmastodon.org/api/rest/favourites/
2019-01-12 14:03:35 +00:00
Egor Kislitsyn
e679da4c34 add pinned property to StatusView 2019-01-08 15:27:02 +07:00
Egor Kislitsyn
f24087f96e Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/pinned-posts 2019-01-07 20:55:32 +07:00
Egor Kislitsyn
380e9fba21 add pinned posts 2019-01-07 20:45:33 +07:00
scarlett
36fa5e8802 Check visible_for_user when performing a search using a direct link. 2019-01-07 10:36:31 +00:00
Rin Toshaka
846082e54f Different caches based on the module. Remove scrubber version since it is not relevant anymore 2019-01-05 00:19:46 +01:00
kaniini
90e157ef80 Merge branch 'features/admin-api-user-views' into 'develop'
User/Account views: Add rights.admin

Closes #472

See merge request pleroma/pleroma!589
2018-12-31 15:49:34 +00:00
William Pitcock
980b5288ed update copyright years to 2019 2018-12-31 15:41:47 +00:00
Rin Toshaka
7e09c2bd7d Move scrubber cache-related functions to Pleroma.HTML 2018-12-31 08:19:48 +01:00
Rin Toshaka
dec23500d8 Resolve merge conflict 2018-12-30 21:00:40 +01:00
Rin Toshaka
535fddd286 Friendship ended with Postgresql now Cachex is my best friend 2018-12-30 19:33:36 +01:00
Rin Toshaka
d9f40b05b3 Added get_stripped_html_for_object. Renamed a few things 2018-12-30 16:51:16 +01:00
Rin Toshaka
19f9889fbe I am not sure what's going on anymore so I'll just commit and reset all the other files to HEAD 2018-12-29 17:45:50 +01:00
kaniini
dd8f2196f6 Merge branch '483_blocks_import_export' into 'develop'
[#483] Blocked users list import & export

Closes #483

See merge request pleroma/pleroma!603
2018-12-29 11:34:51 +00:00
Ivan Tashkinov
0a41786624 [#467] Refactored valid / invalid user rendering. 2018-12-28 22:47:42 +03:00
Ivan Tashkinov
6e9a15b181 [#483] Blocked users export for TwitterAPI. 2018-12-28 21:08:07 +03:00
Haelwenn (lanodan) Monnier
b43d630f30
Web.TwitterAPI.UserView: Add rights.admin 2018-12-28 17:38:32 +01:00
Ivan Tashkinov
0d1788ce44 [#471] Factored out User.visible_for?/2. 2018-12-28 14:35:25 +03:00
Ivan Tashkinov
e6aeb1d4a5 [#471] Prevented rendering of inactive local accounts. 2018-12-27 15:46:18 +03:00
William Pitcock
2791ce9a1f add license boilerplate to pleroma core 2018-12-23 20:56:42 +00:00
William Pitcock
32dfc1d12a mastodon api: status view: remove obsolete peertube hack 2018-12-23 13:40:33 +00:00
Ivan Tashkinov
279096228c [#114] Made MastodonAPI and TwitterAPI user show actions return 404 for auth-inactive users
unless requested by admin or moderator.
2018-12-19 18:56:52 +03:00
Ivan Tashkinov
aed0f90287 [#114] Added pleroma.confirmation_pending to user views, adjusted view tests. 2018-12-18 17:22:45 +03:00
href
77b5154c82
Cowboy handler for Mastodon WebSocket 2018-12-17 17:06:18 +01:00
href
5dcb7aecea
More put_view. 2018-12-16 17:51:22 +01:00
href
f672555ad3
Upgrade to Phoenix 1.4 2018-12-16 17:15:07 +01:00
eal
28478a9c4f Merge branch 'fix/masto-put-settings' into 'develop'
Mastodon API: Fix PUT /api/web/settings

See merge request pleroma/pleroma!557
2018-12-16 11:21:26 +00:00
eal
4c783e35c0 Mastodon API: Fix PUT /api/web/settings 2018-12-16 13:15:34 +02:00
href
acec11626d Merge branch 'fix/issue_272' into 'develop'
[#272] fix tags

See merge request pleroma/pleroma!540
2018-12-14 20:20:30 +00:00
Maksim Pechnikov
ea72ac549b fix case when tags is invalid 2018-12-14 23:16:12 +03:00
Maksim Pechnikov
d3ec09bb38 fix tags 2018-12-14 22:09:04 +03:00
href
0b4c61e8d5
Fix warning 2018-12-14 13:56:42 +01:00
href
ec0e613eca
Pleroma.Activity.mastodon_notification_type/1 2018-12-14 13:22:10 +01:00
href
331396cbcd
Properly disable Web Push if no VAPID key is set 2018-12-14 13:05:51 +01:00
Egor Kislitsyn
658edb166f
fix and improve web push; add configuration docs 2018-12-14 13:05:29 +01:00
lambda
ff10b9927b Merge branch 'support/bugfix_272' into 'develop'
[#272] fix hashtags in api

See merge request pleroma/pleroma!510
2018-12-10 19:05:16 +00:00
Maksim Pechnikov
e94c3442f4 updates 2018-12-10 13:27:37 +03:00
Maksim Pechnikov
074fa790ba fix compile warnings 2018-12-09 20:50:08 +03:00
Maksim Pechnikov
068353ac0b formatting 2018-12-09 11:24:46 +03:00
Maksim Pechnikov
9442588ae9 fix hashtags in api response 2018-12-09 11:24:46 +03:00
lambda
94d8f1ab30 Merge branch '394_user_tags' into 'develop'
[#394] User tags

Closes #394

See merge request pleroma/pleroma!508
2018-12-07 18:25:38 +00:00
Ivan Tashkinov
7a2162bbcb [#394] User view (Twitter & Mastadon API): wrapped "tags" in "pleroma" map. 2018-12-06 22:26:25 +03:00
Ivan Tashkinov
7bcb6a183a [#394] Refactoring. 2018-12-06 20:23:16 +03:00
Ivan Tashkinov
7b19487389 [#394] Added users.tags and admin routes to tag and untag users. Added tests. 2018-12-06 20:06:50 +03:00
kaniini
1d531fd2f3 Merge branch 'fix/mastodon-api-settings' into 'develop'
Fix put_settings and remove info_changeset

See merge request pleroma/pleroma!507
2018-12-06 16:01:58 +00:00
kaniini
abead01ab6 Merge branch 'correct-and-improve-http-options' into 'develop'
Correct and improve http options

See merge request pleroma/pleroma!505
2018-12-06 15:57:56 +00:00
rinpatch
2ae1128d9f MastoAPI: Fix put_settings 2018-12-06 17:42:07 +03:00
Egor Kislitsyn
79668c08fc cleanup 2018-12-06 20:50:20 +07:00
Egor Kislitsyn
3d492795b7 clean up 2018-12-06 20:42:00 +07:00
Egor Kislitsyn
4944498133 Merge branch 'develop' into feature/compat/push-subscriptions
# Conflicts:
#	lib/pleroma/application.ex
#	lib/pleroma/plugs/oauth_plug.ex
2018-12-06 20:15:16 +07:00
Egor Kislitsyn
8b4397c704 Merge branch 'develop' into feature/compat/push-subscriptions
# Conflicts:
#	lib/mix/tasks/sample_config.eex
#	lib/pleroma/web/twitter_api/controllers/util_controller.ex
#	mix.exs
#	mix.lock
2018-12-06 19:55:58 +07:00
Egor Kislitsyn
04a48286e6 Add web push support 2018-12-06 19:29:04 +07:00
kaniini
ccf0b46dd6 Merge branch '210_twitter_api_uploads_alt_text' into 'develop'
[#210] TwitterAPI: alt text support for uploaded images. Mastodon API uploads security fix.

See merge request pleroma/pleroma!496
2018-12-06 07:36:21 +00:00
Ivan Tashkinov
3e90f688f1 [#210] Mastodon: actor storing for media uploads, ownership check to update_media.
Refactoring.
2018-12-06 10:26:17 +03:00
Hakaba Hitoyo
96ba95df2e remove follow_redirect options 2018-12-06 11:38:33 +09:00
Hakaba Hitoyo
505d820827 Merge remote-tracking branch 'origin/debug-suggestions-api' into correct-and-improve-http-options 2018-12-06 10:48:05 +09:00
lain
76d6b1c6ab Merge remote-tracking branch 'origin' into follower-hiding 2018-12-05 21:27:56 +01:00
lain
3ea4476445 MastodonAPI: Show users their own network. 2018-12-05 21:25:06 +01:00
hakabahitoyo
a418547bdf debug /api/v1/suggestions 2018-12-05 16:08:34 +09:00
Maksim Pechnikov
87109482f3 status_code -> status 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
3b8e5bcbeb fix most tests 2018-12-04 04:52:09 +00:00
William Pitcock
5d4a71906a mastodon api: use Object.normalize() in a few missing spots 2018-12-04 04:52:09 +00:00
William Pitcock
e9b718cea2 mastodon api: status view: use Object.normalize() 2018-12-04 04:52:09 +00:00
Maxim Filippov
4b70e5eae9 Parse bio for MastodonAPI 2018-12-03 18:59:50 +03:00
lain
2a639de9b3 MastodonApi: Implement hide_network. 2018-12-02 17:48:00 +01:00
lain
347df6421d Fix masto api user updating. 2018-12-01 10:40:01 +01:00
lain
c443c9bd72 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into validate-user-info 2018-12-01 09:55:46 +01:00
href
02d3dc6869
Uploads fun, part. 2 2018-11-30 18:02:37 +01:00
href
b19597f602
reverse proxy / uploads 2018-11-30 18:00:47 +01:00
lain
d0ec2812bd Merge remote-tracking branch 'origin' into validate-user-info 2018-11-30 17:34:20 +01:00
Haelwenn (lanodan) Monnier
d388a99143
Web.MastodonAPI.MastodonSocket: Put access_token at function-level 2018-11-24 06:43:03 +01:00
Haelwenn (lanodan) Monnier
5346fabf14
Web.MastodonAPI.MastodonSocket: Add unauthentified websocket endpoints
reported by soka on CRTNet
2018-11-24 06:13:36 +01:00
lain
0896cf4c0f Fix most mastodon api bugs. 2018-11-20 20:12:39 +01:00
href
bc5cf2c192
Improved version string 2018-11-20 17:55:03 +01:00
lain
2cf40237ff MastodonAPI: Add pagination to private messages. 2018-11-13 19:46:34 +01:00
KokaKiwi
1592fa2bea Mastodon API: Fix list streaming 2018-11-11 14:18:15 +01:00
kaniini
b451a92d78 Merge branch 'runtime-config' into 'develop'
Runtime configuration

See merge request pleroma/pleroma!430
2018-11-07 22:32:34 +00:00
href
e42f2efae4
/api/v1/accounts/relationships Return an empty array if no id in params
This copies Mastodon API behaviour & fixes Mastalab app.
2018-11-07 16:32:57 +01:00
href
5bb88fd174
Runtime configuration
Related to #85

Everything should now be configured at runtime, with the exception of
the `Pleroma.HTML` scrubbers (the scrubbers used can be
changed at runtime, but their configuration is compile-time) because
it's building a module with a macro.
2018-11-06 19:41:15 +01:00
lain
a8f1e30cb8 Formatting. 2018-11-06 16:05:58 +01:00
lain
4f640c43ed Unify Mastodon Login with OAuth login.
This removes duplication in the login code.
2018-11-06 15:19:11 +01:00
href
763fc7b44f
Runtime configured emojis
The changes are a bit heavy since the emojis were loaded into module
attributes from filesystem.

This introduces a GenServer using an ETS table to cache in memory the
emojis, and allows a runtime-reload with `Pleroma.Emoji.reload()`.
2018-11-05 13:24:00 +01:00
Haelwenn (lanodan) Monnier
3e50bb667f
Pleroma.Web.MastodonAPI.StatusView: Content isn’t nullable 2018-11-03 14:42:47 +01:00
Mark Felder
0cca7edbe0 Fix hashtag search
When we lowercase the search it will succesfully do a case insenstive
match. Now #Linux will match #linux and #LINUX whereas previously it
would only match the exact case.
2018-11-02 19:38:57 +00:00
William Pitcock
4d8f076125 mastodon api: add support for rendering Page objects 2018-11-01 10:00:16 +00:00
Haelwenn (lanodan) Monnier
755f166406
Pleroma.Web.MastodonAPI.StatusView: Do not fail when URL isn’t a string 2018-11-01 09:55:38 +01:00
William Pitcock
181f3bb56a mastodon api: enforce upload limits for avatars and banners 2018-10-29 16:43:05 +00:00
William Pitcock
5c6ec2d9fc twitter/mastodon api: always use mediaproxy URLs in attachments
if using local media, the mediaproxy will not replace the URL anyway.
2018-10-29 15:19:32 +00:00
William Pitcock
26eb11c172 activitypub: add support for filtering broken threads out of timelines 2018-10-26 06:16:51 +00:00
Haelwenn (lanodan) Monnier
b386888a0e
[Pleroma.Web.MastodonAPI.MastodonAPIController]: fallback for try_render/4
Better be sure than sorry
2018-10-25 06:21:11 +02:00
Haelwenn (lanodan) Monnier
b112112c11
[Pleroma.Web.MastodonAPI.MastodonAPIController]: Wrap around render/4 2018-10-25 05:52:45 +02:00
Haelwenn (lanodan) Monnier
b0a940d5a2
[Pleroma.Web.MastodonAPI.StatusView]: Remove unused arguments 2018-10-25 05:24:03 +02:00
Haelwenn (lanodan) Monnier
2da0ffeb28
lib/pleroma/web/mastodon_api/mastodon_api_controller.ex: Output an error when render(status.json) gives a nil 2018-10-25 05:24:03 +02:00
Haelwenn (lanodan) Monnier
0c10be8731
[Pleroma.Web.MastodonAPI.StatusView]: Remove nils from lists.json 2018-10-25 05:24:03 +02:00
Haelwenn (lanodan) Monnier
3b0e9287a5
[Pleroma.Web.MastodonAPI.StatusView]: Return nil as fallback for missing views 2018-10-25 05:24:01 +02:00
AkiraFukushima
e8c698af41 Add an endpoint /api/v1/accounts/:id/lists to get lists to which account belongs 2018-10-19 01:46:26 +09:00
William Pitcock
7b3fff9af8 {mastodon api, twitter api}: make the follow handshake timeout configurable 2018-10-07 01:05:59 +00:00
William Pitcock
7f530f6f80 mastodon api: relationship view: better handle no pre-existing follow activity 2018-10-05 23:50:13 +00:00
William Pitcock
e69faf550c user: add wait_and_refresh() for async three-way handshake case 2018-10-05 23:40:49 +00:00
William Pitcock
3e751496e3 mastodon api: account view: fetch follow state and use it to populate requested field 2018-10-05 23:31:49 +00:00
Martin Kühl
d94ee5cd50 Mastodon API: Support push subscription CRUD 2018-09-22 07:04:01 +02:00
William Pitcock
df00a364fb mastodon api: formatting 2018-09-22 02:53:04 +00:00
William Pitcock
958e085acb mastodon api: add support for user-supplied html policy 2018-09-22 02:53:02 +00:00
Haelwenn (lanodan) Monnier
40c51f118f
[Pleroma.Web.MastodonAPI.MastodonAPIController]: Bump mastodon_api_level to 2.5.0 2018-09-20 16:48:12 +02:00
Haelwenn (lanodan) Monnier
f74725df41
[Pleroma.Web.MastodonAPI.MastodonAPIController]: Remove unused variables 2018-09-20 16:37:18 +02:00
Haelwenn (lanodan) Monnier
a8eaecadee
[Pleroma.Web.MastodonAPI.AccountView]: relationship.json: fake endorsed value (false) 2018-09-20 16:24:29 +02:00
Haelwenn (lanodan) Monnier
43d0b7bf7a
[Pleroma.Web.MastodonAPI.StatusView] add replies_count 2018-09-20 16:10:46 +02:00
William Pitcock
0cac493fdc mastodon api: default attachment type to image if one is not present 2018-09-19 04:59:25 +00:00
Martin Kühl
f4fcea5258 Revert "Mastodon API: Fake support for loading filters"
This reverts commit c1d07da4e1.

The fake support was superseded by 6e030129fb which actually implements the faked filters API.

This change removes the fake support and ensures that the actual implementation is used.
2018-09-18 11:59:10 +02:00
kaniini
c2650f0ffb Merge branch 'feature/html-scrub-policy' into 'develop'
html scrub policy

See merge request pleroma/pleroma!339
2018-09-16 01:05:09 +00:00
shadowfacts
39aed5348a Add visible_in_picker to status emojis 2018-09-10 23:32:19 +00:00
William Pitcock
ac486fc59b everywhere: use Pleroma.HTML module instead of HtmlSanitizeEx directly 2018-09-10 00:14:47 +00:00
Hakaba Hitoyo
4e1bb7bccb make limit for /api/v1/suggestions 2018-09-09 13:57:23 +09:00
Martin Kühl
c1d07da4e1 Mastodon API: Fake support for loading filters 2018-09-07 16:12:44 +02:00
Martin Kühl
619f67768a Mastodon API: Add unsupported attributes to relationship responses
These attributes are documented as required by the Mastodon API.
Since we don’t support them (I think?), respond with default values.
2018-09-07 16:12:44 +02:00
Haelwenn
4a3dbd9d4e Merge branch 'fix/sign-in-with-toot' into 'develop'
Fix sign-in and sign-out with Toot!

See merge request pleroma/pleroma!306
2018-09-05 18:20:26 +00:00
kaniini
1c9e539b47 Merge branch 'feature/mastodon_api_2.4.x' into 'develop'
Add/Fix Mastodon endpoints for 2.4.3 compatibility

See merge request pleroma/pleroma!266
2018-09-03 12:33:36 +00:00
shadowfacts
35515cfa66 Update mastodon_api_controller.ex 2018-09-03 01:58:55 +00:00
shadowfacts
26f8697400 Update mastodon_api_controller.ex 2018-09-03 01:52:02 +00:00
shadowfacts
2b2bd0e047 Render notification IDs as strings, not numbers 2018-09-03 01:40:05 +00:00
Martin Kühl
b60d232719 AccountView: sensitive is supposed to be a boolean, not a string 2018-09-01 23:10:48 +02:00
kaniini
2e2f458705 Merge branch 'lanodan/code-dup_in_mastoapi_search' into 'develop'
Clean code duplication in MastoAPI search(v1/v2)

See merge request pleroma/pleroma!316
2018-09-01 09:12:59 +00:00
Will Pearson
0c2a0e3551 Specify default scope in verify_credentials
Certain Mastodon/Pleroma front ends call verify_credentials to get the
default scope of a new toot.

Currently, Pleroma hardcodes this value to "public".

This patch changes it to the user's default_scope value.
2018-08-31 21:04:46 -07:00
Haelwenn (lanodan) Monnier
8885d16e1b
[Pleroma.Web.MastodonAPI.MastodonAPIController].search(2)?: Remove code duplication 2018-09-01 03:11:58 +02:00
kaniini
e838969495 Merge branch 'use-media-proxy-in-suggestions-api' into 'develop'
use media proxy for the suggestions api

See merge request pleroma/pleroma!305
2018-08-30 23:06:30 +00:00
href
ddc6f32b75
Fix Mastodon API when actor's nickname is null 2018-08-29 16:32:50 +02:00
William Pitcock
ded9091206 mastodon api: use bounded AP object graph query to enforce containment of private statuses 2018-08-29 08:51:51 +00:00
Hakaba Hitoyo
6cbfb5ab5d use media proxy for suggestions api 2018-08-28 17:01:17 +09:00
Haelwenn (lanodan) Monnier
6973b77e94
[Pleroma.Web.MastodonAPI.FilterView] fix expires_at being a unsafe variable 2018-08-27 15:09:06 +02:00
Haelwenn (lanodan) Monnier
9bddb39ff0
[Pleroma.Web.MastodonAPI.FilterView]: expires_at should be null when N/A 2018-08-27 15:09:06 +02:00
Haelwenn (lanodan) Monnier
d571a571fe
[Pleroma.Web.MastodonAPI.MastodonAPIController]: Bump mastodon_api_level to 2.4.3 2018-08-27 15:09:06 +02:00
Haelwenn (lanodan) Monnier
6e030129fb
[MastodonAPI] Add filters 2018-08-27 15:09:05 +02:00
Haelwenn (lanodan) Monnier
a5adb251ab
[Pleroma.Web.MastodonAPI.AccountView]: Add fields support 2018-08-27 15:09:05 +02:00
Haelwenn (lanodan) Monnier
d008f2d69c
[Pleroma.Web.MastodonAPI.AccountView]: Add bot field 2018-08-27 15:09:04 +02:00
Haelwenn (lanodan) Monnier
83efaa3af6
[MastodonAPI] Add streaming of hashtags 2018-08-27 15:08:25 +02:00
hakabahitoyo
bf9f68b681 debug 2018-08-23 11:52:18 +09:00
Haelwenn (lanodan) Monnier
5dde6e4a00
[Pleroma.Web.MastodonAPI.StatusView] Fix rendering peertube videos 2018-08-22 01:46:26 +02:00
kaniini
f6b06d2ac8 Merge branch 'feature/peertube_2' into 'develop'
rebase/update of feature/peertube

See merge request pleroma/pleroma!217
2018-08-21 16:58:44 +00:00
Haelwenn (lanodan) Monnier
046741c60d
[Pleroma.Web.MastodonAPI.StatusView] Support Peertube Video titles 2018-08-21 18:34:56 +02:00
Haelwenn (lanodan) Monnier
3b8ef24532
Fix attachement rendering 2018-08-21 18:24:10 +02:00
lain
a6b021a52b
Render peertube videos in mastodon. 2018-08-21 18:24:10 +02:00
lain
c381d0b577
Use activitypub to fetch posts.
This falls back to ostatus.
2018-08-21 18:24:09 +02:00
ensra
175f0bebbc mastodon api: sanitize the bio HTML 2018-08-21 10:53:53 +01:00
shadowfacts
6698749073 Fix typo in app creation response
Mastodon sends redirect_uri (singular), so should Pleroma.
2018-08-17 12:48:24 +00:00
William Pitcock
a3ef2ebb35 mastodon api controller: client_name, not name 2018-08-16 23:50:49 +00:00
William Pitcock
b5a92b1199 mastodon api: add undocumented fields to json response, return app id as string like mastodon itself does 2018-08-16 23:40:42 +00:00
lambda
9908cf8fda Merge branch 'feature/suggestions-api-with-third-party-recommendation-engine' into 'develop'
Feature / Suggestions API with third party recommendation engine

See merge request pleroma/pleroma!254
2018-08-15 07:47:33 +00:00
eal
c2d1a5e9c4 MastoAPI AccountView: render profile emoji. 2018-08-07 21:56:50 +03:00
Hakaba Hitoyo
cc9c062b55 merge 2018-07-19 17:42:00 +09:00
lambda
6f23fb53d3 Merge branch 'feature/fe-configuration' into 'develop'
serverside frontend configuration

See merge request pleroma/pleroma!256
2018-07-19 07:31:10 +00:00
Hakaba Hitoyo
b12d17d2ce configurable timeout 2018-07-18 13:36:20 +09:00
Hakaba Hitoyo
e4dd58307a better configuration 2018-07-18 09:58:59 +09:00
William Pitcock
cf219b6add config: make instance description configurable 2018-07-17 15:46:23 +00:00
Hakaba Hitoyo
5b4a21317d correct error message 2018-07-17 17:29:18 +09:00
Hakaba Hitoyo
d76f0d87be do nothing if configuration is skipped 2018-07-17 16:45:18 +09:00
Hakaba Hitoyo
df3233e7e7 improve getting host name 2018-07-17 13:20:58 +09:00
William Pitcock
99c0252314 mastodon api: support descriptions in media api, add PUT endpoint for updating metadata about a media upload 2018-07-17 03:40:47 +00:00
William Pitcock
cd19d37a90 mastodon api: use object name as alt text 2018-07-17 03:40:46 +00:00
hakabahitoyo
e7c580828c format 2018-07-15 20:36:26 +09:00
hakabahitoyo
2eeaf01627 id field 2018-07-14 14:03:30 +09:00
hakabahitoyo
127882a5d5 configurable 2018-07-14 11:41:09 +09:00
hakabahitoyo
eb0afda3a7 http access to third party user recommendation 2018-07-14 10:04:37 +09:00
hakabahitoyo
3812b627ca better mock /api/v1/suggestions 2018-07-14 00:52:23 +09:00
hakabahitoyo
4a21c1b343 mock /api/v1/suggestions 2018-07-14 00:44:18 +09:00
hakabahitoyo
f944f8157a /api/v1/suggestions endpoint 2018-07-14 00:21:38 +09:00
lambda
fe4387077a Merge branch 'feature/default-scope' into 'develop'
default scope setting

See merge request pleroma/pleroma!239
2018-07-12 05:59:12 +00:00
lambda
4a922305af Merge branch 'feature/article-support' into 'develop'
article support (plume, etc)

See merge request pleroma/pleroma!240
2018-07-12 05:58:39 +00:00
Haelwenn (lanodan) Monnier
7a351cb36f
[Pleroma.Web.MastodonAPI.StatusView]: Fill the url field for statuses
Closes: https://git.pleroma.social/pleroma/pleroma/issues/231
2018-07-12 01:57:25 +02:00
William Pitcock
971bb4f2bd activity interpretation: formatting 2018-06-27 13:38:19 +00:00
William Pitcock
ea982e7503 mastodon api: add interpreter for Article activity types 2018-06-27 13:38:00 +00:00
William Pitcock
4f6de34f4f mastodon api: use info["default_scope"] if available for post scope 2018-06-27 13:15:42 +00:00
Haelwenn (lanodan) Monnier
beb940a57e
[Pleroma.Web.MastodonAPI.MastodonAPIController]: Add rights to initial_state
Related to https://git.pleroma.social/pleroma/mastofe/issues/20
2018-06-26 20:48:35 +02:00
Haelwenn (lanodan) Monnier
5a4a45b875
[Pleroma.Web.MastodonApi.MastodonApiController] Add initial_state.meta.max_toot_chars 2018-06-23 16:22:49 +02:00
Haelwenn (lanodan) Monnier
a05c0ff61d
[Pleroma.Web.MastodonApi.MastodonApiController] Add /api/v2/search 2018-06-23 16:22:47 +02:00
Haelwenn (lanodan) Monnier
359093d73b
Fake 2.4.0 API 2018-06-23 16:12:57 +02:00
Haelwenn (lanodan) Monnier
b670d4d683
MastodonAPI: Add streaming to media tabs of federated and local TLs 2018-06-17 16:17:15 +02:00
Haelwenn (lanodan) Monnier
72c2915ecd
Pleroma.Web.MastodonAPI.StatusView: Fix status.json so it renders threads 2018-06-15 22:14:17 +02: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
lambda
564c73ab24 Merge branch 'feature/list-streaming' into 'develop'
MastoAPI: Add streaming for lists.

See merge request pleroma/pleroma!183
2018-06-12 07:19:45 +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
a2c4a5a75b mastodon api: allow setting an account locked or not 2018-06-11 22:15:53 +00:00