Commit graph

647 commits

Author SHA1 Message Date
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
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
Egor Kislitsyn
209395c7e6 Add User.change_info/2 and User.update_info/2 2019-09-24 19:50:07 +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
Maksim Pechnikov
179fa32dd5 Merge branch 'develop' into tests/mastodon_api_controller.ex 2019-09-23 21:41:57 +03:00
Maxim Filippov
6f25668215 Admin API: Add ability to force user's password reset 2019-09-22 16:08:07 +03:00
rinpatch
95a4a19417 Merge branch 'support/tests' into 'develop'
add tests for activity_pub/utils.ex

See merge request pleroma/pleroma!1627
2019-09-17 14:47:26 +00:00
kaniini
17142a3720 Merge branch 'feature/delivery-tracking' into 'develop'
Track signed fetches of objects and use them for delete federation

See merge request pleroma/pleroma!1661
2019-09-16 07:39:58 +00:00
Maksim Pechnikov
8751809e1e Merge branch 'develop' into support/tests 2019-09-15 14:22:15 +03:00
Ivan Tashkinov
610236d6be [#1149] Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
# Conflicts:
#	docs/config.md
2019-09-15 10:12:24 +03:00
rinpatch
62bbba80f3 Merge branch 'fix/truncate-remote-user-fields' into 'develop'
Truncate remote user fields

See merge request pleroma/pleroma!1619
2019-09-14 16:39:42 +00:00
Ivan Tashkinov
6bcedb693c [#1149] Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
# Conflicts:
#	docs/config.md
#	mix.lock
2019-09-14 16:11:44 +03:00
rinpatch
ba70a8cae6 Merge branch 'develop' into feature/delivery-tracking 2019-09-13 19:42:53 +03:00
lain
53a3ad6043 Merge branch 'cleanup-activity' into 'develop'
Cleanup `Pleroma.Activity` and add more tests

See merge request pleroma/pleroma!1623
2019-09-13 14:48:00 +00:00
rinpatch
ce23529d91 Use delivery info when federating deletes 2019-09-13 11:38:17 +03:00
Egor Kislitsyn
25d8216804 Add email change endpoint 2019-09-13 13:09:35 +07:00
Egor Kislitsyn
39dc9b470c Cleanup Pleroma.Activity and Pleroma.Web.ActivityPub.Utils 2019-09-13 12:44:59 +07:00
rinpatch
769fb778d4 Track object/create activity fetches 2019-09-12 21:37:36 +03:00
Maksim Pechnikov
39f99dc6cd Merge branch 'develop' into support/tests 2019-09-07 22:13:43 +03:00
Maksim Pechnikov
ab2f21e470 tests for mastodon_api_controller.ex 2019-09-06 21:50:00 +03:00
Alex S
b3f6f6a409 generating remote users 2019-09-06 20:14:02 +03:00
Ivan Tashkinov
ca1ba1e272 [#1149] Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
# Conflicts:
#	test/web/twitter_api/twitter_api_controller_test.exs
2019-09-06 13:26:05 +03:00
rinpatch
26fe6f70c9 Move checking for restrict_local to User.get_cached_by_id_or_nickname 2019-09-05 15:39:10 +03:00
Sadposter
cb99cfcc65 don't try to truncate non-strings 2019-09-04 15:57:42 +01:00
Sadposter
2975da284b truncate remote user bio/display name 2019-09-04 15:45:40 +01:00
Maksim Pechnikov
8cbad5500c add tests for activity_pub/utils.ex 2019-09-04 15:25:12 +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
Ivan Tashkinov
dd017c65a4 [#1149] Refactored Oban workers API (introduced enqueue/3). 2019-08-31 21:58:42 +03:00
Ivan Tashkinov
a90ea8ba15 [#1149] Addressed code review comments (code style, jobs pruning etc.). 2019-08-31 19:08:56 +03:00
Ivan Tashkinov
e890ea7e82 [#1149] Added Oban job for "activity_expiration". Merged remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
# Conflicts:
#	config/config.exs
2019-08-31 14:25:43 +03:00
lain
90986667ce Merge branch 'admin-create-users' into 'develop'
user creation admin api will create multiple users

See merge request pleroma/pleroma!1170
2019-08-24 16:04:19 +00:00
Ivan Tashkinov
256ff09aa8 [#1149] Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue
# Conflicts:
#	lib/pleroma/application.ex
#	lib/pleroma/scheduled_activity_worker.ex
#	lib/pleroma/web/federator/retry_queue.ex
#	lib/pleroma/web/oauth/token/clean_worker.ex
#	test/user_test.exs
#	test/web/federator_test.exs
2019-08-22 20:59:58 +03: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
49ae3191df Merge branch 'hotfix/user_unfollow' into 'develop'
[#1177] fixed User.unfollow with synchronization external user

See merge request pleroma/pleroma!1579
2019-08-19 14:36:10 +00:00
Sadposter
94e336d9d5 clear follow requests when blocking a user 2019-08-18 20:30:57 +01:00
Maksim Pechnikov
3315a2a1c3 fixed User.unfollow with synchronization external user 2019-08-16 15:58:42 +03: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
bd5ad0af78 Cache follow state 2019-08-15 00:47:30 +03:00
Ivan Tashkinov
8778c16dac Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue 2019-08-14 21:44:50 +03:00
lain
560dbad538 Merge remote-tracking branch 'origin/develop' into pleroma-conversations 2019-08-14 15:30:40 +02:00
Egor Kislitsyn
e457fcc479 Add :max_remote_account_fields config option 2019-08-14 14:58:06 +07:00
rinpatch
83a3de8cc4 Merge branch 'length-limit-bio' into 'develop'
Add configurable length limits for `User.bio` and `User.name`

See merge request pleroma/pleroma!1515
2019-08-13 22:40:13 +00:00
Ivan Tashkinov
0e1c481a94 [#1149] Added more oban workers. Refactoring. 2019-08-13 20:20:26 +03:00
lain
a2b98f6d58 Merge remote-tracking branch 'origin/develop' into pleroma-conversations 2019-08-08 16:04:20 +02:00
Roman Chvanikov
9d4f34fbcb Merge branch 'develop' into feature/digest-email 2019-08-02 18:16:04 +03:00
lain
5ff8f07ca9 Merge branch 'feature/hide-follows-remote' into 'develop'
Refactor Follows/Followers counter syncronization and set hide_followers/hide_follows for remote users

See merge request pleroma/pleroma!1411
2019-08-02 11:23:07 +00:00
lain
f88560accd Conversations: Add recipient list to conversation participation.
This enables to address the same group of people every time.
2019-08-02 11:55:41 +02:00
Egor Kislitsyn
9ca4506355 Add configurable length limits for User.bio and User.name 2019-08-01 15:53:37 +07:00
rinpatch
301ea0dc04 Add tests for counters being updated on follow 2019-07-31 21:09:13 +03:00
Maksim
58443d0cd6 tests for TwitterApi/UtilController 2019-07-31 15:14:36 +00:00
rinpatch
f42719506c Fix credo issues 2019-07-31 14:20:34 +03:00
rinpatch
c88a5d3251 Merge branch 'develop' into feature/hide-follows-remote 2019-07-31 14:12:29 +03:00
Maksim
6a4b8b2681 fixed User.update_and_set_cache for stale user 2019-07-28 20:29:26 +00:00
rinpatch
41e0304757 Merge branch 'develop' into feature/hide-follows-remote 2019-07-25 18:43:30 +03:00
Eugenij
4504135894 Add domain_blocking to the relationship API (GET /api/v1/accounts/relationships) 2019-07-24 15:12:27 +00:00
Roman Chvanikov
d2da3d30f3 Merge branch 'develop' into feature/digest-email 2019-07-24 16:37:52 +03:00
Maksim
c49a09ed88 tests for Pleroma.Web.ActivityPub.Publisher 2019-07-23 19:15:48 +00:00
Sadposter
54a161cb7a move unauth'd user blocks?/2 check 2019-07-23 19:44:47 +01:00
Alexander Strizhakov
b70e659304 Feature/1087 wildcard option for blocks 2019-07-22 14:33:58 +00:00
rinpatch
196cad46f3 Resolve merge conflicts 2019-07-20 22:04:47 +03:00
rinpatch
d4ee76ab63 Apply suggestion to lib/pleroma/user.ex 2019-07-20 18:52:41 +00:00
Roman Chvanikov
8292331b35 Merge branch 'develop' into feature/digest-email 2019-07-20 16:41:58 +03:00
Ivan Tashkinov
d0198fe215 [#1112] Preserving id on user insert conflict on order not to violate conversation_partipations_user_id_fkey constraint. 2019-07-20 13:03:34 +03:00
Roman Chvanikov
36049f08ef Merge develop 2019-07-20 01:03:25 +03:00
Ariadne Conill
62e5ff624e user: add is_internal_user? helper function 2019-07-17 17:12:42 +00:00
Ariadne Conill
4885473be2 user: refactor get_or_create_instance_user() into get_or_create_service_actor_by_id() 2019-07-17 16:03:05 +00:00
Roman Chvanikov
9bca70b10a Merge develop 2019-07-16 16:19:19 +03:00
Maksim
c32384c1ea tests for Pleroma.Signature 2019-07-15 13:01:22 +00:00
Roman Chvanikov
c729883936 Merge branch 'develop' into feature/digest-email 2019-07-14 21:43:30 +03:00
Alexander Strizhakov
e7c39b7ac8 Feature/1072 muting notifications 2019-07-14 13:29:31 +00:00
rinpatch
0c2dcb4c69 Add follow information refetching after following/unfollowing 2019-07-14 01:58:39 +03:00
rinpatch
e8fa477793 Refactor Follows/Followers counter syncronization
- Actually sync counters in the database instead of info cache (which got
overriden after user update was finished anyway)
- Add following count field to user info
- Set hide_followers/hide_follows for remote users based on http status
codes for the first collection page
2019-07-13 19:27:49 +03:00
Roman Chvanikov
eae991b06a merge develop 2019-07-12 18:08:27 +03:00
Alex S
beba7bbc85 removing synchronization worker 2019-07-10 17:42:18 +03:00
Alex S
f8786fa6f2 adding following_address field to user 2019-07-10 17:42:18 +03:00
Sergey Suprunenko
2d2b50ccca Send and handle "Delete" activity for deleted users 2019-07-10 05:16:08 +00:00
Roman Chvanikov
371d39e160 Merge develop 2019-07-09 21:21:09 +03:00
Alexander Strizhakov
d6b0fce6e9 Fix/1019 correct count remote users 2019-07-09 17:36:35 +00:00
Maksim
6dadf5d6f4 [#1043] fix search accounts. 2019-07-05 04:22:08 +00:00
Roman Chvanikov
657277ffc0 Resolve conflicts 2019-06-29 00:52:50 +03:00
Maksim
a0c4ebb4d7 [#184] small refactoring reset password 2019-06-24 19:01:56 +00:00
Sergey Suprunenko
2c63c67512 Rework user deletion 2019-06-24 18:59:12 +00:00
Alexander Strizhakov
c2ca1f22a2 it is changed in compile time
we can't change module attributes and endpoint settings in runtime
2019-06-14 15:45:05 +00:00
Roman Chvanikov
01fe5abad1 Resolve conflicts 2019-06-07 01:20:50 +03:00
kaniini
3f6da9c45a Merge branch 'bugfix/377-stuck-follow-request' into 'develop'
Bugfix/377 stuck follow request

Closes #377

See merge request pleroma/pleroma!1250
2019-06-05 15:52:40 +00:00
kaniini
a511d2f900 Merge branch 'improve-search' into 'develop'
[#943] Contain search for unauthenticated users

See merge request pleroma/pleroma!1220
2019-06-05 15:51:32 +00:00
lain
076c9ae40e User: Remove superfluous maybe_follow. 2019-06-05 14:24:31 +02:00
lain
024dfdc39c Typo + Linting. 2019-06-05 12:45:28 +02:00
lain
8b9a0dd4a7 User: Don't error out when following a user that's already followed.
This leads to a few situations where it is impossible to follow a user.
2019-06-05 12:06:45 +02:00
Egor Kislitsyn
1cb245c982 Fix formatting 2019-06-05 16:55:17 +07:00
Egor Kislitsyn
5b04f07a1e Limit search for unauthenticated users to local users only 2019-06-05 16:51:04 +07:00
Mark Felder
6ef145b4fc Merge branch 'develop' into feature/digest-email 2019-06-03 15:29:53 -05:00
lain
2b664b048e User: Add function to get AP ids from nicknames. 2019-06-03 18:16:11 +02:00
Sachin Joshi
ad5263c647 Merge remote-tracking branch 'upstream/develop' into admin-create-users 2019-06-01 11:42:37 +05:45
Sachin Joshi
5534d4c676 make bulk user creation from admin works as a transaction 2019-06-01 11:17:53 +05:45
6872c5f88f Mastodon API search default value for "resolve" is false
https://docs.joinmastodon.org/api/rest/accounts/
https://docs.joinmastodon.org/api/rest/search/
2019-05-31 18:46:57 +00:00
Egor Kislitsyn
99f70c7e20 Use Pleroma.Config everywhere 2019-05-30 15:33:58 +07:00
Roman Chvanikov
ce47017c89 Merge develop 2019-05-29 18:18:22 +03:00
William Pitcock
045803346d move key generation functions into Pleroma.Keys module 2019-05-22 03:58:15 +00:00
Sadposter
daeae8e2e7
Move default mascot configuration to config/ 2019-05-20 16:12:55 +01: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