Hélène
388bbc4978
EmojiReactValidator: fix emoji qualification
...
Tries fully-qualifying emoji when receiving them, by adding the emoji
variation sequence to the received reaction emoji.
This issue arises when other instance software, such as Misskey, tries
reacting with emoji that have unqualified or minimally qualified
variants, like a red heart. Pleroma only accepts fully qualified emoji
in emoji reactions, and refused those emoji. Now, Pleroma will attempt
to properly qualify them first, and reject them if checks still fail.
This commit contains changes to tests proposed by lanodan.
Co-authored-by: Haelwenn <contact+git.pleroma.social@hacktivis.me>
2022-07-24 13:36:06 +02:00
Tusooa Zhu
997f08b350
Make AntiLinkSpamPolicy history-aware
2022-07-24 00:18:09 -04:00
Tusooa Zhu
d877d2a4e7
Make HashtagPolicy history-aware
2022-07-24 00:02:39 -04:00
Tusooa Zhu
82c8fc1ede
Make NoEmptyPolicy work with Update
2022-07-23 23:24:25 -04:00
Tusooa Zhu
46a5c06853
Make NormalizeMarkup history-aware
2022-07-23 22:50:38 -04:00
Tusooa Zhu
fc7ce5f93c
Make NoPlaceholderTextPolicy history-aware
2022-07-23 22:41:04 -04:00
Tusooa Zhu
dce7e42928
Make MediaProxyWarmingPolicy history-aware
2022-07-23 22:34:03 -04:00
Tusooa Zhu
0a337063e1
Make ForceMentionsInContent history-aware
2022-07-23 22:23:57 -04:00
Tusooa Zhu
cd19537f39
Make EnsureRePrepended history-aware
2022-07-23 17:48:39 -04:00
Tusooa Zhu
eba9b0760f
Make MRF Keyword history-aware
2022-07-23 15:56:36 -04:00
Haelwenn
cfb21d011f
Revert "Merge branch 'fix/emoji-react-qualification' into 'develop'"
...
This reverts merge request !3684
2022-07-22 23:19:49 +00:00
Haelwenn (lanodan) Monnier
eba1666575
AttachmentValidator: fix_media_type/1 fallback to application/octet-stream
2022-07-22 20:30:45 +02:00
Haelwenn (lanodan) Monnier
be98900904
ArticleNotePageValidator: Fix when attachments are a Map (ie. owncast)
2022-07-22 20:30:45 +02:00
Haelwenn
454f892f37
Merge branch 'fix/emoji-react-qualification' into 'develop'
...
EmojiReactValidator: fix emoji qualification
See merge request pleroma/pleroma!3684
2022-07-21 17:45:47 +00:00
Tusooa Zhu
f84ed44cea
Fix cannot get full history on object fetch
2022-07-06 01:19:53 -04:00
Ilja
f88ed1df75
Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into fine_grained_moderation_privileges
2022-07-05 12:05:19 +02:00
Tusooa Zhu
5ce118d970
Validate object data for incoming Update activities
...
In Create validator we do not validate the object data,
but that is because the object itself will go through the
pipeline again, which is not the case for Update. Thus,
we added validation for objects in Update activities.
2022-07-03 20:21:46 -04:00
Tusooa Zhu
4367489a3e
Pass history items through ObjectValidator for updatable object types
2022-07-03 20:02:52 -04:00
Tusooa Zhu
4edc867b87
Merge branch 'develop' into 'from/upstream-develop/tusooa/edits'
...
# Conflicts:
# lib/pleroma/constants.ex
2022-07-03 22:24:57 +00:00
Haelwenn
a15b45a589
Merge branch 'bugfix/mime-validation-no-list' into 'develop'
...
Bugfix: Validate mediaType only by it's format
See merge request pleroma/pleroma!3597
2022-07-03 21:04:41 +00:00
Ilja
37fdf148b0
Rename privilege tags
...
I first focussed on getting things working
Now that they do and we know what tags there are, I put some thought in providing better names
I use the form <what_it_controls>_<what_it_allows_you_to_do>
:statuses_read => :messages_read
:status_delete => :messages_delete
:user_read => :users_read
:user_deletion => :users_delete
:user_activation => :users_manage_activation_state
:user_invite => :users_manage_invites
:user_tag => :users_manage_tags
:user_credentials => :users_manage_credentials
:report_handle => :reports_manage_reports
:emoji_management => :emoji_manage_emoji
2022-07-01 10:28:09 +02:00
Hélène
11f9f2ef27
EmojiReactValidator: fix emoji qualification
...
Tries fully-qualifying emoji when receiving them, by adding the emoji
variation sequence to the received reaction emoji.
This issue arises when other instance software, such as Misskey, tries
reacting with emoji that have unqualified or minimally qualified
variants, like a red heart. Pleroma only accepts fully qualified emoji
in emoji reactions, and refused those emoji. Now, Pleroma will attempt
to properly qualify them first, and reject them if checks still fail.
2022-06-28 21:33:57 +02:00
Tusooa Zhu
014096aeef
Make outbound transmogrifier aware of edit history
2022-06-25 11:20:46 -04:00
Tusooa Zhu
5321fd0012
Do not put meta[:object_data] for local Updates
2022-06-25 10:03:19 -04:00
Tusooa Zhu
9c6dae942d
Fix local updates causing emojis to be lost
2022-06-25 09:23:09 -04:00
Tusooa Zhu
99a6f50316
Unify the logic of updating objects
2022-06-25 00:32:22 -04:00
Tusooa Zhu
e0d6da4e7d
Fix CommonAPITest
2022-06-24 10:54:11 -04:00
Tusooa Zhu
ee07383191
Use meta[:object_data] in SideEffects for Update
2022-06-24 10:28:58 -04:00
Tusooa Zhu
01321c88b5
Convert incoming Updated object into Pleroma format
2022-06-24 10:25:22 -04:00
Ilja
e21ef5aef3
report notifications for privileged users
...
Instead of `Pleroma.User.all_superusers()` we now use `Pleroma.User.all_superusers(:report_handle)`
I also changed it for sending emails, but there were no tests.
2022-06-21 12:10:27 +02:00
Ilja
bb61cfee8d
Validator for deleting statusses is now done with priviledge instead of superuser
2022-06-21 12:10:27 +02:00
Tusooa Zhu
c3593639ad
Fix incorrectly cached content after editing
2022-06-09 11:39:51 -04:00
Tusooa Zhu
8bac8147d4
Stream out edits
2022-06-03 21:15:17 -04:00
Tusooa Zhu
fa31ae50e6
Inject history when object is refetched
2022-06-01 19:49:04 -04:00
Tusooa Zhu
410e177b2a
Strip internal fields in formerRepresentation
2022-06-01 12:02:03 -04:00
Tusooa Zhu
b613a9ec6b
Implement mastodon api for editing status
2022-05-31 14:32:28 -04:00
marcin mikołajczak
0ecd6ba35e
AdminAPI: Allow filtering reports by rule_id
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-30 13:24:39 +02:00
Tusooa Zhu
c004eb0fa2
Implement mastodon api for showing edit history
2022-05-29 23:50:31 -04:00
Tusooa Zhu
8acfe95f3e
Allow updating polls
2022-05-29 22:16:03 -04:00
Tusooa Zhu
5e8aac0e07
Record edit history for Note and Question Updates
2022-05-29 13:54:16 -04:00
Tusooa Zhu
0f6a5eb9a2
Handle Note and Question Updates
2022-05-29 12:54:57 -04:00
Tusooa Zhu
547def67a7
Allow Updates by every actor on the same origin
2022-05-29 11:36:00 -04:00
Hélène
a74ce2d77a
StealEmojiPolicy: fix String rejected_shortcodes
...
* rejected_shortcodes is defined as a list of strings in the
configuration description. As such, database-based configuration was
led to handle those settings as strings, and not as the actually
expected type, Regex.
* This caused each message passing through this MRF, if a rejected
shortcode was set and the emoji did not exist already on the instance,
to fail federating, as an exception was raised, swiftly caught and
mostly silenced.
* This commit fixes the issue by introducing new behavior: strings are
now handled as perfect matches for an emoji shortcode (meaning that if
the emoji-to-be-pulled's shortcode is in the blacklist, it will be
rejected), while still supporting Regex types as before.
2022-05-18 21:25:10 +02:00
marcin mikołajczak
574db5b988
Allow submitting an array of rule_ids to /api/v1/reports
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-16 14:06:49 +02:00
Tusooa Zhu
f1722a9f4a
Make lint happy
...
Ref: fix-local-public
2022-05-09 18:53:32 -04:00
Tusooa Zhu
38444aa92a
Allow authenticated users to access local-only posts in MastoAPI
...
Ref: fix-local-public
2022-05-09 18:53:18 -04:00
Haelwenn
4605efe272
Merge branch 'improve_anti_followbot_policy' into 'develop'
...
Also use actor_type to determine if an account is a bot in antiFollowbotPolicy
Closes #2561
See merge request pleroma/pleroma!3498
2022-05-08 18:10:40 +00:00
Ilja
a8093732bd
Also use actor_type to determine if an account is a bot in antiFollowbotPolicy
2022-05-08 18:10:40 +00:00
Tusooa Zhu
fe933b9bf2
Prevent remote access of local-only posts via /objects
...
Ref: fix-local-public
2022-05-06 13:54:21 -04:00
Tusooa Zhu
c48be59f58
Show local-only statuses in public timeline for authenticated users
...
Ref: fix-local-public
2022-05-06 13:54:02 -04:00
Tusooa Zhu
57c030a0a7
Skip cache when /objects or /activities is authenticated
...
Ref: fix-local-public
2022-05-06 10:23:26 +02:00
Haelwenn (lanodan) Monnier
83338c25a5
Transmogrifier: Use validating regex for "mediaType"
2022-03-17 22:37:26 +01:00
Haelwenn (lanodan) Monnier
030183b35f
AttachmentValidator: Use custom ecto type and regex for "mediaType"
2022-03-17 22:37:26 +01:00
Sean King
17aa3644be
Copyright bump for 2022
2022-02-25 23:11:42 -07:00
marcin mikołajczak
f8f2a17754
Birthdays: Fix outgoing federation of birth dates
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-02-01 12:00:26 +01:00
Alex Gleason
3bf257171f
ForceMentionsInContent: improve display of Markdown posts
2022-01-27 14:15:06 -06:00
Alex Gleason
27cb3d6273
ForceMentionsInContent: don't apply it to top-level posts
2022-01-26 21:24:26 -06:00
bot
a4de79ced0
ForceBotUnlistedPolicy: fix to stop unlisting my posts >:(
2022-01-26 22:53:02 +00:00
Alex Gleason
0604b0dd09
ForceMentionsInContent: don't mention self
2022-01-25 12:33:47 -06:00
Alex Gleason
0f4e0e667e
Merge branch 'recipients-inline' into 'develop'
...
ForceMentionsInContent: wrap mentions in a span, fix the formatting
See merge request pleroma/pleroma!3620
2022-01-25 17:43:39 +00:00
Alex Gleason
65b4d2ce84
ForceMentionsInContent: fix order of mentions
2022-01-25 10:42:34 -06:00
Alex Gleason
267184b70e
ForceMentionsInContentTest: return mentions in a not terrible format
2022-01-24 20:03:43 -06:00
Alex Gleason
c5a20c80c4
ForceMentionsInContent: simplify finding users
2022-01-24 19:44:44 -06:00
Alex Gleason
d5644a52aa
ForceMentionsInContent: wrap inline mentions with span tag
2022-01-24 19:11:45 -06:00
Alex Gleason
1bbc701a3a
ForceMentionsInContent: use `to` instead of `tag`
2022-01-24 19:11:14 -06:00
marcin mikołajczak
0266bc3c96
Birthdays: hide_birthday -> show_birthday
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-23 09:13:33 +01:00
Alex Gleason
aaa9314f4c
Merge remote-tracking branch 'origin/develop' into birth-dates
2022-01-22 14:24:50 -06:00
Alex Gleason
66e8c6f90f
Birthdays: birth_date --> birthday
2022-01-22 13:21:55 -06:00
Alex Gleason
6ffe43af70
Merge branch 'private-pins' into 'develop'
...
Support private pinned posts from Mastodon
See merge request pleroma/pleroma!3611
2022-01-20 23:18:24 +00:00
marcin mikołajczak
88c21b9282
Support private pinned posts from Mastodon
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-20 12:35:32 +01:00
rinpatch
a02cfd7f52
Add ForceMentionsInContentPolicy
...
Even though latest PleromaFE supports displaying these properly, mobile
apps still exist, so I think we should offer a workaround to those who
want it.
2022-01-19 21:04:57 +03:00
marcin mikołajczak
c180f9276f
check if remote bday is valid
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-19 17:19:28 +01:00
marcin mikołajczak
b108b05650
Birth dates, birthday reminders API, allow instance admins to require minimum age
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-18 14:57:48 +01:00
Tusooa Zhu
e41eee5ed1
Make Move activity federate properly
...
Ref: emit-move
2021-12-28 01:11:08 -05:00
marcin mikołajczak
de006443f0
MastoAPI: Profile directory
2021-12-26 02:35:17 +00:00
Alex Gleason
d9746ae4cb
Merge branch 'from/develop/tusooa/2802-propagate-reject' into 'develop'
...
Handle Reject for already-accepted Follows properly
Closes #2766 and #2802
See merge request pleroma/pleroma!3568
2021-12-23 16:00:16 +00:00
Alex Gleason
df5359aa72
Merge branch 'replies-count' into 'develop'
...
Fix replies count for remote replies
See merge request pleroma/pleroma!3541
2021-12-19 17:36:25 +00:00
Tusooa Zhu
3d41ccc47b
Allow updating accepted follow activities in Web.ActivityPub.Utils.update_follow_state_for_all/2
...
Mastodon uses the Reject activity also for the purpose of removing
a follower, in addition to reject a follow request. We should
also update the original Follow activity in this case.
2021-12-17 14:17:51 -05:00
Alex Gleason
2c96668a2c
Merge remote-tracking branch 'origin/develop' into fix-attachment-dimensions
2021-12-07 13:41:54 -05:00
Alex Gleason
3f03d71ea6
AttachmentValidator: ingest width and height
2021-12-07 12:59:03 -05:00
Lain Soykaf
ca8c676867
Linting.
2021-12-07 12:12:23 -05:00
Finn Behrens
8af53101fb
move result into with guard
2021-12-07 09:18:53 +01:00
marcin mikołajczak
d64d1b1d45
Fix replies count for remote replies
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-11-23 11:31:09 +01:00
lain
e2772d6bf1
Merge branch 'block-behavior' into 'develop'
...
Configurable block visibility, fixes #2123
Closes #2123
See merge request pleroma/pleroma!3242
2021-11-15 14:27:59 +00:00
Haelwenn (lanodan) Monnier
23e91ec8dd
activity_pub_controller: Fix misleading debug warning in post_inbox_fallback
2021-11-10 01:11:35 +01:00
Haelwenn (lanodan) Monnier
23161526d4
object_validators: Group common fields in CommonValidations
...
Notes:
- QuestionValidator didn't have a :name field but that seems like a mistake
- `_fields` functions can't inherit others because of some Validators
- bto/bcc fields were absent in activities, also seems like a mistake
(Well IIRC we don't or barely support bto/bcc anyway)
2021-10-10 02:50:06 +02:00
Haelwenn (lanodan) Monnier
a17910a6c6
CI: Bump lint stage to elixir-1.12
...
Elixir 1.12 changed formatting rules, this allows to avoid having to rollback to run `mix format`
2021-10-06 08:11:05 +02:00
Ilja
20084329ea
Selecting MRF policies didn't work as intended any more
...
* Policies were put under a new module (Pleroma.Web.ActivityPub.MRF.Policy instead of Pleroma.Web.ActivityPub.MRF), but this wasn't changed in the Pleroma.Web.ActivityPub.MRF @mrf_config_descriptions
* I don't have a unit test to prevent similar problems in the future because I don't find a proper way to do it
* The descriptions in the unit tests are defined in the unit tests, so if someone changes module names in the code, the tests wont see it
* The list is generated in Pleroma.Docs.Generator.list_behaviour_implementations, but I can't do a check in the when clause of the function to see if the provided module is a behaviour or not.
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3509
2021-08-28 18:27:58 +02:00
Sam Therapy
09c42ce13e
Add Admin-FE menu for StealEmojiPolicy
...
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3512
2021-08-28 18:21:59 +02:00
Haelwenn
bc62a35282
Merge branch 'features/ingestion-no-nil' into 'develop'
...
ObjectValidator.stringify_keys: filter out nil values
See merge request pleroma/pleroma!3506
2021-08-28 16:07:35 +00:00
Haelwenn
6633ec816f
Merge branch 'admin_fe_dont_list_mrf_policies_any_more' into 'develop'
...
Selecting MRF policies didn't work as intended any more
Closes admin-fe#198
See merge request pleroma/pleroma!3509
2021-08-28 16:06:35 +00:00
Haelwenn
2d9f803dc6
Merge branch 'StealEmojiMRF_add_adminFE' into 'develop'
...
Add Admin-FE menu for StealEmojiPolicy
See merge request pleroma/pleroma!3512
2021-08-14 18:40:24 +00:00
Haelwenn
773708cfe8
Merge branch 'builder-note' into 'develop'
...
CommonAPI.Utils.make_note_data/1 --> ActivityPub.Builder.note/1
See merge request pleroma/pleroma!3511
2021-08-14 18:32:40 +00:00
Alex Gleason
ba6049aa81
Builder.note/1: return {:ok, map(), keyword()} like other Builder functions
2021-08-14 11:24:55 -05:00
Sam Therapy
b901b73057
Add Admin-FE menu for StealEmojiPolicy
2021-08-14 11:08:39 -05:00
Alex Gleason
a2eacfc525
CommonAPI.Utils.make_note_data/1 --> ActivityPub.Builder.note/1
2021-08-14 11:01:06 -05:00
Ilja
5049b4272e
Selecting MRF policies didn't work as intended any more
...
* Policies were put under a new module (Pleroma.Web.ActivityPub.MRF.Policy instead of Pleroma.Web.ActivityPub.MRF), but this wasn't changed in the Pleroma.Web.ActivityPub.MRF @mrf_config_descriptions
* I don't have a unit test to prevent similar problems in the future because I don't find a proper way to do it
* The descriptions in the unit tests are defined in the unit tests, so if someone changes module names in the code, the tests wont see it
* The list is generated in Pleroma.Docs.Generator.list_behaviour_implementations, but I can't do a check in the when clause of the function to see if the provided module is a behaviour or not.
2021-08-14 13:42:32 +02:00
Haelwenn (lanodan) Monnier
8baaa36a16
ObjectAgePolicy: Fix pattern matching on published
...
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3500
2021-08-13 17:56:46 +02:00
kPherox
34606d609d
fix: stream out Create Activity
...
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3499
2021-08-13 17:54:51 +02:00
Haelwenn (lanodan) Monnier
61d233921c
ObjectValidator.stringify_keys: filter out nil values
2021-08-11 21:38:10 +02:00
Haelwenn
8679a57a71
Merge branch 'bugfix/object-age-create' into 'develop'
...
ObjectAgePolicy: Fix pattern matching on published
See merge request pleroma/pleroma!3500
2021-08-10 18:16:02 +00:00
Haelwenn (lanodan) Monnier
c64eae40a2
ObjectAgePolicy: Fix pattern matching on published
2021-08-10 07:41:06 +02:00
Haelwenn
f4af74b0fc
Merge branch 'fix/streaming-api-for-create-activity' into 'develop'
...
fix: stream out Create Activity
Closes #2691
See merge request pleroma/pleroma!3499
2021-08-09 19:10:05 +00:00
Haelwenn
901204df22
Merge branch 'poll-notification' into 'develop'
...
MastodonAPI: Support poll notification
See merge request pleroma/pleroma!3484
2021-08-09 10:02:37 +00:00
kPherox
ee5def34da
fix: stream out Create Activity
2021-08-09 18:37:48 +09:00
Egor Kislitsyn
ad09bdb376
Improve readability
2021-08-06 07:59:54 +02:00
Ilja
b0926a71b2
Make transparency_exclusions use tuples in admin-fe
...
* Make it use tuples
* I also changed the keys for key_placeholder and value_placeholder to use snake_case instead of camelCase
2021-08-06 07:59:53 +02:00
Ilja
f4028c908c
Add key- and valuePlaceholders for quarantined_instances and mrf_simple
...
* I also added for keywordpolicy as well now. It was done in the admin-fe, but is better to be done here
* I also added comments to explain why we did the _info keys (backwards compatibility)
2021-08-06 07:59:53 +02:00
Ilja
47fc57bbcc
Change what nodeinfo returns without breaking backwards compatibility
...
* Only for SimplePolicy for now
* I added an extra mrf_simple_info key that has an object as value. The object contains only relevant extra info
2021-08-06 07:59:53 +02:00
Ilja
7fdc3cde06
Return maps in node_info
...
It's easiest (and imo most proper) to use tuples {"instance, "reason"} in BE,
but for FE maps like %{"instance": "instance", "reason", "reason"} are better.
I changed it so that node_info returns maps now for simple_policy and quarantined instances.
2021-08-06 07:59:53 +02:00
Ilja
dfeb3862da
config :mrf, :transparency_exclusions works with tumples now
2021-08-06 07:59:52 +02:00
Ilja
27fe7b0274
Make quarentine work with list of tuples instead of strings
2021-08-06 07:59:52 +02:00
Ilja
4ba0beb60c
Make mrfSimple work with tuples
...
* Changed SimplePolicy
* I also grepped in test/ for ':mrf_simple' to see what other things could be affected
2021-08-06 07:58:58 +02:00
Alex Gleason
7f23dd6cc8
Merge remote-tracking branch 'pleroma/develop' into object-tombstone-visibility
2021-07-27 08:54:26 -05:00
Alex Gleason
9cc8642b80
Visibility: check Tombstone objects in visible_for_user?/2
2021-07-27 08:54:01 -05:00
Alex Gleason
62bf6d67e3
Merge remote-tracking branch 'pleroma/develop' into poll-notification-fixes
2021-07-18 11:49:22 -05:00
Alex Gleason
0b1c05ca1e
Poll notification: trigger PollWorker through common_pipeline
2021-07-18 11:10:23 -05:00
Alex Gleason
0114754db2
MastodonAPI: Support poll notification
2021-07-17 22:19:38 -05:00
Haelwenn
173e977e28
Merge branch 'features/ingestion-page' into 'develop'
...
Pipeline Ingestion: Page
See merge request pleroma/pleroma!3097
2021-07-12 05:05:49 +00:00
Haelwenn (lanodan) Monnier
6dc78f5f6f
AP C2S: Remove restrictions and make it go through pipeline
2021-07-12 06:49:41 +02:00
Alex Gleason
99cc26bb02
Merge remote-tracking branch 'pleroma/develop' into remote-deletions
2021-06-30 02:02:30 -05:00
Alex Gleason
43800d83f4
Deletions: allow deactivated users to be deleted
2021-06-30 01:32:28 -05:00
Alex Gleason
3a03d9b65f
Merge remote-tracking branch 'pleroma/develop' into nsfw-api-mrf
2021-06-17 15:38:10 -05:00
Alex Gleason
a704d5499c
NsfwApiPolicy: Fall back more generously when functions don't match
2021-06-17 15:32:42 -05:00
Alex Gleason
b293c14a1b
NsfwApiPolicy: add describe/0 and config_description/0
2021-06-17 14:52:07 -05:00
Alex Gleason
2b3dfbb42f
NsfwApiPolicy: add tests
2021-06-17 14:36:51 -05:00
Alex Gleason
f15d419062
NsfwApiPolicy: raise if can't fetch user
2021-06-16 22:35:09 -05:00
Alex Gleason
718e8e1edb
Create NsfwApiPolicy
2021-06-16 22:35:04 -05:00
Haelwenn (lanodan) Monnier
c839078a75
ObjectValidators.{Announce,EmojiReact,Like}: Fix context, actor & addressing
2021-06-09 04:23:02 +02:00
Alex Gleason
67ec0e6c18
Switch to runtime deps in ActivityPub.SideEffects
...
Speeds up recompilation by reducing compile cycles
2021-06-08 18:18:25 -05:00
Alex Gleason
6fcfa33e4e
Fix MRF.config_descriptions/0
2021-06-07 14:52:57 -05:00
Alex Gleason
fe4c4a7178
MRF: create MRF.Policy behaviour separate from MRF module
...
Speeds up recompilation by reducing compile-time deps
2021-06-07 14:22:08 -05:00
Haelwenn (lanodan) Monnier
eb7313b0d3
Pipeline Ingestion: Page
2021-06-04 20:06:33 +02:00
Haelwenn (lanodan) Monnier
11844084d0
MIME.valid?(type) → is_bitstring(type) && MIME.extensions(type) != []
...
Since mime 1.6.0:
warning: MIME.valid?/1 is deprecated. Use MIME.extensions(type) != [] instead
As for the bitstring(type) part it's because MIME.extensions only expects a string.
https://github.com/elixir-plug/mime/issues/43
2021-06-03 19:11:17 +02:00
Alex Gleason
708210b994
Merge remote-tracking branch 'pleroma/develop' into cycles-streaming
2021-06-01 13:56:40 -05:00
Alex Gleason
a744c47e9a
Remove deps from Streaming/Persisting behaviors
...
Speeds up recompilation by limiting compile-time deps
2021-06-01 13:55:07 -05:00
Alex Gleason
c435de426d
Merge remote-tracking branch 'pleroma/develop' into cycles-constants
2021-06-01 11:33:11 -05:00
feld
0ddf492c5d
Merge branch 'cycles-base-url' into 'develop'
...
Deprecate Pleroma.Web.base_url/0
See merge request pleroma/pleroma!3432
2021-06-01 16:15:27 +00:00
Haelwenn
c4b4258374
Merge branch 'features/validators-note' into 'develop'
...
Pipeline Ingestion: Note
Closes #290
See merge request pleroma/pleroma!2984
2021-06-01 01:51:38 +00:00
Alex Gleason
f2134e605b
Merge remote-tracking branch 'pleroma/develop' into cycles-base-url
2021-05-31 16:49:46 -05:00
Alex Gleason
51a9f97e87
Deprecate Pleroma.Web.base_url/0
...
Use Pleroma.Web.Endpoint.url/0 directly instead. Reduces compiler cycles.
2021-05-31 16:48:03 -05:00
Alex Gleason
10dfe81479
Pleroma.Constants.as_local_public/0 --> Pleroma.Web.ActivityPub.Utils.as_local_public/0
...
Move as_local_public/0 to stop making modules depend on Web at compile-time
2021-05-31 13:39:15 -05:00
Alex Gleason
0de6716f06
Merge remote-tracking branch 'pleroma/develop' into cycles-pipeline
2021-05-29 13:32:57 -05:00
Alex Gleason
fa543a9361
ActivityPub.Pipeline: switch to runtime deps
...
Speed up recompilation by breaking compile-time cycles
2021-05-29 13:25:11 -05:00
feld
359ded086c
Merge branch 'simplepolicy-announce-leak' into 'develop'
...
SimplePolicy: filter nested objects, fixes #2582
Closes #2582
See merge request pleroma/pleroma!3376
2021-05-28 19:05:13 +00:00
Mark Felder
4694853766
Provide totalItems field for featured collections
2021-05-27 12:17:31 -05:00
Alex Gleason
bcf6efce15
Merge remote-tracking branch 'upstream/attachment-meta' into blurhash
2021-05-14 09:09:32 -05:00
Alex Gleason
543e9402d6
Support blurhash
2021-05-14 09:07:16 -05:00
Alex Gleason
ff02511057
Merge remote-tracking branch 'upstream/develop' into attachment-meta
2021-05-12 20:10:52 -05:00
Alex Gleason
6f0b42656d
Federate attachments as Links instead of Documents
2021-05-12 19:25:37 -05:00
Alex Gleason
4c060ae733
Ingest remote attachment width/height
2021-05-12 15:38:49 -05:00
Alex Gleason
cea44b6b3e
Merge remote-tracking branch 'upstream/develop' into simplepolicy-announce-leak
2021-05-07 12:40:45 -05:00
Alex Gleason
926a233cc4
Merge remote-tracking branch 'upstream/develop' into simplepolicy-announce-leak
2021-04-30 14:21:17 -05:00
Alex Gleason
c16c7fdb87
SimplePolicy: filter string Objects
2021-04-30 14:20:54 -05:00
Alex Gleason
3d742c3c1a
SimplePolicy: filter nested objects
2021-04-30 14:20:37 -05:00
Alex Gleason
52fc59f125
Merge remote-tracking branch 'upstream/develop' into earmark
2021-04-30 13:17:03 -05:00
Alex Gleason
6727a3659f
Remove Pleroma.Formatter.minify/2
2021-04-30 12:27:06 -05:00
Alex Gleason
762be6ce10
Merge remote-tracking branch 'upstream/develop' into block-behavior
2021-04-29 11:14:32 -05:00
Mark Felder
9f711ddcf8
Try to set query timeout intelligently
2021-04-22 10:15:50 -05:00
Mark Felder
0effcd2cfe
Set Repo.transaction/2 timeout to infinity. Fixes pleroma.user delete_activities mix task.
2021-04-22 10:15:50 -05:00
rinpatch
15f87cf658
Merge branch 'features/ingestion-ecto-tag' into 'develop'
...
TagValidator: New
See merge request pleroma/pleroma!3244
2021-04-16 09:55:55 +00:00
rinpatch
79376b4afb
Merge branch 'feature/521-pinned-post-federation' into 'develop'
...
Pinned posts federation
Closes #521
See merge request pleroma/pleroma!3312
2021-04-16 09:53:47 +00:00
Haelwenn (lanodan) Monnier
53193b84b1
utils: Fix maybe_splice_recipient when "object" isn’t a map
2021-04-05 19:19:12 +02:00
Haelwenn (lanodan) Monnier
6c9f6e62c8
transmogrifier: Fixing votes from Note to Answer
2021-04-05 19:19:12 +02:00
Haelwenn (lanodan) Monnier
d1205406d9
ActivityPubControllerTest: Apply same addr changes to object
2021-04-05 19:19:12 +02:00
Haelwenn (lanodan) Monnier
96212b2e32
Fix addressing
2021-04-05 19:19:12 +02:00
Haelwenn (lanodan) Monnier
641184fc7a
recipients fixes/hardening for CreateGenericValidator
2021-04-05 19:19:11 +02:00
Haelwenn (lanodan) Monnier
c944932674
Pipeline Ingestion: Note
2021-04-05 19:19:11 +02:00
Haelwenn (lanodan) Monnier
e2a3365b5c
ObjectValidator.CommonFixes: Introduce fix_objects_defaults and fix_activity_defaults
2021-04-05 19:19:11 +02:00
Haelwenn (lanodan) Monnier
e56779dd8d
Transmogrifier: Simplify fix_explicit_addressing and fix_implicit_addressing
2021-04-05 19:19:11 +02:00
Haelwenn (lanodan) Monnier
ef36f7fa5c
Move tag fixup to object_validator
2021-04-05 19:07:45 +02:00
Haelwenn (lanodan) Monnier
7ebfe89900
object_validators: Mark validate_data as private
2021-04-01 14:18:41 +02:00
Haelwenn (lanodan) Monnier
37a7f521fd
Insert string-hashtags in Pipeline
...
Cannot be done in Ecto schemas because only one type is allowed in arrays, and
needs to be done before the MRFs.
2021-04-01 14:18:41 +02:00
Haelwenn (lanodan) Monnier
5ae27c8451
pipeline_test: Fix usage of %Activity{}
2021-04-01 14:18:40 +02:00
Haelwenn (lanodan) Monnier
9015df2229
TagValidator: New
2021-04-01 14:18:40 +02:00
rinpatch
ce9ed6c730
Merge branch 'refactor/object_validator_validate' into 'develop'
...
object_validator: Refactor most of validate/2 to a generic block
See merge request pleroma/pleroma!3383
2021-04-01 11:10:12 +00:00
Haelwenn (lanodan) Monnier
af1cd28f9b
object_validator: Refactor most of validate/2 to a generic block
2021-04-01 12:18:52 +02:00
Mark Felder
03f38ac4eb
Prefer FollowBot naming convention vs Followbot
2021-03-30 11:10:44 -05:00
Mark Felder
4796df0bc3
Remove Task.async as it is broken here and probably a premature optimization anyway
2021-03-30 11:10:44 -05:00
Mark Felder
778010ef8e
Do not try to follow local users. Their posts are already available locally on the instance.
2021-03-30 11:10:44 -05:00
Mark Felder
86182ef8e4
Change module name to FollowbotPolicy
2021-03-30 11:10:44 -05:00
Mark Felder
f0dcc1ca69
Lint
2021-03-30 11:10:44 -05:00
Mark Felder
a176914c73
Better checking of previous follow request attempts
2021-03-30 11:10:44 -05:00
Mark Felder
3989ec508c
Prevent duplicates from being processed
2021-03-30 11:10:44 -05:00
Mark Felder
3949cfdc24
Make the followbot only dispatch follow requests once per 30 day period
2021-03-30 11:10:43 -05:00
Mark Felder
e78738173a
Enforce that the followbot must be marked as a bot.
2021-03-30 11:10:43 -05:00
Mark Felder
fba770b3ea
Try to handle misconfiguration scenarios gracefully
2021-03-30 11:10:03 -05:00
Mark Felder
8b81d62227
Upstream original followbot implementation
2021-03-30 11:10:03 -05:00
Alexander Strizhakov
1885268c9c
expanding validator
2021-03-25 13:26:54 +03:00
Alexander Strizhakov
2a520ba008
expanding AddRemoveValidator
2021-03-25 13:03:42 +03:00
Alexander Strizhakov
8857242c95
removeing corresponding add activity
2021-03-25 13:03:41 +03:00
Alexander Strizhakov
3adb43cc20
refetch user on incoming add/remove activity
...
if featured_address is nil
2021-03-25 13:03:41 +03:00
Alexander Strizhakov
d1d2744ee3
featured_address valition in AddRemoveValidator
2021-03-25 13:03:40 +03:00
Alexander Strizhakov
ff612750b1
validator renaming & add validation for target
2021-03-25 13:03:40 +03:00
Alexander Strizhakov
17f28c0507
mastodon pins
2021-03-25 13:03:40 +03:00
Alexander Strizhakov
3ec1dbd922
Let pins federate
...
- save object ids on pin, instead of activity ids
- pins federation
- removed pinned_activities field from the users table
- activityPub endpoint for user pins
- pulling remote users pins
2021-03-25 13:03:40 +03:00
rinpatch
f930e83fa2
Merge branch 'fix/remove_auto_nsfw' into 'develop'
...
Remove sensitive setting #nsfw
See merge request pleroma/pleroma!3223
2021-03-19 08:48:22 +00:00
rinpatch
67bde35e71
Merge branch 'bugfix/bridgy-user-icon' into 'develop'
...
Add support for actor icon being a list (Bridgy)
See merge request pleroma/pleroma!3372
2021-03-19 08:36:26 +00:00
Haelwenn (lanodan) Monnier
b1d4b2b81e
Add support for actor icon being a list (Bridgy)
2021-03-15 06:44:05 +01:00
Ivan Tashkinov
7f8785fd9b
[ #3213 ] Performance optimization of filtering by hashtags ("any" condition).
2021-03-07 11:33:21 +03:00
Ivan Tashkinov
5856f51717
[ #3213 ] ActivityPub hashtags filtering refactoring. Test fix.
2021-03-03 23:09:30 +03:00
Ivan Tashkinov
882dd46843
Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework
2021-03-02 08:26:30 +03:00
Haelwenn (lanodan) Monnier
3bc7d12271
Remove sensitive-property setting #nsfw, create HashtagPolicy
2021-02-27 21:26:17 +01:00
Ivan Tashkinov
77f3da0358
[ #3213 ] Misc. tweaks: proper upsert in Hashtag, better feature toggle management.
2021-02-23 13:52:28 +03:00
Ivan Tashkinov
6531eddf36
[ #3213 ] `hashtags`: altered `name` type to `text`. `hashtags_objects`: removed unused index. HashtagsTableMigrator: records_per_second calculation fix. ActivityPub: hashtags-related options normalization.
2021-02-22 23:26:07 +03:00
Haelwenn (lanodan) Monnier
7fc9cd0974
Video: Handle peertube videos only stashing attachments in x-mpegURL
...
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/2535
2021-02-21 23:41:28 +01:00
Ivan Tashkinov
998437d4a4
[ #3213 ] Experimental / debug feature: `database: [improved_hashtag_timeline: :preselect_hashtag_ids]`.
2021-02-18 21:03:06 +03:00
Ivan Tashkinov
1dac7d1462
[ #3213 ] Fixed `hashtags.name` lookup (must use `citext` type to do index scan). Fixed embedded hashtags lookup (lowercasing), adjusted tests.
2021-02-15 21:13:14 +03:00
Ivan Tashkinov
5992382cf8
Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework
...
# Conflicts:
# CHANGELOG.md
# lib/mix/tasks/pleroma/database.ex
# lib/pleroma/web/templates/feed/feed/_activity.rss.eex
2021-02-11 19:31:57 +03:00
rinpatch
a853218701
Merge branch 'features/ap_id-c2s-authentication' into 'develop'
...
activity_pub_controller: Add authentication to object & activity endpoints
See merge request pleroma/pleroma!3295
2021-02-09 19:29:43 +00:00
Haelwenn
a5bee1bf35
Merge branch 'feat/mrf-noemptypolicy' into 'develop'
...
MRF NoEmptyPolicy: Deny posts from local users if there is no content or only mentions.
See merge request pleroma/pleroma!3309
2021-02-08 21:49:20 +00:00
Mark Felder
55a13fc360
MRF NoEmptyPolicy: Deny posts from local users if there is no content or only mentions.
...
Helps prevent accidental button mashes from submitting incomplete posts
2021-02-08 15:32:47 -06:00
Haelwenn (lanodan) Monnier
8c7b3b20d8
activity_pub_controller: Add authentication to object & activity endpoints
2021-02-08 20:00:47 +01:00
Ivan Tashkinov
d1c6dd97aa
[ #3213 ] Partially addressed code review points.
...
migration rollback task changes, hashtags-related config handling tweaks, `hashtags.data` deletion (unused).
2021-02-07 22:24:12 +03:00
Mark Felder
76f732766b
Exclude reporter from receiving notifications from their own reports.
...
Currently only works if the reporting actor is an admin, but if we include
moderators with those who receive notification reports it will work for them.
2021-02-03 12:32:44 -06:00
feld
8d2ea95402
Merge branch 'feature/2438-users-posts-total-count' into 'develop'
...
Feature/2438 users/instances posts total count
Closes #2438
See merge request pleroma/pleroma!3270
2021-02-03 14:21:57 +00:00
Ivan Tashkinov
4e14945670
Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework
...
# Conflicts:
# CHANGELOG.md
# lib/pleroma/web/activity_pub/activity_pub.ex
2021-02-03 09:31:38 +03:00
Alexander Strizhakov
fdf1dfed56
only_remote -> remote renaming
2021-02-01 14:11:12 +03:00
Alexander Strizhakov
c3110c46f3
expanding filtration for home timeline
...
added local & remote statuses filtration for home timeline
2021-02-01 14:11:11 +03:00
Ivan Tashkinov
cf4765af40
[ #3213 ] ActivityPub: fixed subquery-based hashtags filtering implementation (addressed empty list options issue). Added regression test.
2021-01-31 23:06:38 +03:00
Ivan Tashkinov
10207f840c
[ #3213 ] ActivityPub: temporarily reverted to previous hashtags filtering implementation due to blank results issue.
2021-01-31 22:36:46 +03:00
Ivan Tashkinov
6fd4163ab6
[ #3213 ] ActivityPub: implemented subqueries-based hashtags filtering, removed aggregation-based hashtags filtering.
2021-01-31 20:37:33 +03:00
Ivan Tashkinov
380d0cce6b
[ #3213 ] Reinstated DISTINCT clause for hashtag "any" filtering with 2+ terms. Added test.
2021-01-29 00:17:33 +03:00
Alexander Strizhakov
d4158e8bf0
added total
...
to the instance adminAPI endpoint
2021-01-27 07:45:06 +03:00
Alexander Strizhakov
6806c03e85
added total
...
to the user statuses adminAPI endpoint
2021-01-27 07:45:02 +03:00
Ivan Tashkinov
e7864a32d7
[ #3213 ] Removed DISTINCT clause from ActivityPub.fetch_activities_query/2.
2021-01-25 22:31:23 +03:00
Ivan Tashkinov
694d98be55
Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework
2021-01-25 21:24:07 +03:00
Mark Felder
537ba1c5e0
Merge branch 'develop' into refactor/deactivated_user_field
2021-01-25 09:45:06 -06:00
Ivan Tashkinov
c041e9c630
[ #3213 ] HashtagsTableMigrator: failures handling fix, retry function.
...
Changed default hashtags filtering strategy to non-aggregate approach.
2021-01-21 20:23:08 +03:00
Ivan Tashkinov
2634a16b4c
Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework
...
# Conflicts:
# CHANGELOG.md
2021-01-21 20:20:35 +03:00
Alexander Strizhakov
6d48144a9d
use proper naming
...
for MediaProxyWarmingPolicy in ConcurrentLimiter
2021-01-21 09:50:18 +03:00
Ivan Tashkinov
48b399cedb
[ #3213 ] Refactoring of HashtagsTableMigrator. Hashtag timeline performance optimization (auto switch to non-aggregate join strategy when efficient).
2021-01-16 20:22:14 +03:00
Mark Felder
860b5c7804
Change user.deactivated field to user.is_active
2021-01-15 11:24:46 -06:00
Ivan Tashkinov
e350898828
Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework
2021-01-13 22:11:16 +03:00
Ivan Tashkinov
3e4d84729a
[ #3213 ] Prototype of data migrations functionality / HashtagsTableMigrator.
2021-01-13 22:07:38 +03:00
Haelwenn (lanodan) Monnier
c4439c630f
Bump Copyright to 2021
...
grep -rl '# Copyright © .* Pleroma' * | xargs sed -i 's;Copyright © .* Pleroma .*;Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/ >;'
2021-01-13 07:49:50 +01:00
lain
80167e62dd
Merge branch 'fix/missing_emoji_steal_dir' into 'develop'
...
Create dir for EmojiStealPolicy automatically
See merge request pleroma/pleroma!3218
2021-01-08 13:10:49 +00:00
lain
cf0eb0c1c5
Merge branch 'object-normalize-refactor' into 'develop'
...
Object: Rework how Object.normalize works
See merge request pleroma/pleroma!3229
2021-01-07 11:09:18 +00:00
Alex Gleason
1438fd9583
Merge remote-tracking branch 'upstream/develop' into block-behavior
2021-01-06 15:22:35 -06:00
Mark Felder
64116f63d9
URI.encode custom emojis
2021-01-05 12:29:51 -06:00
lain
20a269ed69
Merge branch 'fix/pagination-regression' into 'develop'
...
Do not try to guess which pagination we need by the existence of an :offset param.
Closes #2399
See merge request pleroma/pleroma!3230
2021-01-05 12:40:45 +00:00
lain
f0e6cff583
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into 1526-account-aliases
2021-01-05 12:42:30 +01:00
lain
d44850d7a5
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into object-normalize-refactor
2021-01-05 10:48:32 +01:00
lain
8e5904daa5
SideEffects.DeleteTest: asyncify.
...
Replace Mock with Mox, mock out Logger.
2021-01-04 18:40:59 +01:00
Mark Felder
83f27282ba
Do not try to guess which pagination we need by the existence of an :offset param.
...
Require explicit request to get offset pagination.
2021-01-04 10:13:17 -06:00
lain
e1e7e4d379
Object: Rework how Object.normalize works
...
Now it defaults to not fetching, and the option is named.
2021-01-04 13:38:31 +01:00
feld
2aa60e7592
Apply 1 suggestion(s) to 1 file(s)
2020-12-31 09:58:43 -06:00
Ivan Tashkinov
303055456f
Alternative implementation of hashtag-filtering queries in ActivityPub. Fixed GROUP BY clause for aggregation on hashtags.
2020-12-31 12:45:23 +03:00
Alex Gleason
11d40e92b7
Render AKAs in Actor endpoints
2020-12-30 18:53:27 -06:00
Mark Felder
2597b028f7
Make pagination type conditional
2020-12-30 16:37:04 -06:00