Commit Graph

5763 Commits

Author SHA1 Message Date
Haelwenn (lanodan) Monnier bf0e41f0da
Transmogrifier.set_sensitive/1: Keep sensitive set to true 2020-05-04 23:36:00 +02:00
Egor Kislitsyn e55fd530bc
Render better errors for ENUM validation 2020-05-04 22:33:34 +04:00
Egor Kislitsyn f070b5569c
Add a config option to enable strict validation 2020-05-04 22:33:05 +04:00
Egor Kislitsyn 4b9ab67aa8
Ignore unexpected ENUM values in query string 2020-05-04 21:46:25 +04:00
lain c23cb8d37a Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-04 19:24:04 +02:00
minibikini bfbff7d826 Apply suggestion to lib/pleroma/web/api_spec/cast_and_validate.ex 2020-05-04 16:38:23 +00:00
Egor Kislitsyn d08c63500b
Ignore unexpected query params 2020-05-04 20:16:44 +04:00
lain 3559dd1085 Transmogrifier: Rely on LikeValidator. 2020-05-04 17:18:38 +02:00
lain 0f9bed022f LikeValidator: Fix up context. 2020-05-04 17:18:17 +02:00
lain e03c301ebe LikeValidator: Fix up missing recipients. 2020-05-04 17:08:31 +02:00
lain 13ab8defc0 Pipeline: Move transctioning to common pipeline. 2020-05-04 14:34:19 +02:00
lain ec24c70db8 ActivityPub: Don't fetch `Application` follower counts. 2020-05-04 14:22:54 +02:00
lain b04328c3de ChatController: Add mark_as_read 2020-05-04 13:10:36 +02:00
lain 30590cf46b CommonAPI: Refactor for readability 2020-05-04 12:53:40 +02:00
lain 57e6f2757a ChatOperation: Make simple schema into inline schema 2020-05-04 12:47:23 +02:00
lain dcf535fe77 Credo fixes. 2020-05-04 11:32:11 +02:00
lain 651935f137 Schemas: Refactor to our naming scheme. 2020-05-04 11:08:00 +02:00
lain c40afe5ba0 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-04 10:43:20 +02:00
Maksim Pechnikov fe7a0d660e Merge branch 'develop' into issue/1276-2 2020-05-04 06:08:49 +03:00
lain 9249742f13 Types.Recipients: Simplify reducer. 2020-05-03 15:28:24 +02:00
lain a35b76431c Credo fixes. 2020-05-03 14:58:24 +02:00
lain a7966f2080 Webfinger: Request account info with the acct scheme 2020-05-03 13:48:01 +02:00
lain 1974d0cc42 DeleteValidator: The deleted activity id is an object id 2020-05-03 13:02:57 +02:00
lain 6fb96f64c1 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/delete-validator 2020-05-03 12:55:29 +02:00
lain 4dfc617cdf Transmogrifier: Don't fetch actor that's guaranteed to be there. 2020-05-03 12:51:28 +02:00
Lain Soykaf f20a1a27ef DeleteValidator: Improve code readability 2020-05-03 12:19:01 +02:00
Mark Felder 370e313e2d Only update follower/following stats for actor types of users and bots. 2020-05-02 13:28:10 -05:00
rinpatch 3126f8a334 Merge branch 'feature/1710-consolidate-instance-info' into 'develop'
Feature/1710 consolidate instance info

Closes #1710

See merge request pleroma/pleroma!2430
2020-05-02 16:44:55 +00:00
eugenijm 66a8e1312d Mastodon API: do not create a following relationship if the corresponding follow request doesn't exist when calling `POST /api/v1/follow_requests/:id/authorize` 2020-05-02 19:05:13 +03:00
rinpatch e55876409b Deactivate local users on deletion instead of deleting the record
Prevents the possibility of re-registration, which allowed to read
DMs of the deleted account.

Also includes a migration that tries to find any already deleted
accounts and insert skeletons for them.

Closes pleroma/pleroma#1687
2020-05-02 19:05:13 +03:00
Ivan Tashkinov 2d07ed7747 [#1732] Made AP C2S :followers and :following endpoints serve on no auth
(as for related :api pipeline endpoints).
2020-05-02 18:28:04 +03:00
rinpatch 9e3ec58280 Merge branch 'follow-request-notifications' into 'develop'
Follow request notifications enforcement

See merge request pleroma/pleroma!2451
2020-05-02 12:24:49 +00:00
Haelwenn 0dfb5ad0ad Merge branch 'bugfix/static-fe.css' into 'develop'
static-fe.css: Restore and move to /priv/static/static-fe

See merge request pleroma/pleroma!2458
2020-05-02 06:37:33 +00:00
Haelwenn (lanodan) Monnier c6ddfa8f95
static-fe.css: Restore and move to /priv/static/static-fe 2020-05-02 08:28:42 +02:00
Ivan Tashkinov cf5ca7e45b Merge remote-tracking branch 'remotes/origin/develop' into follow-request-notifications 2020-05-02 07:39:19 +03:00
rinpatch c18ef452b0 OpenAPI: Add `follow_request` to notification types
Closes #1731
2020-05-01 23:14:20 +03:00
rinpatch 85105f7aae OpenAPI: Remove max pagination limit from the spec
In an ideal world clients wouldn't try to request more than the max
hardcoded limit, but SubwayTooter does.
2020-05-01 21:33:34 +03:00
lain 3453e54e6b MappedSignatureToIdentityPlug: Fix. 2020-05-01 15:58:47 +02:00
lain a912f72a36 Signature: Handle non-ap ids in key ids.
Mastodon and Gab sometimes send the format `acct:name@server`.
2020-05-01 15:54:38 +02:00
lain 3370bb0e46 Merge branch 'openapi/notifications' into 'develop'
Add OpenAPI spec for NotificationController

See merge request pleroma/pleroma!2437
2020-05-01 13:09:36 +00:00
lain 607e06c245 Merge branch 'openapi/reports' into 'develop'
Add OpenAPI spec for ReportController

See merge request pleroma/pleroma!2434
2020-05-01 12:48:56 +00:00
lain 44fbd09709 Merge branch 'issue/1577' into 'develop'
[#1577] fix mediaType of object

See merge request pleroma/pleroma!2372
2020-05-01 12:38:46 +00:00
lain 1ead5f49b8 AdminApiController: Use common pipeline for user deletion. 2020-05-01 14:30:39 +02:00
lain ebbd9c7f36 AdminAPIController: Refactor. 2020-05-01 14:22:39 +02:00
lain 2008fa9c7f Merge branch 'fix/captcha' into 'develop'
Fix account registration when captcha is enabled but not provided

Closes #1712

See merge request pleroma/pleroma!2438
2020-05-01 11:47:58 +00:00
lain ab01863abf Merge branch 'feature/delete-validator' of git.pleroma.social:pleroma/pleroma into feature/delete-validator 2020-05-01 13:35:42 +02:00
lain 5f42e6629d DeleteValidator: Only allow deletion of certain types. 2020-05-01 13:34:47 +02:00
Alexander Strizhakov ecf37b46d2
pagination fix for service users filters 2020-05-01 14:31:24 +03:00
Ivan Tashkinov 92efb888c7 Made follow request notifications non-optional (removed config switch). 2020-05-01 09:51:41 +03:00
Maksim Pechnikov a92c713d9c Merge branch 'develop' into issue/1276-2 2020-05-01 06:21:59 +03:00
Lain Soykaf 93f64aba78 Merge branch 'develop' of ssh://git.pleroma.social/pleroma/pleroma into feature/delete-validator 2020-04-30 22:44:31 +02:00
lain 32b8386ede DeleteValidator: Don't federate local deletions of remote objects.
Closes #1497
2020-04-30 21:23:18 +02:00
lain a81342a234 Merge branch 'dismiss-notification-on-follow-request-rejection' into 'develop'
Dismiss the follow request notification on rejection

See merge request pleroma/pleroma!2447
2020-04-30 18:38:52 +00:00
lain 999d639873 ActivityPub: Remove `delete` function.
This is handled by the common pipeline now.
2020-04-30 20:13:47 +02:00
lain 3b443cbc1d User: Use common pipeline to delete user activities 2020-04-30 20:08:25 +02:00
lain 5da08c2b73 SideEffects: Fix comment 2020-04-30 19:53:30 +02:00
lain 500f5ec14e SideEffects: On deletion, reduce the reply count cache 2020-04-30 19:47:13 +02:00
lain 60db58a1c6 Credo fixes. 2020-04-30 18:38:37 +02:00
lain ab60ee1776 SideEffects: On deletion, reduce the User note count. 2020-04-30 18:19:39 +02:00
lain c832d96fc9 SideEffects: Stream out deletes. 2020-04-30 17:58:09 +02:00
lain 4500fdc04c DeleteValidator: Add internal helper field after validation. 2020-04-30 17:53:02 +02:00
eugenijm bef34568f0 Dismiss the follow request notification on rejection 2020-04-30 18:38:19 +03:00
Ivan Tashkinov 2c4844237f Refactoring of :if_func / :unless_func plug options (general availability). Added tests for Pleroma.Web.Plug. 2020-04-30 18:19:51 +03:00
Alexander Strizhakov 4a487e4d0b
fix for auth check 2020-04-30 17:50:57 +03:00
lain 14c6672193 AP C2S: Use common pipelin for deletes. 2020-04-30 16:49:41 +02:00
lain fdd8e7f276 CommonAPI: Use common pipeline for deletions. 2020-04-30 16:15:38 +02:00
lain 417eed4a2b SideEffects: Handle deletions. 2020-04-30 15:57:27 +02:00
lain 1fb383f368 DeleteValidator: Deleting a user is valid. 2020-04-30 15:42:30 +02:00
lain 4dc5302f45 Transmogrifier: Handle incoming deletes for non-user objects. 2020-04-30 15:26:23 +02:00
Alexander Strizhakov 36abeedf9f
error rename 2020-04-30 16:09:22 +03:00
Alexander Strizhakov ddb757f743
emoji api packs changes in routes with docs update 2020-04-30 16:09:18 +03:00
Alexander Strizhakov 342f55fb92
refactor emoji api with fixes 2020-04-30 15:45:52 +03:00
lain db184a8eb4 DeleteValidator: Mastodon sends unaddressed deletes. 2020-04-30 14:37:14 +02:00
Alexander Strizhakov 5839e67eb8
return data only for updated emoji 2020-04-30 15:24:02 +03:00
lain 42ce7c5164 ObjectValidator: Add actor fetcher. 2020-04-30 14:13:08 +02:00
lain 64bb72f98a Typo fix. 2020-04-30 13:57:47 +02:00
lain ad2182bbd2 Apply suggestion to lib/pleroma/web/api_spec/schemas/chat_message_create_request.ex 2020-04-30 11:38:26 +00:00
lain 4c4344b7b1 Merge branch '1364-no-pushes-from-blocked-domains-users' into 'develop'
[#1364] [FIX] Disabled notifications on activities from blocked domains (unless actors are followed)

See merge request pleroma/pleroma!2367
2020-04-30 10:29:46 +00:00
Egor Kislitsyn 9c1adb35de
Merge branch 'develop' into openapi/notifications 2020-04-30 13:52:07 +04:00
Egor Kislitsyn 1898054da4
Merge branch 'develop' into openapi/reports 2020-04-30 13:51:27 +04:00
rinpatch 8cf3a32463 Add exlude_replies to OpenAPI spec for account timelines 2020-04-30 00:49:59 +03:00
lain b68d56c816 Apply suggestion to lib/pleroma/web/api_spec/schemas/chat_message_response.ex 2020-04-29 19:49:13 +00:00
lain 145d35ff70 Apply suggestion to lib/pleroma/web/pleroma_api/controllers/chat_controller.ex 2020-04-29 19:49:03 +00:00
lain 589ce1e96b Apply suggestion to lib/pleroma/web/activity_pub/transmogrifier.ex 2020-04-29 19:47:16 +00:00
lain 89a6c34081 Apply suggestion to lib/pleroma/chat.ex 2020-04-29 18:14:34 +00:00
Egor Kislitsyn 39a78998d0
Change Pleroma.CaptchaTest to be a regular module instead of GenServer 2020-04-29 21:26:07 +04:00
Egor Kislitsyn 7b0c8f0fde
Add tests for account registration with captcha enabled and improve errors 2020-04-29 21:26:07 +04:00
Egor Kislitsyn 2f77842bd3
Fix account registration when captcha is enabled but not provided 2020-04-29 21:26:07 +04:00
lain 503de4b8df ObjectValidator: Add validation for `Delete`s. 2020-04-29 19:09:51 +02:00
lain 78c864cbee LikeValidator: Use Recipients Type. 2020-04-29 19:08:36 +02:00
lain b8056e69e0 Object Validator Types: Add Recipients. 2020-04-29 19:08:08 +02:00
lain 20587aa931 Chat message creation: Check actor. 2020-04-29 14:53:53 +02:00
lain a88734a0a2 Transmogrifier: Fetch missing actors for chatmessages. 2020-04-29 14:25:33 +02:00
lain 53e3063bd0 Transmogrifier: Remove ChatMessageHandling module. 2020-04-29 13:52:23 +02:00
lain e055b8d203 Pipeline: Always run common_pipeline in a transaction for now. 2020-04-29 13:45:50 +02:00
lain 67659afe48 ChatOperation: Refactor. 2020-04-29 13:34:43 +02:00
lain 0c491b904d Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-04-29 13:19:04 +02:00
Egor Kislitsyn 5238ae3dd3
Add OpenAPI spec for NotificationController 2020-04-28 21:27:54 +04:00
Ivan Tashkinov 4c0e53367a [#2349] Post-merge fix. 2020-04-28 20:04:25 +03:00
Ivan Tashkinov 908cf22a6c Merge remote-tracking branch 'remotes/origin/develop' into automatic-authentication-and-instance-publicity-checks
# Conflicts:
#	lib/pleroma/web/mastodon_api/controllers/account_controller.ex
2020-04-28 19:56:20 +03:00
lain dedffd100c Pipeline: Unify, refactor, DRY. 2020-04-28 17:29:54 +02:00
lain abd0928229 CreateChatMessageValidator: Validate object existence 2020-04-28 16:45:28 +02:00
lain 6aa116eca7 Create activity handling: Flip it and reverse it
Both objects and create activities will now go through the common
pipeline and will be validated. Objects are now created as a side
effect of the Create activity, rolling back a transaction if it's
not possible to insert the object.
2020-04-28 16:26:19 +02:00
Egor Kislitsyn 560f2c1979
Add OpenAPI spec for ReportController 2020-04-28 16:50:37 +04:00
lain b5dc59c8fa Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-04-28 14:16:21 +02:00
rinpatch 12bb7fc0dc Merge branch 'openapi/account' into 'develop'
Add OpenAPI specs for AccountController

See merge request pleroma/pleroma!2374
2020-04-28 11:57:16 +00:00
lain f8e56d4271 SideEffects: Use Object.normalize to get the object. 2020-04-28 13:43:58 +02:00
lain 906cf53ab9 Recipient Type: Cast all elements as ObjectIDs. 2020-04-28 13:38:02 +02:00
lain 9994768312 Merge branch 'mongoose-secure' into 'develop'
mongoose auth endpoint worked for deactivated accounts

See merge request pleroma/pleroma!2432
2020-04-28 09:18:59 +00:00
Maksim Pechnikov ea5142b94b convert markdown content to html 2020-04-28 09:32:43 +03:00
fence 5ff20793e7 formating 2020-04-28 01:29:31 +02:00
Egor Kislitsyn dda65f7799
Move single used schemas to operation schema 2020-04-27 22:55:05 +04:00
fence cc1e2e8d0f requested changes to mongoose_im_controller.ex 2020-04-27 19:11:03 +02:00
Egor Kislitsyn 2efc00b3cf
Use `json_response_and_validate_schema/2` in tests to validate OpenAPI schema 2020-04-27 20:46:52 +04:00
fence 5c7cc10917 add tests for deactivated users for mongoose auth 2020-04-27 18:31:00 +02:00
fence a626cb682c secure mongoose auth endpoint 2020-04-27 17:55:33 +02:00
lain 3d040b1a87 Credo fixes. 2020-04-27 17:55:29 +02:00
lain ad82a216ff Chat API: Align more to Pleroma/Mastodon API. 2020-04-27 17:48:34 +02:00
lain 49e673dfea ChatView: Add actor_account_id 2020-04-27 16:08:03 +02:00
lain 3635a9c9c2 InstanceController: Add extensions to `/api/v1/instance` 2020-04-27 14:28:08 +02:00
lain 00e956528b Credo fixes. 2020-04-27 14:02:11 +02:00
lain 15ba3700af Chat Schemas: Inline unimportant Schemas. 2020-04-27 12:45:59 +02:00
Egor Kislitsyn f1ca917bb0
Merge branch 'develop' into openapi/account 2020-04-27 14:33:00 +04:00
lain c86143ed73 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-04-27 12:07:08 +02:00
Alex Gleason 1bd9749a8f
Let blob: pass CSP 2020-04-26 00:29:42 -05:00
Ivan Tashkinov e16437ff19 [#1706] Formatting fix. 2020-04-25 18:42:08 +03:00
Ivan Tashkinov 0d05e1fe39 [#1706] Prevented error on unresolved activity actors for timeline actions. 2020-04-25 18:24:10 +03:00
Ivan Tashkinov b4139cc547 [#2409] Made `GET /api/v1/accounts/:id/favourites` auth-optional, adjusted tests. 2020-04-24 22:25:27 +03:00
rinpatch 8addbd948c Merge branch 'bugfix/announce-race-condition' into 'develop'
Announcements: Prevent race condition.

See merge request pleroma/pleroma!2423
2020-04-24 16:58:24 +00:00
lain c30b3b2dc5 Merge branch 'reply-filtering-refactor' into 'develop'
Reply filtering refactor

See merge request pleroma/pleroma!2424
2020-04-24 16:32:13 +00:00
lain d89cd0a197 Reply Filtering: Refactor. 2020-04-24 18:25:26 +02:00
lain d862c7156a Merge branch 'openapi-improvements' into 'develop'
Support validation for inline OpenAPI schema and automatic tests for examples

Closes #1696

See merge request pleroma/pleroma!2421
2020-04-24 16:10:43 +00:00
Ivan Tashkinov 00e62161f6 [#2409] Tested all auth setup configs in AuthTestControllerTest. Adjusted :skip_plug definitions for some endpoints. 2020-04-24 16:52:38 +03:00
Alexander 6e625a427c
reply filtering 2020-04-24 15:43:49 +03:00
lain cb12585098 Announcements: Prevent race condition. 2020-04-24 14:37:53 +02:00
lain 1df6af2a4c Credo fixes. 2020-04-24 13:59:48 +02:00
lain bbf8554c97 ActivitPub: Remove `like` function.
We don't need another way to build likes.
2020-04-24 13:48:13 +02:00
Egor Kislitsyn f362836742
Support validation for inline OpenAPI schema and automatic tests for examples 2020-04-24 15:16:15 +04:00
Ivan Tashkinov 89f38d94c7 [#2409] Fixed before-action callback results persistence. 2020-04-23 21:47:33 +03:00
lain 1e28d34592 ChatMessage: Correctly ingest emoji tags. 2020-04-23 16:19:49 +02:00
lain ec7335535d Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-04-23 15:47:08 +02:00
rinpatch 1b5f8d19ee Merge branch 'bugfix/repeating-announce' into 'develop'
CommonAPI: Don't make repeating announces possible

See merge request pleroma/pleroma!2418
2020-04-23 12:40:38 +00:00
lain 7d38197894 CommonAPI: Don't make repeating announces possible 2020-04-23 13:33:30 +02:00
rinpatch 25eec6d72d Merge branch 'bugfix/null-scheduled-at' into 'develop'
StatusController: Ignore nil scheduled_at parameters.

Closes #1699

See merge request pleroma/pleroma!2412
2020-04-23 11:22:30 +00:00
lain 850377a7b8 Merge branch 'bugfix/1629-fav-race-condition' into 'develop'
SideEffects: Run in transaction.

Closes #1629

See merge request pleroma/pleroma!2417
2020-04-22 19:26:32 +00:00
lain 1bcbdc7a9f SideEffects: Use less cryptic syntax. 2020-04-22 21:21:21 +02:00
Haelwenn af27e4dffd Merge branch 'bugfix/1670-user-count' into 'develop'
Stats: Ignore internal users for user count.

Closes #1670

See merge request pleroma/pleroma!2414
2020-04-22 17:37:09 +00:00
lain f5bda09de6 Stats: Use `invisible` property for filtering. 2020-04-22 19:02:22 +02:00
Ivan Tashkinov e7fb593d13 Merge remote-tracking branch 'remotes/origin/develop' into 1364-no-pushes-from-blocked-domains-users
# Conflicts:
#	CHANGELOG.md
2020-04-22 20:00:51 +03:00
lain e62173dfc8 SideEffects: Run in transaction.
This fixes race conditions.
2020-04-22 18:40:53 +02:00