Commit graph

648 commits

Author SHA1 Message Date
Ivan Tashkinov 3c78e5f327 Preloading of follow relations for timeline/statuses rendering (performance improvement). Refactoring. 2020-03-23 12:01:11 +03:00
Ivan Tashkinov c2e415143b WIP: preloading of user relations for timeline/statuses rendering (performance improvement). 2020-03-22 21:51:44 +03:00
rinpatch 981e015f1b Mastodon API Account view: Remove an outdated hack
The hack with caching the follow relationship was introduced
when we still were storing it inside the follow activity, resulting in
slow queries. Now we store follow state in `FollowRelationship` table,
so this is no longer necessary.
2020-03-22 17:10:37 +03:00
Alexander Strizhakov fe15f0ba15
restrict_unauthenticated setting 2020-03-20 16:36:20 +03:00
eugenijm 13cce9c0de Admin API: PATCH /api/pleroma/admin/users/:nickname/credentials, GET /api/pleroma/admin/users/:nickname/credentials. 2020-03-16 20:42:37 +03:00
Ivan Tashkinov 0e07c5ef57 Merge remote-tracking branch 'remotes/origin/develop' into 1364-notifications-sending-control 2020-03-16 17:58:42 +03:00
Haelwenn (lanodan) Monnier 8176ca9e40 static_fe: Sanitize HTML in users 2020-03-15 20:44:04 +01:00
Ivan Tashkinov 7c8003c3fc [#1364] Improved control over generation / sending of notifications. Fixed blocking / muting users notifications issue. Added tests. 2020-03-15 21:00:12 +03:00
rinpatch e87a32bcd7 rip out fetch_initial_posts
Every time someone tries to use it, it goes mad and tries to scrape the
entire fediverse for no visible reason, it's better to just remove it
than continue shipping it in it's current state.

idea acked by lain and feld on irc

Closes #1595 #1422
2020-03-15 15:59:17 +03:00
Egor Kislitsyn 4a45b96a91
Merge branch 'develop' into fix/signup-without-email 2020-03-02 15:35:49 +04:00
Haelwenn 764a50f8a6 Merge branch 'feature/1482-activity_pub_transactions' into 'develop'
ActivityPub actions & side-effects in transaction

Closes #1482

See merge request pleroma/pleroma!2089
2020-03-02 07:58:01 +00:00
Haelwenn (lanodan) Monnier 6da6540036
Bump copyright years of files changed after 2020-01-07
Done via the following command:
git diff fcd5dd259a --stat --name-only | xargs sed -i '/Pleroma Authors/c# Copyright © 2017-2020 Pleroma Authors <https:\/\/pleroma.social\/>'
2020-03-02 06:08:45 +01:00
Alexander Strizhakov 32d1e04817
ActivityPub actions & side-effects in transaction 2020-03-01 12:01:39 +03:00
Egor Kislitsyn f446744a6a
Allow account registration without an email 2020-02-26 20:13:53 +04:00
Egor Kislitsyn 22018adae6
Fix Dialyzer warnings 2020-02-25 18:34:56 +04:00
Egor Kislitsyn bc2e98b200
Add User.get_follow_state/2 2020-02-07 16:17:34 +04:00
Egor Kislitsyn 8c71f7e11a Add support for cancellation of a follow request 2020-02-05 20:22:15 +04:00
Maksim Pechnikov 02c3dd2e3d update ecto 2020-01-28 10:43:47 +03:00
Maksim Pechnikov 108a39c876 updated error messages for authentication process 2020-01-17 15:01:37 +03:00
Ivan Tashkinov 39ce894a07 Merge remote-tracking branch 'remotes/origin/develop' into 1478-oauth-admin-scopes-tweaks
# Conflicts:
#	lib/pleroma/user.ex
2020-01-10 16:18:32 +03:00
lain 05ca420c09 Merge branch 'issue/1490' into 'develop'
[#1490] fixed create  service user   (relay, internal.fetch)

See merge request pleroma/pleroma!2092
2020-01-10 13:14:20 +00:00
Ivan Tashkinov 6c94b7498b [#1478] OAuth admin tweaks: enforced OAuth admin scopes usage by default, migrated existing OAuth records. Adjusted tests. 2020-01-10 10:52:21 +03:00
Maksim Pechnikov 70410dfafd fix create service actor 2020-01-08 16:40:49 +03:00
Ivan Tashkinov 7973cbdb9f OAuthScopesPlug: disallowed nil token (unless with :fallback option). WIP: controller tests modification: OAuth scopes usage. 2019-12-15 22:32:42 +03:00
Sadposter 457821adb0 Apply suggestion to lib/pleroma/user.ex 2019-12-10 18:49:41 +00:00
Sadposter 8cfaab8f04 Merge branch 'develop' into 'domain-block-precedence'
# Conflicts:
#   lib/pleroma/user.ex
2019-12-10 16:54:25 +00:00
Sadposter 19d228cc58 modify SQL to include followed-but-domain-blocked activities 2019-12-10 16:40:12 +00:00
lain 1ae976ac51 Merge branch 'develop' into '1427-oauth-admin-scopes'
# Conflicts:
#   CHANGELOG.md
2019-12-10 13:34:54 +00:00
Hakaba Hitoyo 701815e64c [ActivityPub] Configurable ActivityPub actor type 2019-12-10 13:19:26 +00:00
Ivan Tashkinov 835ac2157c Merge remote-tracking branch 'remotes/upstream/develop' into 1427-oauth-admin-scopes
# Conflicts:
#	CHANGELOG.md
2019-12-10 08:55:14 +03:00
Maksim Pechnikov 95e6a2acd9 Merge branch 'develop' into issue/1342 2019-12-08 21:25:26 +03:00
Ivan Tashkinov 1770602747 [#1427] Extra check that admin OAuth scope is used by admin. Adjusted tests. 2019-12-07 17:49:53 +03:00
Ivan Tashkinov 13926537b6 Merge remote-tracking branch 'remotes/origin/develop' into 1427-oauth-admin-scopes 2019-12-06 00:26:31 +03:00
Ivan Tashkinov af42c00cff [#1427] Reworked admin scopes support.
Requalified users.is_admin flag as legacy accessor to admin actions in case token lacks admin scope(s).
2019-12-06 00:25:44 +03:00
Maksim Pechnikov 3fe7a1fd35 Merge branch 'develop' into issue/1342 2019-12-05 15:46:27 +03:00
Ivan Tashkinov d3bce89edd [#1335] Merge issue fix. 2019-12-04 19:41:14 +03:00
Ivan Tashkinov 30caf3e51e Merge remote-tracking branch 'remotes/upstream/develop' into 1335-user-api-id-fields-relations
# Conflicts:
#	lib/pleroma/user.ex
2019-12-04 18:56:31 +03:00
lain 7722e5a67a Merge branch 'feature/move-activity' into 'develop'
Support "Move" activity

Closes #1316

See merge request pleroma/pleroma!1883
2019-12-02 16:26:19 +00:00
rinpatch 0d24ab04c5 Merge branch 'remove-info-from-users' into 'develop'
Removed users.info field

See merge request pleroma/pleroma!2006
2019-11-30 10:42:51 +00:00
Ivan Tashkinov 52cc7de82c Merge remote-tracking branch 'remotes/upstream/develop' into 1335-user-api-id-fields-relations
# Conflicts:
#	mix.lock
2019-11-29 10:17:59 +03:00
Maksim Pechnikov a52da55eb9 added User.NotificationSetting struct 2019-11-28 22:08:30 +03:00
Sadposter c7cc80a9ee obligatory format commit 2019-11-28 10:40:50 +00:00
Sadposter fa97eddf8a make follows take precedence over domain blocks 2019-11-28 10:38:38 +00:00
Egor Kislitsyn f595cfe623
Remove User.user_info/2 2019-11-27 19:43:47 +07:00
Ivan Tashkinov c8d3c3bfec Merge remote-tracking branch 'remotes/upstream/develop' into 1335-user-api-id-fields-relations
# Conflicts:
#	lib/pleroma/web/activity_pub/activity_pub.ex
2019-11-26 10:42:36 +03:00
Ivan Tashkinov 1636cc5b7e Removed users.info and remaining usages. 2019-11-23 14:06:19 +03:00
lain bd62946020 Merge branch 'feature/confirm-user-acc-resend-confirmation' into 'develop'
AdminAPI: Confirm user account, resend confirmation email

See merge request pleroma/pleroma!1994
2019-11-22 15:39:19 +00:00
Maxim Filippov b64c7b35d4 Swap map with each 2019-11-22 09:11:36 +09:00
Ivan Tashkinov cad9b325e5 Merge remote-tracking branch 'remotes/upstream/develop' into 1335-user-api-id-fields-relations
# Conflicts:
#	lib/pleroma/user/search.ex
#	test/user_test.exs
2019-11-21 16:47:52 +03:00
lain 8feb5dcb42 Merge branch 'issue/1348' into 'develop'
[#1348] excluded invisible actors from gets  /api/v1/accounts/:id

See merge request pleroma/pleroma!1937
2019-11-21 13:13:14 +00:00
Egor Kislitsyn d38ab4bb89
Fix user.following_count 2019-11-21 16:31:13 +07:00
Ivan Tashkinov de892d2fe1 [#1335] Reorganized users.subscribers as UserRelationship. Added tests for UserRelationship-related functionality. 2019-11-20 15:46:11 +03:00
Ivan Tashkinov 555edd01ab [#1335] User AP ID relations fetching performance optimizations. 2019-11-20 12:19:07 +03:00
Ivan Tashkinov ba5cc30165 [#1335] Implemented notification mutes and reblog mutes as UserRelationships. User to UserRelationship relations and functions refactoring. 2019-11-19 23:22:10 +03:00
Maxim Filippov 46eb160135 AdminAPI: Confirm user account, resend confirmation email 2019-11-19 20:14:02 +09:00
Ivan Tashkinov aad6576130 [#1335] Refactored UserMute and UserBlock into UserRelationship, introduced EctoEnum. 2019-11-18 20:38:56 +03:00
Ivan Tashkinov 01d9c093c3 Merge remote-tracking branch 'remotes/upstream/develop' into 1335-user-api-id-fields-relations 2019-11-15 21:40:14 +03:00
Ivan Tashkinov c31ddce51e [#1335] Reorganized users.mutes as relation to UserMute entity. 2019-11-15 21:38:54 +03:00
Egor Kislitsyn 3c0abfca53
Merge remote-tracking branch 'upstream/develop' into feature/move-activity 2019-11-14 16:39:45 +07:00
Egor Kislitsyn e6d7e27bd6
Add allow_following_move setting to User 2019-11-12 18:45:28 +07:00
lain 8521553ad9 User: Don't let deactivated users authenticate. 2019-11-11 12:37:38 +01:00
Ivan Tashkinov 5cf2c7422b [#1335] Applied code review suggestions. 2019-11-11 14:16:57 +03:00
Ivan Tashkinov 3db988250b [#1335] User: refactored :blocks field into :blocked_users relation.
Introduced UserBlock.
2019-11-10 16:30:21 +03:00
Maksim Pechnikov 4b7c11e3f9 excluded invisible actors from gets /api/v1/accounts/:id 2019-11-04 20:44:24 +03:00
lain 0c31258616 User: Don't pull remote users follower count immediately after deactivating.
The other instance doesn't necessarily know that anything changed yet, and it
will be fixed up at the next user pull anyway.

Closes #1369
2019-11-04 14:36:54 +01:00
Egor Kislitsyn 4270861085
Merge branch 'develop' into feature/move-activity 2019-10-28 15:10:47 +07:00
lain 2480200759 Merge branch 'refactor/following-relationships' into 'develop'
Move following relationships to a separate table

Closes #1233

See merge request pleroma/pleroma!1814
2019-10-28 07:27:45 +00:00
eugenijm 0580654485 Mark the conversations with the blocked user as read and update the blocking user's unread_conversation_count.
Since the conversations with the blocked user are invisible, they are excluded
from the blocking user's `unread_conversation_count`.
2019-10-26 02:29:18 +03:00
Egor Kislitsyn b777083f3f
Add also_known_as field to Pleroma.User 2019-10-25 19:14:18 +07:00
Egor Kislitsyn dbee53c2df
Remove unused Pleroma.User.info_fields/0 2019-10-25 16:48:01 +07:00
Egor Kislitsyn 4c1dd55c48 Merge remote-tracking branch 'upstream/develop' into refactor/following-relationships 2019-10-24 14:55:36 +07:00
Ivan Tashkinov 11cd994425 [#1304] Fixed null::jsonb handling in User.Info migration. 2019-10-23 17:15:48 +03:00
Ivan Tashkinov 7c7f90bc4f [#1304] Merged develop, handled User.Info.invisible. 2019-10-21 11:58:22 +03:00
Ivan Tashkinov a11a7176d5 Merge remote-tracking branch 'remotes/upstream/develop' into 1304-user-info-deprecation
# Conflicts:
#	lib/pleroma/user/info.ex
#	lib/pleroma/web/activity_pub/activity_pub.ex
#	lib/pleroma/web/activity_pub/transmogrifier.ex
2019-10-21 11:05:09 +03:00
Egor Kislitsyn 4ea1a61b00
Merge branch 'develop' into refactor/following-relationships 2019-10-21 14:19:15 +07:00
Ivan Tashkinov ee04fbc35a [#1304]. Post-merge fixes. Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into 1304-user-info-deprecation
# Conflicts:
#	CHANGELOG.md
#	lib/pleroma/notification.ex
#	lib/pleroma/user.ex
#	lib/pleroma/user/info.ex
#	lib/pleroma/web/admin_api/admin_api_controller.ex
#	lib/pleroma/web/ostatus/handlers/follow_handler.ex
#	lib/pleroma/web/ostatus/ostatus.ex
#	lib/pleroma/web/salmon/salmon.ex
#	lib/pleroma/web/websub/websub.ex
#	test/web/admin_api/admin_api_controller_test.exs
#	test/web/federator_test.exs
#	test/web/mastodon_api/controllers/conversation_controller_test.exs
#	test/web/ostatus/ostatus_controller_test.exs
#	test/web/ostatus/ostatus_test.exs
#	test/web/salmon/salmon_test.exs
#	test/web/websub/websub_test.exs
2019-10-20 22:29:56 +03:00
Ivan Tashkinov c6fdfbc4f1 Merge remote-tracking branch 'remotes/upstream/develop' into 1304-user-info-deprecation
# Conflicts:
#	CHANGELOG.md
#	lib/pleroma/notification.ex
#	lib/pleroma/user.ex
#	lib/pleroma/user/info.ex
#	lib/pleroma/web/activity_pub/activity_pub.ex
#	lib/pleroma/web/admin_api/admin_api_controller.ex
#	lib/pleroma/web/ostatus/handlers/follow_handler.ex
#	lib/pleroma/web/ostatus/ostatus.ex
#	lib/pleroma/web/salmon/salmon.ex
#	lib/pleroma/web/websub/websub.ex
#	test/web/admin_api/admin_api_controller_test.exs
#	test/web/federator_test.exs
#	test/web/mastodon_api/controllers/conversation_controller_test.exs
#	test/web/ostatus/ostatus_controller_test.exs
#	test/web/ostatus/ostatus_test.exs
#	test/web/salmon/salmon_test.exs
#	test/web/websub/websub_test.exs
2019-10-20 20:43:18 +03:00
Ivan Tashkinov b4cbf0568b [#1304] Analysis issue fix. 2019-10-20 13:58:27 +03:00
Ivan Tashkinov e8843974cb [#1304] Moved remaining fields from User.Info to User.
Misc. fixes / improvements.
2019-10-20 13:42:42 +03:00
Ariadne Conill 95871cb462 user: implement User.invisible?/1 2019-10-19 23:21:37 +00:00
Ariadne Conill d379b48769 kill almost all of the OStatus module 2019-10-18 14:50:09 +00:00
Ariadne Conill 4f82e42e4e websub: remove entirely 2019-10-18 14:50:09 +00:00
rinpatch 39e996528c Fix a migration wiping user info of users that don't have any mutes
And introduce safe_jsonb_set
2019-10-18 15:22:07 +03:00
Ivan Tashkinov 10ff01acd9 [#1304] Moved all non-mutes / non-blocks fields from User.Info to User. WIP. 2019-10-16 21:59:21 +03:00
feld 21f0757b0d Merge branch 'feature/multiple-users-activation-permissions' into 'develop'
Ability to toggle activation status, permission group & delete multiple users

Closes admin-fe#39

See merge request pleroma/pleroma!1825
2019-10-16 12:14:47 +00:00
Maxim Filippov da0e4879bc DELETE /api/pleroma/admin/users now accepts nicknames array 2019-10-15 17:33:29 +02:00
Egor Kislitsyn 059005ff82
Replace user.following with Pleroma.FollowingRelationship 2019-10-11 02:35:32 +07:00
lain c54ae662dc Merge remote-tracking branch 'origin/develop' into benchmark-finishing 2019-10-10 14:40:59 +02:00
Maxim Filippov ad42837244 Ability to toggle activation status and permission group for a group of users 2019-10-09 17:03:54 +03:00
rinpatch fefbd31c6e Move local keys out of user.info 2019-10-06 16:56:36 +03:00
eugenijm 8249924485 Mastodon API: Add pleroma.unread_conversation_count to the Account entity 2019-10-05 20:12:00 +03:00
kaniini e07e9cb75e Revert "Merge branch 'user-info-unread-direct-conversation' into 'develop'"
This reverts merge request !1737
2019-10-05 10:00:05 +00:00
kaniini 5c04e81724 Merge branch 'user-info-unread-direct-conversation' into 'develop'
Add the `unread_conversation_count` field to the user info

See merge request pleroma/pleroma!1737
2019-10-04 17:33:18 +00:00
rinpatch 8217292085 Fix get_cached_by_nickname_or_id not allowing to get local users by
nickname

Closes #1293
2019-10-04 14:44:09 +03:00
eugenijm 06d9df79c5 Mastodon API: Add pleroma.unread_conversation_count to the Account entity 2019-10-04 00:53:23 +03:00
Maksim Pechnikov 3d722dc200 Merge branch 'develop' into tests/mastodon_api_controller.ex 2019-09-26 16:16:30 +03: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
kaniini 3ff57f1fd3 Merge branch 'hex-flake-id' into 'develop'
Replace `Pleroma.FlakeId` with `flake_id` hex package

See merge request pleroma/pleroma!1692
2019-09-26 02:51:54 +00:00
Egor Kislitsyn b5dfe83433 Replace Pleroma.FlakeId with flake_id hex package 2019-09-25 17:14:31 +07:00
Egor Kislitsyn 1bea67cb5e Cleanup Pleroma.User 2019-09-24 19:50:09 +07:00