Commit Graph

1851 Commits

Author SHA1 Message Date
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
rinpatch d9c0650ff9 Mastodon API: Fix lists leaking private posts
Our previous list visibility resolver grabbed posts if either follower
collection of the user in a list who is followed is in `to` or if
follower collection of the user in a list was in `cc`. This not only
missed unlisted posts but also lead to leaking private posts when
`fix_explicit_addressing` mistakingly started putting follower collections
to `cc` (also fixed in this MR).

Reported by @kurisu@iscute.moe via a DM
2019-05-31 15:25:17 +03:00
rinpatch a9eaa55885 Fix fix_explicit_addressing moving follower collection to cc and add tests for it 2019-05-31 14:17:05 +03: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
lambda 91ac8b075b Merge branch 'use-pleroma-config' into 'develop'
Use Pleroma.Config everywhere

See merge request pleroma/pleroma!1214
2019-05-30 13:16:08 +00:00
Egor Kislitsyn 99f70c7e20 Use Pleroma.Config everywhere 2019-05-30 15:33:58 +07:00
Maksim db94294dfb [#936] fix tests 2019-05-29 14:04:58 +00:00
lambda 5bb843ceec Merge branch 'refactor/die-httpoison-die' into 'develop'
remove @httpoison, @ostatus and @websub compile-time constants

See merge request pleroma/pleroma!1203
2019-05-26 13:33:11 +00:00
William Pitcock 79503ce90f mrf: simple policy: fix matching imported activitypub and ostatus statuses 2019-05-26 02:01:24 +00:00
William Pitcock 45e4642a58 tests: chase remote/local removal 2019-05-26 00:20:54 +00:00
William Pitcock 59a703fcbe twitter api: user view: expose user notification settings under pleroma object 2019-05-25 05:31:13 +00:00
William Pitcock 0f7eeb0943 tests: add tests for non-follows/non-followers settings 2019-05-25 05:25:40 +00:00
William Pitcock 1542cccbbc tests: chase notification setting changes 2019-05-25 05:22:13 +00:00
William Pitcock 56fd7dbdd7 remove @websub and @ostatus module-level constants 2019-05-25 04:43:11 +00:00
William Pitcock 80d55d428f tests: websub: check only that signature validation succeeds or fails 2019-05-25 04:34:16 +00:00
Aaron Tinio 9415932af5 Keep nodeinfo available when not federating 2019-05-25 08:15:12 +08:00
Sergey Suprunenko bbea5691da Mention all people in the beginning of DM 2019-05-24 20:34:23 +00:00
feld f916e4cdd9 Move the Cache Control header test to its own file
We can consolidate our cache control header tests here
2019-05-24 20:33:55 +00:00
William Pitcock 8086c7aed6 tests: add tests for banner and avatar removal 2019-05-22 18:53:12 +00:00
rinpatch 19c90d47c4 Normalize poll votes to Answer objects 2019-05-22 21:17:57 +03:00
Maksim 620908a2db [#699] add worker to clean expired oauth tokens 2019-05-22 15:44:50 +00:00
lambda 714d8d4ef9 Merge branch 'feature/object-pruning' into 'develop'
Object pruning

See merge request pleroma/pleroma!1181
2019-05-22 11:04:30 +00:00
lambda ff363f70b5 Merge branch 'refactor/keys' into 'develop'
move key generation functions into Pleroma.Keys module

See merge request pleroma/pleroma!1186
2019-05-22 06:28:16 +00: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
kaniini 79c2cef2fb Merge branch 'mongooseim-support' into 'develop'
MongooseIM: Add basic integration endpoints.

See merge request pleroma/pleroma!1172
2019-05-22 04:06:54 +00:00
kaniini ab6e15622b Merge branch 'fix/api-fallback' into 'develop'
Do not fallback to index.html for /api/* routes

Closes #920

See merge request pleroma/pleroma!1182
2019-05-22 04:05:41 +00:00
Sergey Suprunenko 9134848170 Do not truncate DM when it contains newlines and safe_dm_mentions is set to true 2019-05-22 04:04:20 +00:00
William Pitcock 045803346d move key generation functions into Pleroma.Keys module 2019-05-22 03:58:15 +00:00
Aaron Tinio f76268135c Fix failing test 2019-05-22 07:16:11 +08:00
Aaron Tinio 3ab9255eda Respond with a 404 Not implemented JSON error message
when requested API is not implemented
2019-05-22 07:15:52 +08:00
Aaron Tinio a13d449b24 Add tests for fallback routes 2019-05-22 05:39:29 +08:00
William Pitcock 73df9d690d object: fetcher: add support for reinjecting pruned objects 2019-05-21 21:38:56 +00: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 aafe30d94e Handle poll votes 2019-05-21 14:12:10 +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 dc916ba15f
Format mascot tests 2019-05-20 12:58:17 +01:00
Sadposter e81f0fc6d4
Add mascot get/set tests 2019-05-20 12:58:06 +01:00
Aaron Tinio 2375e9a95b Add report filtering to MRF.SimplePolicy 2019-05-20 06:02:50 +08:00
rinpatch 5ece901af3 Resolve merge conflicts and remove IO.inspects 2019-05-18 13:37:38 +03:00
rinpatch fd920c8973 Mastodon API: Add support for posting polls 2019-05-18 13:29:28 +03:00
William Pitcock dc08159538 also suppress link previews from posts marked #nsfw 2019-05-17 22:13:24 +00:00
William Pitcock 0da1233e8e rich media: suppress link previews if post is marked as sensitive 2019-05-17 18:49:43 +00:00
lain f959bf7aa6 MongooseIM: Add basic integration endpoints. 2019-05-17 18:21:11 +02:00
lain 249b31ffe5 Fix specs. 2019-05-17 11:49:13 +02:00
Alexander Strizhakov 7ed682213f Fix/902 random compile failing 2019-05-17 07:25:20 +00:00
Aaron Tinio 443cd68a4c Add tests for MRF.SimplePolicy 2019-05-17 09:02:34 +08:00
kaniini bf84d50c76 Merge branch 'feature/890-add-report-uri' into 'develop'
Feature/890 add report uri

Closes #890

See merge request pleroma/pleroma!1164
2019-05-16 20:11:12 +00:00
Sergey Suprunenko 2c303afc8b Remove duplicated entries in users' following lists 2019-05-16 20:04:08 +00:00
Sergey Suprunenko e2b3a27204 Add Reports to Admin API 2019-05-16 19:09:18 +00:00
feld e190b3022b Merge branch 'fix/domain-unblocked-reblogs' into 'develop'
Fix domain-unblocked reblogs

Closes #892

See merge request pleroma/pleroma!1157
2019-05-16 18:57:14 +00:00
Mark Felder ebb0482116 Merge branch 'develop' into conversations-import 2019-05-16 13:11:17 -05:00
lambda fde30aee43 Merge branch 'feature/sql-thread-sat' into 'develop'
SQL thread visibility solver

See merge request pleroma/pleroma!971
2019-05-16 13:44:22 +00:00
Alexander Strizhakov 73ae58fdfa Feature/896 toggling confirmation 2019-05-16 13:23:41 +00:00
Alex S 4711d8151c try this 2019-05-16 17:35:07 +07:00
Alex S aa11fa4864 add report uri and report to 2019-05-16 12:49:40 +07:00
Aaron Tinio 2b6119dfbf Restrict reblogs of activities from blocked domains 2019-05-16 05:53:51 +08:00
Aaron Tinio 64495b96e9 Add test for blocked domains 2019-05-16 05:53:51 +08:00
rinpatch 62e42b03ab Handle incoming Question objects 2019-05-15 20:10:16 +03:00
William Pitcock f09c3afdf5 chase test failures 2019-05-15 16:23:01 +00:00
William Pitcock c7644313e7 test: update obsolete test 2019-05-15 15:54:10 +00:00
lain f168a1cbdc Merge remote-tracking branch 'origin/develop' into conversations-import 2019-05-15 17:47:29 +02:00
kaniini 62516be9c4 Merge branch 'fix/public-option-not-working' into 'develop'
Fix public option not working

Closes #873

See merge request pleroma/pleroma!1143
2019-05-15 15:42:21 +00:00
lambda 4440e23547 Merge branch 'chore/extricate-http-signatures' into 'develop'
switch to pleroma/http_signatures library

See merge request pleroma/pleroma!1155
2019-05-15 15:37:31 +00:00
William Pitcock 4429c1b7da tests: fixup 2019-05-15 15:29:42 +00:00
lain cbb3451023 CommonAPI: Refactor visibility, forbid public to private replies. 2019-05-15 16:30:08 +02:00
Sachin Joshi ee22fff5ac remove deprecated PleromaFE configuration 2019-05-15 15:29:59 +05:45
Aaron Tinio 70c81b95d0 Pipe requests to public endpoints through EnsurePublicOrAuthenticatedPlug 2019-05-15 05:09:32 +08:00
Aaron Tinio 7b8dc99ef1 Implement Pleroma.Plugs.EnsurePublicOrAuthenticated 2019-05-15 05:09:29 +08:00
William Pitcock 071f78733a switch to pleroma/http_signatures library 2019-05-14 20:03:13 +00:00
kaniini dfd031c26a Merge branch 'fix/pleroma-config-get-when-value-is-false' into 'develop'
Fix Pleroma.Config.get!/1 raising an error when value is false

See merge request pleroma/pleroma!1148
2019-05-14 14:58:45 +00:00
Maksim 52297920e7 Refactoring oauth response. 2019-05-14 14:49:45 +00:00
Egor Kislitsyn 5e2b491276 Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-05-14 18:15:56 +07:00
Aaron Tinio a18b2c0b12 Fix Pleroma.Config.get!/1 raising an error when value is false 2019-05-14 06:40:59 +08:00
lambda b14a314ce7 Merge branch 'feature/federator-behaviours' into 'develop'
federator modularization (outgoing)

See merge request pleroma/pleroma!1140
2019-05-13 18:58:04 +00: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
rinpatch 15cda998f3 Add a test to ensure create_or_bump_for does not normalize objects before checking the activity type 2019-05-13 10:32:04 +03:00
William Pitcock 582bd9d170 tests: fix AP test failures 2019-05-12 14:40:57 +00:00
William Pitcock d823eb921b tests: fix salmon tests 2019-05-12 14:35:38 +00:00
William Pitcock 2b847d4add tests: chase federator publish_single_foo removals 2019-05-12 05:04:24 +00:00
kaniini 131f883207 Merge branch 'fix/ostatus-activity-representer-depends-on-emebeded-objects' into 'develop'
Fix get_in_reply_to in OStatus' activity representer depending on embedded objects

See merge request pleroma/pleroma!1129
2019-05-11 16:52:26 +00:00
Sachin Joshi f01f995816 make url uniform in admin api 2019-05-11 14:46:00 +05:45
Francis Dinh 2a54e8c1f5 Use "repeated" instead of "retweeted" for repeated statuses in Twitter API
This makes it consistent with the language used in Pleroma FE (at least
in English).

Resolves https://git.pleroma.social/pleroma/pleroma-fe/issues/533
2019-05-09 19:58:34 -04:00
rinpatch e4523c3010 Fix get_in_reply_to in OStatus' activity representer depending on embedded objects 2019-05-09 22:27:00 +03:00
lain a33bec7d58 Conversations: Import order, import as read. 2019-05-09 16:39:28 +02:00
lain a4598b5e8b Visibility: Make it more resilient. 2019-05-08 18:08:50 +02:00
lain fcf2f38d20 Conversations: Add a function to 'import' old DMs. 2019-05-08 17:37:00 +02:00
Alexander Strizhakov bfeb33e951 Merge develop
Merge conflict in lib/pleroma/activity.ex
2019-05-08 14:34:36 +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 f841eb7cdb Preload bookmarks wherever the object is preloaded 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
Egor Kislitsyn 1557b99beb Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-05-07 16:51:11 +07:00
Maksim 1040caf096 fix format
Modified-by: Maksim Pechnikov <parallel588@gmail.com>
2019-05-06 17:51:03 +00:00
lambda aacac9da0b Merge branch 'feature/bbs' into 'develop'
BBS / SSH

See merge request pleroma/pleroma!997
2019-05-06 17:17:03 +00:00
Alexander Strizhakov ce6ca0fefe Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into feature/845-improve-status-deletion 2019-05-06 16:45:22 +00:00
lain eb0fb73ddb BBS: Credo fixes. 2019-05-04 15:47:50 +02:00
lain c58fd4c038 BBS: Fix tests. 2019-05-04 15:36:48 +02:00
lain 4c76f49e60 BBS: small fixes. 2019-05-04 15:06:18 +02:00
lain 6ad8ddfd29 Merge remote-tracking branch 'origin/develop' into feature/bbs 2019-05-04 15:00:45 +02:00
Haelwenn (lanodan) Monnier b5ad1715b2
MastoAPI: profile update with emoji_map 2019-05-03 16:41:23 +02:00
Haelwenn (lanodan) Monnier 2f76a40d02
formatter.ex: Add get_emoji_map/1 2019-05-03 16:27:50 +02:00
Haelwenn (lanodan) Monnier d70af32127
Pleroma.User: remove emojify on parse_bio 2019-05-03 16:27:50 +02:00
Haelwenn (lanodan) Monnier 85b5c60694
Pleroma.Formatter: width/height to class=emoji 2019-05-03 16:25:58 +02:00
lain 81d1aa424d Streamer: Stream out Conversations/Participations. 2019-05-03 13:39:14 +02:00
lambda 497d34b825 Merge branch 'iss-849' into 'develop'
Parse access_token from body parameters and URL parameters

See merge request pleroma/pleroma!1103
2019-05-02 14:17:17 +00:00
AkiraFukushima a53a6c9d64 Add oauth plug tests for url and body parameters 2019-05-02 22:25:21 +09:00
Roman Chvanikov 8af55728e4 Fix tests 2019-05-01 19:03:55 +02:00
lain 45f790becc Merge remote-tracking branch 'origin/develop' into conversations_three 2019-05-01 18:40:41 +02:00
Maksim c854bff8f5 Refactored Pleroma.Web.Auth.Authenticator 2019-05-01 13:28:04 +00:00
lambda 0bcdaf378e Merge branch 'bugfix/web-notification-special-char' into 'develop'
fix the web push notification with special char for status created

See merge request pleroma/pleroma!1092
2019-05-01 10:45:32 +00:00
Alex S f11e7037c2 test fixes 2019-05-01 16:09:53 +07:00
Sachin Joshi cd6da3606b Merge branch 'develop' into bugfix/web-notification-special-char 2019-05-01 00:21:30 +05:45
lain b0951a8849 WebPush: Use Object.normalize, rewrite tests so they test reality. 2019-04-29 18:15:30 +02: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
kaniini 292c69481b Merge branch 'regression/rights-only-for-admin' into 'develop'
Fix `rights` in TwitterAPI's user entity being present only for Admins/Moderators

See merge request pleroma/pleroma!1102
2019-04-28 23:05:14 +00:00
rinpatch 61ca2f7a4e Fix `rights` in TwitterAPI's user entity being present only for
Admins/Moderators

In !1093 I reused `maybe_with_role` for `rights` object, however I
missed that `maybe_with_role` is called only for admins/moderators.
2019-04-28 19:42:43 +03: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
kaniini 002ea343f8 Merge branch 'feature/bbcode' into 'develop'
BBCode support (backend)

See merge request pleroma/pleroma!1097
2019-04-27 07:44:24 +00:00
William Pitcock ef52aa0e66 tests: fix up for changed bbcode library output and verify html is properly escaped 2019-04-26 22:45:45 +00:00
William Pitcock 501af917b5 add support for bbcode 2019-04-26 22:35:02 +00: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
kaniini 48f68fd133 Merge branch 'feature/mastoapi-new-config' into 'develop'
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

See merge request pleroma/pleroma!1093
2019-04-26 02:41:35 +00:00
Mark Felder 24c3e2db2c Add mediaproxy whitelist capability 2019-04-25 18:11:47 -05:00
rinpatch dfc8425659 Move settings to Source subentity 2019-04-25 10:31:14 +03:00
Alex S 85953c0836 fixes for tests 2019-04-25 13:46:40 +07:00
Egor Kislitsyn c157e27a00 Merge branch 'develop' into feature/disable-account 2019-04-25 13:41:10 +07:00
Alex S 73d01857e3 bookmarks in separate table 2019-04-25 13:38:24 +07:00
William Pitcock 0fd0ffcd76 activitypub: transmogrifier: send reject follow if following does not succeed 2019-04-25 00:48:45 +00: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
Sachin Joshi 963d5774af fix the status notification with special char 2019-04-24 07:06:17 +05:45
kaniini 030a7876b4 Merge branch 'security/fix-html-class-scrubbing' into 'develop'
html: lock down allowed class attributes to only those related to microformats

See merge request pleroma/pleroma!1090
2019-04-23 23:07:56 +00:00
William Pitcock f5535e5743 html: lock down allowed class attributes to only those related to microformats 2019-04-23 23:03:45 +00: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
rinpatch f60d072bbb Add `pleroma.in_reply_to_account_acct` to MastoAPI status entity 2019-04-22 11:54:27 +03:00
Egor b9cdf6d3b9 Use `User.get_cached*` everywhere 2019-04-22 07:20:43 +00:00
Alexander Strizhakov 88f0be9693 Feature/826 healthcheck endpoint 2019-04-22 07:19:53 +00:00
Egor Kislitsyn e8c2f9a73a Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-04-22 13:08:30 +07: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 2662bea4e0 Add accounts and last_status to conversation read response 2019-04-21 20:26:13 +07:00
Ivan Tashkinov 9256d2d4b4 [#923] Refactored OAuthController#authorize definitions, added test. 2019-04-21 10:51:32 +03:00