Commit graph

1786 commits

Author SHA1 Message Date
lain
548ca43bcf Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into features/validators_use_ectotypes 2020-08-18 12:38:13 +02:00
Haelwenn (lanodan) Monnier
2f8c3c842d
common_fixes: Remove Utils.make_date call 2020-08-18 02:24:48 +02:00
Haelwenn (lanodan) Monnier
c9d6638461
common_fixes: Get fixes common from Audio and Question 2020-08-18 02:24:48 +02:00
Haelwenn (lanodan) Monnier
2bc08d5573
Pipeline Ingestion: Audio 2020-08-18 02:02:34 +02:00
Haelwenn (lanodan) Monnier
7a273087ed
object_validators: Use ecto_types where available 2020-08-17 23:47:00 +02:00
Ivan Tashkinov
95529ab709 [#2046] Defaulted pleroma/restrict_unauthenticated basing on instance privacy setting (i.e. restrict on private instances only by default). 2020-08-14 20:55:45 +03:00
14a06e63f6 Merge branch 'fix/activity-expirations-again' into 'develop'
Fix activity expirations again

See merge request pleroma/pleroma!2866
2020-08-13 17:38:19 +00:00
Haelwenn (lanodan) Monnier
4f3c955f26
side_effects: Fix typo on notification 2020-08-13 18:10:43 +02:00
lain
2e347e8286 ActivityPub: Remove reject, move everything to the Pipeline. 2020-08-12 15:07:46 +02:00
lain
7224bf309e Transmogrifier: Move Rejects to the Pipeline 2020-08-12 14:48:51 +02:00
lain
500576dcb6 Linting fixes. 2020-08-11 19:22:14 +02:00
lain
25bfee0d12 ActivityPub: Remove ActivityPub.accept
Switch to the pipeline in CommonAPI and SideEffects
2020-08-11 17:43:16 +02:00
lain
f988d82e46 Transmogrifier: Handle accepts with the pipeline 2020-08-11 17:26:01 +02:00
lain
3f6d50111e Linter fixes. 2020-08-11 16:07:42 +02:00
lain
da3f9b9988 Transmogrifier: Remove handling of orphaned accepts
This was a Mastodon 2.3 issue and has been fixed for a long time.
According to fediverse.networks, less than one percent of servers
still run a version this old or older.
2020-08-11 15:41:19 +02:00
lain
8b1e8bec2f AcceptValidation: Codify accept rules. 2020-08-11 15:32:52 +02:00
lain
f1a0c10b17 AcceptValidator: Add basic validator with tests. 2020-08-11 15:13:07 +02:00
lain
8f9fbc86c0 Transmogrifier: Small readability changes. 2020-08-11 14:02:09 +02:00
lain
677abbf0ee Merge branch 'fix/activity-expirations-again' of git.pleroma.social:pleroma/pleroma into fix/activity-expirations-again 2020-08-11 10:55:10 +02:00
lain
7e4932362b SideEffects: Handle strange deletion case. 2020-08-11 10:54:38 +02:00
lain
11fc90744c Transmogrifier: Remove duplicate code. 2020-08-10 15:31:36 +02:00
Alex Gleason
cc196e2cd5
Merge remote-tracking branch 'upstream/develop' into restrict-domain 2020-08-05 13:08:31 -05:00
Alex Gleason
ad9c925efb
Speed up instance timeline query 2020-08-05 13:08:13 -05:00
lain
9d7ce1a6d0 CommonValidations: More refactors. 2020-08-05 17:56:12 +02:00
lain
3655175639 CommonValidations: Refactor same_domain? 2020-08-05 17:36:27 +02:00
lain
9c96fc052a CommonValidations: Extract modification right checker 2020-08-05 17:26:53 +02:00
lain
f889400d05 Questions: Move fixes to validators. 2020-08-05 14:51:33 +02:00
lain
00c4c6a382 CommonValidations: Remove superfluous function
The `is_active` functionality was integrated into the presence
checker.
2020-08-05 12:24:34 +02:00
lain
19c108170e Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into features/poll-validation 2020-08-05 11:12:14 +02:00
rinpatch
b1b6a7dfa8 Merge branch 'deactivated-user-posts' into 'develop'
Deactivated user posts

Closes #2011

See merge request pleroma/pleroma!2845
2020-08-04 19:17:30 +00:00
Egor Kislitsyn
91fbb5b21f
Fix ActivityExpirationPolicy 2020-08-04 18:26:37 +04:00
lain
878c7f3f30 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into features/poll-validation 2020-08-04 15:28:41 +02:00
Haelwenn (lanodan) Monnier
0f088d8ce3
question_validator: Allow content to be an empty-string (blank) 2020-08-04 14:29:16 +02:00
lain
1a00713744 CommonValidations: Treat deactivated users as not present. 2020-08-04 14:17:03 +02:00
lain
56b5b9aa27 Merge branch 'follower-mrf-again' into 'develop'
Follower mrf again

See merge request pleroma/pleroma!2833
2020-08-03 14:22:11 +00:00
lain
10c792110e MRF Object Age Policy: Don't break on messages without cc/to 2020-08-03 14:12:32 +02:00
lain
4b18a07392 Revert "Merge branch 'revert-1ac0969c' into 'develop'"
This reverts merge request !2825
2020-07-31 15:18:04 +00:00
lain
010d77ec85 Revert "Merge branch 'mrf-silence-2' into 'develop'"
This reverts merge request !2820
2020-07-31 15:17:09 +00:00
Haelwenn (lanodan) Monnier
ac2598307d
Merge remote-tracking branch 'pleroma/develop' into features/poll-validation 2020-07-31 13:57:21 +02:00
lain
1dd162a5f7 SimplePolicy: Fix problem with DM leaks. 2020-07-31 09:57:30 +02:00
Alex Gleason
702f0fb822
Merge remote-tracking branch 'upstream/develop' into mrf-silence 2020-07-29 13:01:16 -05:00
Alex Gleason
93638935d7
SimpleMRF: :silence --> :followers_only 2020-07-29 12:58:08 -05:00
lain
edf8b6abfe EnsureRePrepended: Don't break on chat messages. 2020-07-29 10:53:08 +02:00
Alex Gleason
2a99e7df8e
SimpleMRF silence: optimize, work okay with nil values in addressing 2020-07-28 20:32:58 -05:00
Alex Gleason
3c90f7f715
SimpleMRF: Let instances be silenced 2020-07-28 19:06:42 -05:00
lain
9e6f4694dd Pipeline: Unify embedded_object / object_data, move to validator. 2020-07-27 16:39:50 +02:00
Lain Soykaf
3d13fb05f8 Side Effects: On undoing, put information about the undone object. 2020-07-24 14:40:22 +02:00
Lain Soykaf
91f3cf9bc6 Pipeline: Add embedded object federation. 2020-07-24 14:06:41 +02:00
lain
76aa49a0c5 Merge branch '1973-chats-fix-with-restrict-unauthenticated' into 'develop'
[#1973] Fixed accounts rendering in GET /api/v1/pleroma/chats with truish :restrict_unauthenticated setting

Closes #1973

See merge request pleroma/pleroma!2791
2020-07-23 12:52:02 +00:00
Ivan Tashkinov
9ea51a6de5 [#2791] AccountView: renamed :force option to :skip_visibility_check. 2020-07-23 15:08:30 +03:00
lain
b2ba70eec4 Merge branch 'bugfix/mrf-reject-logging' into 'develop'
Fix #783: Make MRF reject log as info level instead of error

Closes #783

See merge request pleroma/pleroma!2758
2020-07-23 11:08:29 +00:00
Ivan Tashkinov
6f5f7af607 [#1973] Fixed accounts rendering in GET /api/v1/pleroma/chats with truish :restrict_unauthenticated.
Made `Pleroma.Web.MastodonAPI.AccountView.render("show.json", _)` demand :for or :force option in order to prevent incorrect rendering of empty map instead of expected user representation with truish :restrict_unauthenticated setting.
2020-07-22 19:06:00 +03:00
Alex Gleason
afa8b469ed
Allow restricting public timeline by instance 2020-07-18 19:35:07 -05:00
rinpatch
0fe36b311c Merge branch 'features/mrf-reasons' into 'develop'
Add rejection reason to our MRFs

See merge request pleroma/pleroma!2759
2020-07-15 14:00:22 +00:00
Haelwenn (lanodan) Monnier
e4beff90f5
Create Question: Add context field to create 2020-07-15 12:32:43 +02:00
Haelwenn (lanodan) Monnier
bfe2dafd39
{Answer,Question}Validator: Keep both actor and attributedTo for now but sync them 2020-07-15 12:32:42 +02:00
Haelwenn (lanodan) Monnier
c19bdc811e
Fix attachments in polls 2020-07-15 12:32:42 +02:00
Haelwenn (lanodan) Monnier
d713930ea7
Fixup for EctoType module move 2020-07-15 11:40:24 +02:00
Haelwenn (lanodan) Monnier
435a65b976
QuestionValidator: Use AttachmentValidator 2020-07-15 11:40:24 +02:00
Haelwenn (lanodan) Monnier
fe6924d00d
CreateGenericValidator: add expires_at 2020-07-15 11:40:24 +02:00
Haelwenn (lanodan) Monnier
82895a4012
SideEffects: port ones from ActivityPub.do_create and ActivityPub.insert 2020-07-15 11:40:23 +02:00
Haelwenn (lanodan) Monnier
4f70fd4105
question_validator: remove conversation field 2020-07-15 11:39:56 +02:00
Haelwenn (lanodan) Monnier
173f69c854
question_validator: fix for mastodon poll expiration
Mastodon activities do not have a "closed" field, this could be seen on
https://pouet.it/users/lanodan_tmp/statuses/104345126997708380
which runs Mastodon 3.1.4 (SDF runs 3.1.2)
2020-07-15 11:39:56 +02:00
Haelwenn (lanodan) Monnier
47ba796f41
create_question_validator: remove validate_recipients_match 2020-07-15 11:39:55 +02:00
Haelwenn (lanodan) Monnier
10bd08ef07
transmogrifier_test: test date, anyOf and oneOf completely 2020-07-15 11:39:54 +02:00
Haelwenn (lanodan) Monnier
89a2433154
QuestionOptionsValidator: inline schema for replies 2020-07-15 11:39:54 +02:00
Haelwenn (lanodan) Monnier
c5efaf6b00
AnswerValidator: Create 2020-07-15 11:39:54 +02:00
Haelwenn (lanodan) Monnier
7bcd7a9595
QuestionValidator: Create 2020-07-15 11:39:53 +02:00
Maksim Pechnikov
1dd767b8c7 Include port in host for signatures 2020-07-14 21:44:08 +03:00
246f49d685 Merge branch '1916-transmogrifier-skipping-oddities-in-address-fields' into 'develop'
Transmogrifier: filtering weirdness in address fields

Closes #1916

See merge request pleroma/pleroma!2762
2020-07-14 15:17:25 +00:00
Haelwenn (lanodan) Monnier
858d9fc7e8
MRF Policies: Return a {:reject, reason} instead of {:reject, nil} 2020-07-14 11:04:16 +02:00
=
b221b640a2 Transmogrifier: filtering weirdness in address fields 2020-07-13 22:43:21 +03:00
Haelwenn (lanodan) Monnier
ce243b107f
Use Logger.info for {:reject, reason} 2020-07-13 15:26:31 +02:00
Haelwenn (lanodan) Monnier
2aac92e9e0
Transmogrifier.fix_in_reply_to/2: Use warn for non-fatal fail to get replied-to post 2020-07-13 15:26:30 +02:00
lain
93e494ec21 ActivityPub: Don't rename a clashing nickname with the same ap id. 2020-07-10 14:10:44 +02:00
lain
b39eb6ecc5 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into chat-federation-information 2020-07-10 12:26:53 +02:00
Mark Felder
d23804f191 Use the Pleroma.Config alias 2020-07-09 10:53:51 -05:00
Haelwenn
68036f5a3b Merge branch 'follow-pipeline' into 'develop'
Handle `Follow` activities with the pipeline

See merge request pleroma/pleroma!2734
2020-07-09 10:32:24 +00:00
lain
00e54f8fe7 ActivityPub: Remove follow and fix issues. 2020-07-08 17:07:24 +02:00
lain
9dda8b5427 CommonAPI: Switch to pipeline for following. 2020-07-08 15:40:56 +02:00
lain
172f4aff8e Transmogrifier: Move following to the pipeline. 2020-07-08 14:30:53 +02:00
lain
7d0e2b3fdd Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into follow-pipeline 2020-07-08 13:23:07 +02:00
lain
cdc153db31 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into issue/1880 2020-07-08 13:21:58 +02:00
Maksim Pechnikov
e341f81785 fixed delete Like activity in remove user 2020-07-08 09:06:23 +03:00
lain
9ad305209a Merge branch 'bugfix/peertube-videos' into 'develop'
Fix getting videos from peertube

See merge request pleroma/pleroma!2728
2020-07-07 09:14:50 +00:00
Haelwenn (lanodan) Monnier
fbb9743a70
Fix getting videos from peertube 2020-07-07 09:38:38 +02:00
lain
a6a12b241f FollowValidator: Add basic validation. 2020-07-06 15:57:19 +02:00
lain
208baf157a ActivityPub: Add new 'capabilities' to user. 2020-07-06 11:38:40 +02:00
Sergey Suprunenko
8277b29790
Restrict thread statuses that contain user's irreversible filters 2020-07-06 09:30:39 +03:00
Sergey Suprunenko
4a8c26654e
Restrict statuses that contain user's irreversible filters 2020-07-06 09:28:21 +03:00
lain
4a7b89e372 ChatMessageValidator: Additional validation. 2020-07-03 15:13:27 +02:00
lain
5c0bf4c472 ActivityPub: Ingest information about chat acceptance. 2020-07-03 13:58:34 +02:00
lain
26a7cc3f00 UserView: Add acceptsChatMessages field 2020-07-03 13:38:59 +02:00
rinpatch
4c044f6225 Merge branch 'fetcher-fixes' into 'develop'
Don't fail fetching when the user in a replied-to message can't be fetched.

See merge request pleroma/pleroma!2711
2020-07-02 10:17:51 +00:00
lain
bad08f34ca Credo fixes. 2020-07-02 09:57:31 +02:00
lain
61fe94d698 SideEffects: Refactor. 2020-07-02 09:33:50 +02:00
lain
fedfe8f7d6 ActivityPub: Handle clashing nicknames for the same ap id
If we get a new user (identified by ap_id) that would have the same
nickname as an existing user, give the existing user a nickname that
is prepended with the user id, as this will never clash.

This can happen when a user switches server software and that soft-
ware generates ap ids in a different way.
2020-07-01 12:26:07 +02:00
lain
ce92e6e5ce Fetcher: Work when we can't get the OP. 2020-07-01 11:48:51 +02:00
lain
577da132da Merge branch '1031-parent-visible' into 'develop'
Resolve "Add `pleroma.parent_visible` to the status view"

Closes #1031

See merge request pleroma/pleroma!2679
2020-06-29 08:39:51 +00:00
Haelwenn
bf1c5e255a Merge branch 'block-handling' into 'develop'
Handle blocks with the pipeline

See merge request pleroma/pleroma!2685
2020-06-26 17:41:00 +00:00
lain
15a8b70318 User: Don't unfollow on block when the relevant setting is set. 2020-06-26 12:06:00 +02:00
lain
c3383d4fab BlockValidator: Restore old behavior for incoming blocks. 2020-06-26 11:58:40 +02:00
lain
04abee782b AntiSpamLinkPolicy: Exempt local users. 2020-06-25 12:40:39 +02:00
lain
84f9ca1956 Blocking: Don't federate if the options is set. 2020-06-25 12:03:14 +02:00
lain
44bb7cfccd ActivityPub: Remove block. 2020-06-25 11:51:33 +02:00
lain
e38293c8f1 Transmogrifier: Switch to pipeline for Blocks. 2020-06-25 11:33:54 +02:00
lain
89e5b2046b ObjectValidator: Basic Block support. 2020-06-25 11:13:35 +02:00
lain
35f6770436 StatusView: Add pleroma.parent_visible 2020-06-24 13:29:08 +02:00
lain
98af7b59e4 Merge branch 'update-validator' into 'develop'
Update validator

See merge request pleroma/pleroma!2668
2020-06-23 18:10:33 +00:00
Haelwenn
c7d69e9256 Merge branch 'feature/1631-redesign-mrf-configuration' into 'develop'
Moving mrf settings from instance to separate mrf group

Closes #1631

See merge request pleroma/pleroma!2320
2020-06-23 16:38:27 +00:00
lain
aee815b478 ObjectValidator: Clarify type of object. 2020-06-23 12:37:05 +02:00
lain
2c603f2009 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into update-validator 2020-06-23 10:17:12 +02:00
Haelwenn (lanodan) Monnier
c116b6d6d6
ActivityPubController: Update upload_media @doc
Small cherry-pick from https://git.pleroma.social/pleroma/pleroma/-/merge_requests/1810
2020-06-23 04:42:44 +02:00
lain
e785cd5cae ActivityPub: Remove update and switch to pipeline. 2020-06-22 13:59:45 +02:00
rinpatch
c75ba63bef Merge branch '1865-media-only' into 'develop'
Resolve "/api/v1/accounts/:id/statuses?only_media=true returns media that is not owned"

Closes #1865

See merge request pleroma/pleroma!2650
2020-06-22 11:34:07 +00:00
lain
9438f83f83 Transmogrifier: Handle Update with the pipeline. 2020-06-22 13:16:05 +02:00
lain
31a4d42ce0 SideEffects: Handle user updating. 2020-06-22 13:15:37 +02:00
lain
35e9282ffd HellthreadPolicy: Restrict to Notes and Articles. 2020-06-22 10:35:11 +02:00
lain
7d542450b1 Merge branch 'develop' into '1865-media-only'
# Conflicts:
#   CHANGELOG.md
2020-06-20 09:33:18 +00:00
Haelwenn (lanodan) Monnier
3d4cfc9c5f
Stop filling conversation field on incoming objects (legacy, unused)
conversation field is still set for outgoing federation for compatibility.
2020-06-20 00:08:26 +02:00
lain
75670a99e4 UpdateValidator: Only allow updates from the user themselves. 2020-06-19 16:38:57 +02:00
lain
abdb540d45 ObjectValidators: Add basic UpdateValidator. 2020-06-19 15:30:30 +02:00
lain
d772361e62 Merge branch 'fix/1787-mogrify-args' into 'develop'
Moving custom ecto types in context folders

See merge request pleroma/pleroma!2652
2020-06-17 15:53:24 +00:00
Alexander Strizhakov
a77b0388f4
credo fix 2020-06-17 10:31:06 +03:00
Alexander Strizhakov
ed189568f3
moving mrf settings from instance to separate group 2020-06-16 18:32:18 +03:00
Alexander Strizhakov
3c2cee33ad
moving custom ecto types in context folders 2020-06-16 17:50:33 +03:00
href
f124f68205 Switch from gen_magic to majic, use Majic.Plug, remove Pleroma.MIME 2020-06-16 15:27:27 +02:00
lain
1eb6cedaad ActivityPub: When restricting to media posts, only show 'Creates'. 2020-06-16 13:08:27 +02:00
lain
b7df7436c8 Conversations: Return last dm for conversation, not last message. 2020-06-15 12:27:13 +02:00
rinpatch
271ea5068f Merge branch '1851-favorites-pagination' into 'develop'
StatusController: Correctly paginate favorites.

Closes #1851

See merge request pleroma/pleroma!2636
2020-06-13 17:20:43 +00:00
href
cb7be6eef2 Remove use of atoms in MRF.UserAllowListPolicy 2020-06-13 12:08:46 +03:00
Haelwenn
4115701f71 Merge branch 'recipients-experiments' into 'develop'
ActivityPub: Don't show announces of your own objects in timeline.

See merge request pleroma/pleroma!2637
2020-06-12 16:57:13 +00:00
lain
e557265a03 Merge branch 'global-status-expiration' into 'develop'
Global status expiration

See merge request pleroma/pleroma!2208
2020-06-12 14:14:09 +00:00
lain
9e411372d0 ActivityPub: Don't show announces of your own objects in timeline. 2020-06-10 12:10:09 +02:00
lain
063e6b9841 StatusController: Correctly paginate favorites.
Favorites were paginating wrongly, because the pagination headers
where using the id of the id of the `Create` activity, while the
ordering was by the id of the `Like` activity. This isn't easy to
notice in most cases, as they usually have a similar order because
people tend to favorite posts as they come in. This commit adds a
way to give different pagination ids to the pagination helper, so
we can paginate correctly in cases like this.
2020-06-09 10:53:40 +02:00
lain
064c4f86f3 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-06-09 09:36:07 +02:00
Haelwenn (lanodan) Monnier
fe1cb56fdc
transmogrifier: MIME.valid?/1 for mediaType
No issues with the rest of the network yet but this makes sure it will work
once https://git.pleroma.social/pleroma/pleroma/-/merge_requests/2429
is merged.
2020-06-08 21:04:30 +02:00
Egor Kislitsyn
d44843e677
Restrict ActivityExpirationPolicy to Notes only 2020-06-08 17:56:34 +04:00
Egor Kislitsyn
da22119c2f
Merge branch 'develop' into global-status-expiration 2020-06-08 17:21:47 +04:00
lain
3b5282bef2 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-06-08 11:19:18 +02:00
lain
7d66dd180a Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-06-08 10:18:10 +02:00
lain
2cdaac4330 SideEffects: Move streaming of chats to after the transaction. 2020-06-07 14:52:56 +02:00
lain
0365053c8d AttachmentValidator: Check if the mime type is valid. 2020-06-07 09:19:00 +02:00
lain
ca0e6e702b ChatMessageReference -> Chat.MessageReference 2020-06-06 11:51:10 +02:00
Egor Kislitsyn
167812a3f2
Fix pagination 2020-06-05 23:18:29 +04:00
Egor Kislitsyn
b02df1803e
Merge remote-tracking branch 'origin/develop' into activity-pub-use-atoms-as-keys 2020-06-05 23:15:10 +04:00
lain
f24d2f714f Credo fixes 2020-06-05 17:18:48 +02:00
lain
a8ca030d85 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-06-05 16:53:56 +02:00
Haelwenn
d74985af23 Merge branch 'features/apc2s-pagination' into 'develop'
Fix AP C2S pagination

Closes #866 and #751

See merge request pleroma/pleroma!2491
2020-06-05 14:52:09 +00:00
Haelwenn
54bae06b4f Create Pleroma.Maps.put_if_present(map, key, value, value_fun // &{:ok, &1})
Unifies all the similar functions to one and simplify some blocks with it.
2020-06-05 14:48:02 +00:00