Commit Graph

682 Commits

Author SHA1 Message Date
Egor Kislitsyn 4a2538967c
Support pagination in conversations 2020-03-24 20:18:27 +04:00
Egor Kislitsyn d1a9716a98
Fix activity deletion 2020-03-24 17:38:18 +04: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
lain 3c2c32b460 Merge branch 'remake-remodel' into develop 2020-03-19 18:00:55 +01:00
Egor Kislitsyn d1c7f8e576
Merge remote-tracking branch 'origin/develop' into global-status-expiration 2020-03-12 16:02:24 +04:00
lain 6f7a8c43a2 Merge branch 'fix/no-email-no-fail' into 'develop'
Do not fail when user has no email

See merge request pleroma/pleroma!2249
2020-03-04 12:43:06 +00:00
Egor Kislitsyn 0f386110c6
Merge remote-tracking branch 'origin/develop' into global-status-expiration 2020-03-03 00:32:34 +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 34f1d09f3a
spec fix 2020-03-01 12:01:39 +03:00
Alexander Strizhakov 32d1e04817
ActivityPub actions & side-effects in transaction 2020-03-01 12:01:39 +03:00
Egor Kislitsyn cb60a9c42f
Do not fail when user has no email 2020-02-27 17:27:49 +04:00
eugenijm e2a6a40367 Admin API: `GET /api/pleroma/admin/statuses` - list all statuses (accepts `godmode` and `local_only`) 2020-02-26 20:21:38 +03:00
Egor Kislitsyn 4d459b0e99
Move ActivityExpiration creation from CommonApi.post/2 to ActivityPub.insert/4 2020-02-13 22:27:10 +04:00
lain a0d9d42eaa Emoji Reactions: Actually use the validation. 2020-01-30 16:07:37 +01:00
lain 46915207b6 Remove `whole_db` parameter everywhere, it's not used anymore 2020-01-28 14:40:40 +01:00
rinpatch 6e6f1ead31 Merge branch 'no-error-404' into 'develop'
Log at debug level for object deletion, not error.

See merge request pleroma/pleroma!2066
2020-01-22 17:55:49 +00:00
Egor Kislitsyn 432b3067d4
Do not crash when remote user follower and following counters are hidden 2019-12-19 19:26:46 +07:00
Phil Hagelberg 02c3031e99 Don't log when users or objects are deleted. 2019-12-13 12:05:53 -08:00
Maxim Filippov 3ecf131511 Merge branch 'develop' into feature/report-notes 2019-12-12 02:16:23 +03:00
Mark Felder 9ef912aecf Merge branch 'develop' into issue/1411 2019-12-11 15:02:53 -06:00
Sadposter 1ad96d667a remove single-step pipe 2019-12-11 09:08:20 +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 25f774f7c1 format activity_pub.ex 2019-12-10 16:41:43 +00:00
Sadposter 19d228cc58 modify SQL to include followed-but-domain-blocked activities 2019-12-10 16:40:12 +00:00
Hakaba Hitoyo 701815e64c [ActivityPub] Configurable ActivityPub actor type 2019-12-10 13:19:26 +00:00
rinpatch 29a3f70cba Merge branch 'bugfix/1463-blocking-in-user-tls' into 'develop'
ActivityPub: For user timelines, respects blocks.

Closes #1463

See merge request pleroma/pleroma!2041
2019-12-08 11:23:31 +00:00
lain e8cee4d9a0 ActivityPub: For user timelines, respects blocks.
Unless the timeline belongs to a blocked user.
2019-12-06 14:25:13 +01:00
rinpatch cdff5b8267 Merge branch 'develop' into fix/mrf-delete 2019-12-06 00:12:21 +03:00
rinpatch 9f99640cfc ActivityPub: Fix deletes being exempt from MRF
Closes #1461
2019-12-05 21:45:57 +03:00
Maksim Pechnikov e21afdb7c7 Merge branch 'develop' into issue/1411 2019-12-05 12:18:59 +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 e9993acdbb Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel 2019-12-04 16:35:59 +01:00
Maxim Filippov 4b60d41db9 Add report notes 2019-12-04 00:26:37 +09: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
Maksim Pechnikov 88f7cf51d4 Merge branch 'develop' into issue/1411 2019-12-01 16:18:16 +03:00
kPherox 0326683932
hide follower/following for friendica 2019-11-30 15:43:05 +09: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 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
Maksim Pechnikov 708fd234bd fix order favorites activites 2019-11-19 20:19:41 +03:00
Maksim Pechnikov 5cee51fac5 fix `order by` for fetch_favorites 2019-11-18 21:34:54 +03:00
Maksim Pechnikov 0937895182 updated fetch_favorites 2019-11-18 16:56:47 +03:00
Maksim Pechnikov 4beb3ce5c5 /api/v1/favourites: added sorting for activites by adds to favorites 2019-11-18 09:44:08 +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
Maxim Filippov 114930b5fd Merge branch 'develop' into feature/admin-api-list-statuses-for-a-given-instance 2019-11-14 23:45:29 +09:00
Maxim Filippov 30af5da330 Admin API: list all statuses from a given instance 2019-11-14 23:44:07 +09:00
Egor Kislitsyn 3c0abfca53
Merge remote-tracking branch 'upstream/develop' into feature/move-activity 2019-11-14 16:39:45 +07:00
Ivan Tashkinov 3db988250b [#1335] User: refactored :blocks field into :blocked_users relation.
Introduced UserBlock.
2019-11-10 16:30:21 +03:00
lain a88e834dba Merge branch 'develop' into 'reactions'
# Conflicts:
#   CHANGELOG.md
2019-11-10 11:32:50 +00:00
Maksim Pechnikov 9d0b989521 add subject to atom feed 2019-11-10 11:10:20 +03:00
lain b22ee9d966 Merge remote-tracking branch 'origin/develop' into reactions 2019-11-08 13:27:11 +01:00
lain 1bd1f62af5 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel 2019-11-05 15:21:00 +01:00
lain 556da92902 Merge branch 'feature/store-statuses-data-inside-flag' into 'develop'
Store status data inside flag activity

See merge request pleroma/pleroma!1849
2019-11-04 14:11:44 +00:00
Egor Kislitsyn 61fc739ab8
Handle "Move" activity 2019-10-30 18:21:49 +07:00
Egor Kislitsyn 4270861085
Merge branch 'develop' into feature/move-activity 2019-10-28 15:10:47 +07:00
Maxim Filippov 791bcfd90f Merge branch 'develop' into feature/store-statuses-data-inside-flag 2019-10-27 16:11:25 +03:00
Maxim Filippov 8eff05d4c6 Strip status data from Flag (when federating or closing/resolving report) 2019-10-27 16:05:32 +03:00
Egor Kislitsyn b777083f3f
Add `also_known_as` field to Pleroma.User 2019-10-25 19:14:18 +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 c0246309a5 [#1304] Extra bullet-proofing. 2019-10-23 19:30:02 +03:00
lain 97d5c79aa0 Add Pipeline module, test for federation. 2019-10-23 11:52:27 +02: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 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 e8843974cb [#1304] Moved remaining fields from User.Info to User.
Misc. fixes / improvements.
2019-10-20 13:42:42 +03:00
Ariadne Conill c9280b9730 rework to use properties instead of compound typing, per SocialCG 2019-10-19 23:21:37 +00:00
Ariadne Conill ef659331b0 implement invisible support for remote users 2019-10-19 23:21:37 +00:00
Ariadne Conill bae96de273 activitypub: tag containment checks for better error tracing 2019-10-18 14:50:10 +00:00
Ariadne Conill 48059c03c9 fix up some tests 2019-10-18 14:50:09 +00:00
eugenijm 359dd1890e Mastodon API: Mark the conversation as read for the author when they send a new direct message 2019-10-17 16:49:39 +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
lain 6e4f52f8a2 Introduce new ingestion pipeline structure, implement internal Likes with it. 2019-10-16 16:16:39 +02:00
lain 6977cddff9 Merge branch 'benchmark-finishing' into 'develop'
Benchmark finishing

Closes #755

See merge request pleroma/pleroma!1848
2019-10-16 11:54:49 +00:00
eugenijm a97b642289 Mastodon API: Add `exclude_visibilities` parameter to the timeline and notification endpoints 2019-10-14 02:57:21 +03:00
lain 37812740c4 Transmogrifier: Correctly save incoming ids for Accept/Reject. 2019-10-11 11:48:58 +02:00
lain 9b963064eb Transmogrifier: Actually store who deleted a note. 2019-10-11 11:25:45 +02:00
Egor Kislitsyn 059005ff82
Replace `user.following` with Pleroma.FollowingRelationship 2019-10-11 02:35:32 +07:00
lain 29647dfd09 Transmogrifier: Save correct ids for incoming deletes. 2019-10-10 17:17:33 +02:00
lain c54ae662dc Merge remote-tracking branch 'origin/develop' into benchmark-finishing 2019-10-10 14:40:59 +02:00
lain d7f9679ff2 Merge branch 'develop' into 'reactions'
# Conflicts:
#   CHANGELOG.md
2019-10-10 12:38:51 +00:00
Ariadne Conill 9a2f71f4d5 mastodon api: fix exclude_replies (closes #1287) 2019-10-07 12:29:33 +00:00
lain 61097ba6ab Merge branch 'develop' into 'reactions'
# Conflicts:
#   CHANGELOG.md
2019-10-06 08:11:47 +00:00
lain 4b8524f392 ActivityPub / Transmogrifier: Correctly store incoming Update id. 2019-10-05 14:49:45 +02:00
lain dfe5c958eb ActivityPub: Add undo for emoji reactions. 2019-10-02 15:08:20 +02:00
lain 557223b2b5 Merge remote-tracking branch 'origin/develop' into reactions 2019-10-02 13:27:55 +02:00
Thibaut Girka fe538973dd Ensure self-announces do not widen the audience of the original post 2019-10-01 18:38:57 +02:00
KokaKiwi 1f0be71ea4 Make activity announceable by its author. 2019-10-01 17:47:43 +02:00
lain 19bc0b8c79 . 2019-09-30 16:38:19 +02:00
lain 08256e9299 ActivityPub: Federate reactions. 2019-09-30 15:51:09 +02:00
lain b923842e96 Merge remote-tracking branch 'origin/develop' into reactions 2019-09-30 13:57:54 +02:00
Ariadne Conill 7cad6ea67a pleroma api: hook up scrobbler controller 2019-09-30 10:39:17 +00:00
Ariadne Conill 1f9de2a8cd activitypub: implement IR-level considerations for Listen activities 2019-09-30 10:39:17 +00:00
rinpatch e9d1aa75d5 Revert subscription refactoring.
As discussed in pleroma-meta#2

This reverts commit eb9aa7aa10, reversing
changes made to c4fbb56984.
2019-09-29 18:43:27 +03:00
Roman Chvanikov b4b147000c Merge develop 2019-09-26 10:38:54 +03:00
Hakaba Hitoyo 5fb72170a7 Revert "add _discoverable_ keyword into ActivityPub @context"
This reverts commit 3aef4bdf8f37efd1055a84c5fca12ec4559a17f5.
2019-09-26 02:57:41 +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
kaniini beabc49e35 Merge branch 'feature/activities-pagination-by-offset' into 'develop'
Allow activities pagination via limit/offset

See merge request pleroma/pleroma!1714
2019-09-26 02:49:45 +00:00
rinpatch d87be2ec96 Don't embed the first page in inboxes/outboxes and refactor the views to
follow View/Controller pattern

Note that I mentioned the change in 1.1 section because I intend to
backport this, if this is not needed I will move it back to Unreleased.
2019-09-25 15:59:04 +03:00
Egor Kislitsyn b5dfe83433 Replace `Pleroma.FlakeId` with `flake_id` hex package 2019-09-25 17:14:31 +07:00
Maxim Filippov 60cbea5bb2 Allow activities pagination via limit/offset 2019-09-25 01:25:42 +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
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
Roman Chvanikov 76c3e290fc Merge develop 2019-09-16 20:30:42 +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
Roman Chvanikov 0bd2b85edb Separate Subscription Notifications from regular Notifications 2019-09-13 18:25:27 +03:00
lain a7f31bf06c Merge remote-tracking branch 'origin/develop' into reactions 2019-09-13 16:31:27 +02:00
lain e5b3ad3d04 ActivityPub: Use is_unicode_emoji? function. 2019-09-13 16:06:34 +02:00
Ivan Tashkinov c3f00447af Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue 2019-09-08 08:41:10 +03:00
Maksim Pechnikov 39f99dc6cd Merge branch 'develop' into support/tests 2019-09-07 22:13:43 +03:00
Ariadne Conill 5effb2cbca activitypub: help ecto build a better query for thread mute filtering
using an indexed value in thread_mute table helps ecto build a better query.
2019-09-06 23:11:26 +00:00
Alex S 79dde58044 one more temp commit 2019-09-05 16:02:20 +03:00
Maksim Pechnikov 8cbad5500c add tests for activity_pub/utils.ex 2019-09-04 15:25:12 +03:00
lain 9bc12b88b3 ActivityPub: Save emoji reactions in object. 2019-09-03 16:50:04 -05: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 f017260cdc Merge remote-tracking branch 'origin/develop' into reactions 2019-08-27 16:38:51 -05:00
Maksim Pechnikov 00abe099cd added tests for ActivityPub.like\unlike 2019-08-27 16:21:03 +03:00
lain 6e1ec4c5da ActivityPub: Basic EmojiReactions. 2019-08-26 16:29:51 -05: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 74f7f308f8 Merge branch 'fix/admin-api-user-deletion' into 'develop'
Fix deactivated user deletion

See merge request pleroma/pleroma!1546
2019-08-20 19:34:47 +00: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
Maxim Filippov 5171aa5b4d Refactor check_actor_is_active 2019-08-19 20:36:25 +03:00
kaniini 18c8c8d176 Merge branch 'feature/hide-muted-threads-from-timeline' into 'develop'
Hide muted theads from home/public timelines unless `with_muted` is set

See merge request pleroma/pleroma!1575
2019-08-18 21:57:55 +00:00
rinpatch a4a3e3becd Hide muted theads from home/public timelines unless `with_muted` is set 2019-08-15 17:37:30 +03:00
Maxim Filippov ec969eec51 Merge branch 'develop' into 'fix/admin-api-user-deletion'
# Conflicts:
#   CHANGELOG.md
2019-08-14 22:45:32 +00:00
Maxim Filippov 2b94ae3b39 Do not check if actor is active when deleting a user 2019-08-15 01:35:29 +03: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
Egor Kislitsyn e457fcc479 Add `:max_remote_account_fields` config option 2019-08-14 14:58:06 +07:00
kaniini 5c35d2f1d8 Merge branch 'preload-user-timelines' into 'develop'
Preload thread mutes/bookmarks in user_statuses

See merge request pleroma/pleroma!1563
2019-08-14 01:04:07 +00:00
rinpatch 8202f1634a Preload thread mutes/bookmarks in user_statuses 2019-08-14 03:02:09 +03: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
Ivan Tashkinov 0e1c481a94 [#1149] Added more oban workers. Refactoring. 2019-08-13 20:20:26 +03:00
Maxim Filippov dfae61c25c Fix deactivated user deletion 2019-08-09 23:05:28 +03:00
rinpatch 73d8d5c49f Stop depending on the embedded object in restrict_favorited_by 2019-08-07 00:12:42 +03:00
Sergey Suprunenko 8b2fa31fed Handle MRF rejections of incoming AP activities 2019-08-03 18:12:38 +00:00
rinpatch c88a5d3251 Merge branch 'develop' into feature/hide-follows-remote 2019-07-31 14:12:29 +03:00
Ariadne Conill b93498eb52 constants: add as_public constant and use it everywhere 2019-07-29 02:43:19 +00:00
rinpatch 41e0304757 Merge branch 'develop' into feature/hide-follows-remote 2019-07-25 18:43:30 +03:00
Maxim Filippov 03471151d6 AdminAPI: Add "godmode" while fetching user statuses (i.e. admin can see private statuses) 2019-07-24 01:51:36 +03:00
rinpatch 196cad46f3 Resolve merge conflicts 2019-07-20 22:04:47 +03:00
Egor Kislitsyn 64a946643e Merge remote-tracking branch 'pleroma/develop' into feature/addressable-lists 2019-07-15 14:11:54 +07:00
Ariadne Conill 739bbe0d3b security: detect object containment violations at the IR level
It is more efficient to check for object containment violations at the IR
level instead of in the protocol handlers.  OStatus containment is especially
a tricky situation, as the containment rules don't match those of IR and
ActivityPub.

Accordingly, we just always do a final containment check at the IR level
before the object is added to the IR object graph.
2019-07-14 17:47:08 +00:00
rinpatch 0c2dcb4c69 Add follow information refetching after following/unfollowing 2019-07-14 01:58:39 +03:00
rinpatch 183da33e00 Add tests for fetch_follow_information_for_user and check object type
when fetching the page
2019-07-14 00:56:02 +03:00