Commit Graph

6996 Commits

Author SHA1 Message Date
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
Tusooa Zhu 06da000c5d
Add editing to features 2022-06-21 12:32:44 -04:00
Ilja 4e4eb81749 Add nodes and privileges to nodeinfo
I didn't add it to /api/v1/instance
I was wondering if I should, but since it e.g. also didn't show staff, it felt better not to
2022-06-21 12:10:27 +02:00
Ilja 211e561e2a Show privileges to FE
I added an extra key
We already had is_admin and is_moderator, now we have an extra privileges key
2022-06-21 12:10:27 +02:00
Ilja 143ea7b80a Add deactivated status for privileged users
Deactivated users are only visible to users privileged with :user_activation since fc317f3b17
Here we also make sure the users who are deactivated get the status deactivated for users who are allowed to see these users
2022-06-21 12:10:27 +02: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 eab13fed3e Hide pleroma:report for non-privileged users
Before we deleted the notifications, but that was a side effect and didn't always trigger any more.
Now we just hide them when an unprivileged user asks them.
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
Ilja 7cf473c500 delete statusses is now privileged by :status_delete
Instead of superusers, you now need a role with privilige :status_delete to delete other users statusses
I also cleaned up some other stuff I saw
2022-06-21 12:10:27 +02:00
Ilja c842e62675 Add last priviliges
I still had three endpoints I didn't really know what to do with them. I added them under separate tags
* :instance_delete
* :moderation_log_read
* :stats_read

I also checked and these are the last changes done by MR https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3480/diffs this is trying to fix
2022-06-21 12:10:27 +02:00
Ilja ecd42a2ce1 Add privilige :emoji_management 2022-06-21 12:10:27 +02:00
Ilja 0ee8f33250 Add privilige :status_delete
It also allows to update a message, so it's not just deleting. I need a better name...
2022-06-21 12:10:27 +02:00
Ilja 34a98990db last off :statuses_read
From the endpoints left to do, I believe these should be under :statuses_read.
These should be the last for that privilege for this MR
2022-06-21 12:10:27 +02:00
Ilja cbb26262a5 Add privileges for :user_read 2022-06-21 12:10:27 +02:00
Ilja 3f26f1b30f Add privileges for :report_handle 2022-06-21 12:10:27 +02:00
Ilja 14e697a64f Add privileges for :user_invite 2022-06-21 12:10:27 +02:00
Ilja e102d25d23 Add privileges for :user_activation 2022-06-21 12:10:27 +02:00
Ilja cb60cc4e02 Add privileges for :user_tag 2022-06-21 12:10:27 +02:00
Ilja 5a65e2dac5 Remove privileged_staff
Everything that was done through this setting, can now be set by giving the proper privileges to the roles.
2022-06-21 12:10:27 +02:00
Ilja b1ff5241c2 Add priviledges for :statuses_read
This was the last in :require_privileged_staff. I'll remove that in the next commit
2022-06-21 12:10:27 +02:00
Ilja 8a9144ca8b Add priviledges for :user_credentials
I only moved the ones from the :require_privileged_staff block for now
2022-06-21 12:10:27 +02:00
Ilja 9f6c364759 Add privilege :user_deletion 2022-06-21 12:10:27 +02:00
Ilja 5b19543f0a Add new setting and Plug to allow for privilege settings for staff 2022-06-21 12:10:26 +02:00
marcin mikołajczak b0f83aea29 Store mutes expiration date
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-06-16 20:38:37 +02:00
Tusooa Zhu 44613db853
Show original status at the first of history 2022-06-11 19:52:07 -04:00
Tusooa Zhu 95b3922328
Workaround with_index does not support function in Elixir 1.9 2022-06-11 17:02:29 -04:00
Tusooa Zhu 7451f0e81f
Send the correct update in streamer
get_create_by_ap_id_with_object() seems to fetch the old object.
Why this happens needs further investigation.
2022-06-11 12:02:16 -04:00
Tusooa Zhu 27f3d802f2
Expose history and source apis to anon users 2022-06-11 10:35:36 -04:00
Tusooa Zhu c3593639ad
Fix incorrectly cached content after editing 2022-06-09 11:39:51 -04:00
Tusooa Zhu aafd7a687d
Return the corresponding object id in attachment view 2022-06-08 11:45:24 -04:00
Tusooa Zhu 532f6ae3ed
Return update notification in mastodon api 2022-06-05 16:34:42 -04:00
Tusooa Zhu fe2d4778ee
Expose content type of status sources 2022-06-04 12:57:30 -04:00
Tusooa Zhu 3249ac1f12
Show edited_at in MastodonAPI/show 2022-06-03 21:47:40 -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
marcin mikołajczak b354d70e85 Apply, suggestions, use strings for actual Mastodon API compatibility
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-30 12:30:03 +02:00
Tusooa Zhu 393b508846
Implement viewing source 2022-05-30 00:59:23 -04: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
marcin mikołajczak 384f8bfa78 Instance rules: Use render_many
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-16 14:02:40 +02:00
marcin mikołajczak 432599311d Add GET /api/v1/instance/rules
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-16 14:02:36 +02:00
marcin mikołajczak bd52e2aec7 Instance rules
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-16 14:02:32 +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
Tusooa Zhu e2d24eda57 Allow to skip cache in Cache plug
Ref: fix-local-public
2022-05-06 10:23:26 +02:00
Tusooa Zhu fa3157df96 Skip cache when /objects or /activities is authenticated
Ref: fix-local-public
2022-05-06 08:44:03 +02:00
Tusooa Zhu 4d482b765f Allow to skip cache in Cache plug
Ref: fix-local-public
2022-05-06 08:39:42 +02:00
marcin mikołajczak 9423052e92 Add "status" notification type
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-04-25 14:08:31 +02:00
Tusooa Zhu be08d9305b
Fix incorrect fallback when English is set to first language 2022-04-17 22:39:52 -04:00
Tusooa Zhu 7d1dae3bef
Restrict mastodon api announcements to logged-in users only 2022-04-02 02:25:13 -04:00
marcin mikołajczak fbf9eced11 Add short_description field
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-03-29 14:04:27 +02:00
Haelwenn d7c53da77a Merge branch 'from/upstream-develop/tusooa/translate-pages' into 'develop'
Translate backend-rendered pages

See merge request pleroma/pleroma!3634
2022-03-20 18:14:37 +00: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
marcin mikołajczak 31ff467eff Use `types` for filtering notifications
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-03-16 21:15:44 +01:00
marcin mikołajczak ffe081bf44 Use reject_follow_request
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-03-16 19:18:15 +01:00
marcin mikołajczak 6754d1f272 POST /api/v1/accounts/:id/remove_from_followers
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-03-16 16:52:33 +01:00
Tusooa Zhu ebcda5265b
Format announcements into html 2022-03-08 23:00:51 -05:00
Tusooa Zhu eb1a29640f
Add pagination to AdminAPI.AnnouncementController.index 2022-03-08 21:26:05 -05:00
Tusooa Zhu 11a1996bf5
Implement update announcement admin api 2022-03-08 20:55:41 -05:00
Tusooa Zhu 881179ec72
Remove GET /api/v1/announcements/:id 2022-03-08 19:22:28 -05:00
Tusooa Zhu d569694ae9
Show only visible announcements in MastodonAPI 2022-03-08 19:20:29 -05:00
Tusooa Zhu cf8334dbc1
Add starts_at, ends_at and all_day parameters 2022-03-08 19:12:01 -05:00
Tusooa Zhu 009817c9ee
Correct docstring for AnnouncementController.show 2022-03-08 17:00:49 -05:00
Tusooa Zhu 2b39b36e49
Implement POST /api/v1/announcements/:id/dismiss 2022-03-08 16:59:20 -05:00
Tusooa Zhu aa1fff279e
Implement GET /api/v1/announcements/:id 2022-03-08 16:19:35 -05:00
Tusooa Zhu 5169ad8f14
Implement announcement read relationships 2022-03-08 13:09:49 -05:00
Tusooa Zhu c867d23250
Fill properties of announcements from Mastodon API spec 2022-03-08 09:35:35 -05:00
Tusooa Zhu d7af67012f
Implement first pass of announcement admin api
CCBUG: https://git.pleroma.social/pleroma/pleroma/-/issues/2836
CCBUG: https://git.pleroma.social/pleroma/pleroma/-/issues/1470
2022-03-08 01:01:27 -05:00
Tusooa Zhu 79ccb6b999
Support fallbacking to other languages 2022-03-06 11:43:31 -05:00
Tusooa Zhu cd42e2bed0
Lint 2022-03-03 09:49:55 -05:00
Tusooa Zhu aca11fb70e
Support multiple locales from userLanguage cookie 2022-03-03 02:31:36 -05:00
Tusooa Zhu 7ea330b4fe
Support multiple locales formally
elixir gettext current does not fully support fallback to another language [0].
But it might in the future. We adapt it so that all languages in Accept-Language
headers are received by Pleroma.Web.Gettext. User.languages is now a comma-separated
list.

[0]: https://github.com/elixir-gettext/gettext/issues/303
2022-03-03 02:03:44 -05:00
Tusooa Zhu d3f3f30c6a
Make lint happy 2022-03-02 22:56:19 -05:00
Tusooa Zhu 8de573b047
Fallback to a variant if the language in general is not supported
For an example, here, zh is not supported, but zh_Hans and zh_Hant
are. If the user asks for zh, we should choose a variant for them
instead of fallbacking to default.

Some browsers (e.g. Firefox) does not allow users to customize
their language codes. For example, there is no zh-Hans, but only
zh, zh-CN, zh-TW, zh-HK, etc. This provides a workaround for
those users suffering from bad design decisions.
2022-03-02 19:59:11 -05:00
Tusooa Zhu e644f8dea5
Allow user to register with custom language 2022-03-02 01:41:13 -05:00
Tusooa Zhu 396f036b13
Allow update_credentials to update User.language 2022-03-02 00:58:02 -05:00
Tusooa Zhu 0149ea4538
Send emails i18n'd using backend-stored user language 2022-03-01 22:19:13 -05:00
Tusooa Zhu 1deab33fb0
Make mail and mailer translatable 2022-03-01 19:17:11 -05:00
Tusooa Zhu 32e4aa42d3
Make static fe translatable 2022-03-01 18:48:08 -05:00
Tusooa Zhu fdbf9b06e5
Fix tests 2022-02-28 11:23:15 -05:00
Tusooa Zhu cadca083ea
Make mfa pages translatable 2022-02-28 11:07:28 -05:00
Tusooa Zhu 50a316cd63
Make oauth pages translatable 2022-02-28 02:11:57 -05:00
Tusooa Zhu f63d9b7835
Use proper lang attributes in htmls 2022-02-28 01:28:23 -05:00
Tusooa Zhu 0cc6557716
Make tag feed translatable 2022-02-28 01:13:39 -05:00
Tusooa Zhu 1edbda39e1
Make password reset pages translatable 2022-02-28 01:04:04 -05:00
Sean King 17aa3644be
Copyright bump for 2022 2022-02-25 23:11:42 -07:00
Tusooa Zhu 9f4c5743e8
Make lint happy 2022-02-21 19:12:32 -05:00
Tusooa Zhu a867107437
Make remote follow pages translatable 2022-02-21 18:43:45 -05:00
Tusooa Zhu 0fd3695b9c
Prefer userLanguage cookie over Accept-Language header in detecting locale
https://git.pleroma.social/pleroma/pleroma-meta/-/issues/60
2022-02-21 18:02:19 -05:00
marcin mikołajczak e473bcf7a0 Max media attachment count
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-02-06 17:41:15 +01: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
marcin mikołajczak ab12a05a43 AccountView: Add test for show_birthday
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-25 17:34:36 +01:00
marcin mikołajczak c1ae35ff2c Fix show_birthday
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-25 17:04:41 +01: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
Finn Behrens 8328289619 Add autocompelete values suggested by Apple
Link: https://developer.apple.com/documentation/security/password_autofill/enabling_password_autofill_on_an_html_input_element
2022-01-22 10:00:43 +01: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
marcin mikołajczak 74cf0f0355 Update changelog
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-19 23:52:46 +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 dfb2808535 Birth dates: Add tests
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-18 23:15:31 +01:00
marcin mikołajczak 397f67fef8 Format code, expose instance configuration related to birth dates
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-18 18:18:38 +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
NEETzsche 6284353025 Add blockers_visible to features list when it's enabled 2022-01-14 23:08:33 +00:00
marcin mikołajczak eedf551eed Add more tests
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-12 22:41:34 +01:00
marcin mikołajczak 0f90fd5805 WIP account endorsements
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-12 18:15:10 +01:00
lain bf0b32c9aa Merge branch 'pleroma-result-1_13' into 'develop'
move result into with guard

See merge request pleroma/pleroma!3557
2022-01-11 13:39:23 +03:00
marcin mikołajczak 4f249b2397 Merge remote-tracking branch 'origin/develop' into account-endorsements 2022-01-10 20:04:14 +01:00
marcin mikołajczak 1657db656c AccountController.lookup: skip auth
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-12-28 20:02:59 +01:00
marcin mikołajczak 0dd1caa841 AccountController.lookup: skip visibility check
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-12-28 18:24:48 +01:00
marcin mikołajczak 9032d065e6 wip
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-12-28 18:07:19 +01:00
marcin mikołajczak 746c9daa62 Merge remote-tracking branch 'pleroma/develop' into mastodon-lookup
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-12-28 16:27:27 +01:00
marcin mikołajczak f734579965 MastoAPI: Add `GET /api/v1/accounts/lookup`
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-12-28 16:11:17 +01:00
Alex Gleason de7f84deb3 Merge branch 'apps-api-endpoint' into 'develop'
Apps API endpoint

See merge request pleroma/pleroma!3583
2021-12-28 14:38:02 +00:00
Tusooa Zhu 9a27cb4f9d
Deal with target not found error in add_alias
Ref: emit-move
2021-12-28 01:11:08 -05:00
Tusooa Zhu eb383ef8d3
Make move_account endpoint process non-existent users properly
Ref: emit-move
2021-12-28 01:11:08 -05:00
Tusooa Zhu e41eee5ed1
Make Move activity federate properly
Ref: emit-move
2021-12-28 01:11:08 -05:00
Tusooa Zhu 54d7b4354c
Add deleting alias endpoint
Ref: emit-move
2021-12-28 01:11:08 -05:00
Tusooa Zhu c1aa3c98ac
Add get and add aliases endpoints
Ref: emit-move
2021-12-28 01:11:08 -05:00
Tusooa Zhu 0af77b20c1
Implement moving account
Ref: emit-move
2021-12-28 01:10:34 -05:00
Alex Gleason 7704a722c0
AppController: remove unnecessary `require Logger` 2021-12-27 18:30:16 -06:00
Alex Gleason 2e4a1c56c3
AppController: test creating with and without a user 2021-12-27 18:14:15 -06:00
Alex Gleason f5c3d45120
Merge remote-tracking branch 'origin/develop' into apps-api-endpoint 2021-12-27 18:01:25 -06:00
Alex Gleason 138f5a4517
EnsureStaffPrivilegedPlug: don't let non-moderators through 2021-12-27 17:18:26 -06:00
Alex Gleason a3fa987611
AdminAPI: fix duplicated routes 2021-12-27 16:58:10 -06:00
Alibek Omarov f02715c4b2 Fix lint errors 2021-12-27 03:42:03 +03:00
Alibek Omarov f66675f349 API: fix duplicate :get_password_token route 2021-12-27 02:57:54 +03:00
Alibek Omarov 1c223331fc API: show info about privileged staff in instance metadata 2021-12-27 02:28:09 +03:00
Alibek Omarov cd1041c3a4 API: optionally restrict moderators from accessing sensitive data 2021-12-27 02:27:48 +03:00
Alex Gleason 913141379c Merge branch 'profile-directory' into 'develop'
MastoAPI: Profile directory

See merge request pleroma/pleroma!3573
2021-12-26 02:35:17 +00:00
marcin mikołajczak de006443f0 MastoAPI: Profile directory 2021-12-26 02:35:17 +00:00
Alex Gleason db2bf55e9b
Merge remote-tracking branch 'origin/develop' into notice-routes 2021-12-25 19:57:53 -06:00
Alex Gleason 73609211a4 Merge branch 'account-notes' into 'develop'
MastoAPI: Add user notes on accounts

See merge request pleroma/pleroma!3540
2021-12-25 01:41:12 +00:00
Alex Gleason b96a58ff28 Merge branch 'account-subscriptions' into 'develop'
MastoAPI: accept notify param in follow request

See merge request pleroma/pleroma!3555
2021-12-25 01:34:27 +00:00
marcin mikołajczak 9775955974 Merge remote-tracking branch 'origin/develop' into remote-follow-api
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-12-25 00:52:02 +01: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 3f8fc34593
Merge remote-tracking branch 'origin/develop' into moderators 2021-12-19 12:55:36 -06:00
Alex Gleason 50892a198d Merge branch 'mkljczk-develop-patch-64464' into 'develop'
Add "exposable_reactions" to features, if showing reactions

See merge request pleroma/pleroma!3523
2021-12-19 18:51:41 +00:00
Alex Gleason b0d2b53934 Merge branch 'manifest' into 'develop'
Expose /manifest.json for PWA

Closes #882

See merge request pleroma/pleroma!3544
2021-12-19 18:18:59 +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
Alex Gleason d1510c98d7 Merge branch 'link-headers-chats' into 'develop'
Add link headers in ChatController.index2

See merge request pleroma/pleroma!3562
2021-12-19 17:35:50 +00:00
Alex Gleason 1ff9ffed83 Merge branch 'live-dashboard' into 'develop'
Add Phoenix LiveDashboard

See merge request pleroma/pleroma!3566
2021-12-19 17:35:14 +00:00
Alex Gleason e4f9cb1c1b
Merge remote-tracking branch 'origin/develop' into manifest 2021-12-19 11:33:10 -06:00
Alex Gleason bd853199d9 Merge branch 'v2-suggestions' into 'develop'
V2 suggestions

See merge request pleroma/pleroma!3547
2021-12-19 17:31:17 +00:00
Alex Gleason 7c1d804554 Merge branch 'fix-search-dos' into 'develop'
Search: limit number of results (prevent DoS)

See merge request pleroma/pleroma!3563
2021-12-19 17:30:52 +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 e1b89fe3aa
Merge remote-tracking branch 'origin/develop' into live-dashboard 2021-12-15 19:05:36 -05:00
Alex Gleason 29d80b39f2
Add Phoenix LiveDashboard
Co-authored-by: Egor Kislitsyn <egor@kislitsyn.com>
2021-12-15 19:05:27 -05:00
lain 6eb7d69e60 Merge branch 'delete-account-fix' into 'develop'
TwitterAPI: allow deleting one's own account with request body

Closes #2799 and #2746

See merge request pleroma/pleroma!3564
2021-12-15 21:26:45 +00:00
Alex Gleason 8672ad6b00
TwitterAPI: allow deleting one's own account with request body 2021-12-13 17:07:29 -05:00
Alex Gleason 108dfd1f87
Search: limit number of results 2021-12-12 22:50:07 -06:00
marcin mikołajczak dff435488d Add link headers in ChatController.index2
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-12-12 17:43:18 +01: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 c96e52b88c Add 'notifying' to relationship for compatibility with Mastodon
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-12-06 21:24:12 +01:00
marcin mikołajczak 64a4c147b1 MastoAPI: accept notify param in follow request
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-12-06 19:36:58 +01:00
Alex Gleason 8286ceb465
Merge remote-tracking branch 'origin/develop' into password-reset 2021-12-03 00:11:38 -06:00
Alex Gleason 5da4f33bf1
Restore POST /auth/password 2021-12-03 00:10:57 -06:00
marcin mikołajczak cd5fb84b76 remote_interaction API endpoint
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-12-02 16:08:44 +01:00
marcin mikołajczak a9b0027071 Account endorsements
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-11-29 12:44:57 +01:00
Alex Gleason 6519f59d91
v2 Suggestions: return `is_suggested` through the API 2021-11-26 23:10:01 -06:00
Alex Gleason 8dc1d2201a
Instance: add v2_suggestions feature 2021-11-26 22:45:49 -06:00
Alex Gleason e5a7547fbe
v2 Suggestions: also filter out users you follow 2021-11-26 21:46:08 -06:00
Alex Gleason 437c1a5a52
v2 Suggestions: actually flter out dismissed suggestions 2021-11-26 21:09:37 -06:00
Alex Gleason aee55b9a8b
v2 Suggestions: dismiss a suggestion 2021-11-26 20:19:29 -06:00
Alex Gleason 6c0484d571
AdminAPI: suggest a user through the API 2021-11-26 15:19:01 -06:00
Alex Gleason e28d990ecb
v2 Suggestions: don't skip visibility check 2021-11-26 14:46:29 -06:00
Alex Gleason b17360cd7c
v2 Suggestions: rudimentary API response 2021-11-26 14:34:10 -06:00
Alex Gleason 7e1caddc58
v2 Suggestions: return empty array 2021-11-25 14:57:36 -06:00
Alex Gleason 720198d569
Merge remote-tracking branch 'pleroma/develop' into manifest 2021-11-24 17:58:58 -06:00
Alex Gleason cb9359335f
Expose /manifest.json for PWA 2021-11-24 17:50:55 -06: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
rinpatch 588bcbac55 Apply 2 suggestion(s) to 2 file(s) 2021-11-22 10:54:44 +00:00
marcin mikołajczak 8e040e098b Lint
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-11-21 18:17:06 +01:00
marcin mikołajczak 106b5c2678 Fix a typo
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-11-21 17:36:37 +01:00
marcin mikołajczak 40414bf177 MastoAPI: Add user notes on accounts
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-11-21 16:56:26 +01:00
Alibek Omarov 04aca335aa nodeinfo: report activeMonth and activeHalfyear users fields 2021-11-15 17:01:30 +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
lain 6e3df11693 Merge branch 'instance-deletion' into 'develop'
AdminAPI: endpoint to delete all content from a remote instance

See merge request pleroma/pleroma!3483
2021-11-15 14:24:13 +00:00
lain bd77243981 Merge branch 'userfeed-fe-fallback' into 'develop'
UserController: fall back to frontend when user isn't found

Closes #2730

See merge request pleroma/pleroma!3515
2021-11-15 10:48:56 +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
Haelwenn 92a8ff59aa Merge branch 'from/develop/tusooa/add-remove-emails' into 'develop'
Allow users to remove their emails if instance does not need email to register

See merge request pleroma/pleroma!3522
2021-10-06 05:44:44 +00:00
marcin mikołajczak 555d7d57c9 Add "exposable_reactions" to features, if showing reactions 2021-09-09 18:35:45 +00:00
Haelwenn 6b3842cf50 Merge branch 'remove/mastofe' into 'develop'
Remove MastoFE from Pleroma, fixes #2625

Closes #2625

See merge request pleroma/pleroma!3392
2021-09-07 16:41:53 +00:00
Tusooa Zhu 198250dcef
Allow users to remove their emails if instance does not need email to register 2021-09-05 21:27:02 -04:00
Mark Felder 181282fb2e Remove unused Logger 2021-09-01 14:56:48 -05:00
Sean King 3117c60997
Make suggested change for create_response 2021-08-29 07:25:54 -06:00
Sean King 2e59cdd80f
Fix aliases sorting 2021-08-29 07:22:03 -06:00
Sean King 33f063204e
Add unit test for Pleroma API app controller 2021-08-28 23:18:12 -06:00
Sean King d02cf7b0cd
Fix lint 2021-08-28 18:17:09 -06:00
Sean King a14e1c0003
Move GET /api/v1/apps to GET /api/v1/pleroma/apps 2021-08-28 18:02:36 -06:00
Sean King eab6291094
Require follow and read OAuth scopes for GET /api/v1/apps 2021-08-28 11:13:25 -06: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
Ilja 53b0dd4ecc
List available frontends also when no static/frontends folder is present yet
* To see what front ends are installed, it ls static/frontends. When this folder doesn't exists yet, it will return an empty array.
* Installing still works since the folder is created during installation already

Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3510
2021-08-28 18:23:49 +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
Sean King baa8196fc9
Fix API spec, add app schema 2021-08-26 11:55:43 -06:00
Sean King ba6914f90a
Fix formatting in app_operation.ex 2021-08-26 11:11:37 -06:00
Sean King 6519732045
GET /api/v1/apps endpoint 2021-08-25 21:01:04 -06:00
Alex Gleason b11dbbf403
UserController: fall back to frontend when user isn't found 2021-08-17 18:32:32 -05:00
Haelwenn 84ec0fbeaa Merge branch 'show_frontends_also_when_no_static_frontends_folder_is_created_yet' into 'develop'
List available frontends also when no static/frontends folder is present yet

Closes admin-fe#201

See merge request pleroma/pleroma!3510
2021-08-14 18:42:12 +00:00
Ilja f9bafc17fb List available frontends also when no static/frontends folder is present yet
* To see what front ends are installed, it ls static/frontends. When this folder doesn't exists yet, it will return an empty array.
* Installing still works since the folder is created during installation already
2021-08-14 18:42:12 +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
Alex Gleason 01175ef498
Streamer: fix crash in MastodonAPI.StatusView
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3508
2021-08-13 17:58:03 +02:00
Alex Gleason e117551169
AdminAPI: hotfix for nil report objects
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3504
2021-08-13 17:57:39 +02:00
Haelwenn (lanodan) Monnier bb2d5879cc
maybe_notify_subscribers: Don't create notifications from ingested replies
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3505
2021-08-13 17:57:19 +02:00
Haelwenn (lanodan) Monnier 0e2aebd036
TwitterAPI: Make change_email require body params instead of query
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3503
2021-08-13 17:57:11 +02:00
Haelwenn (lanodan) Monnier 3961422f85
TwitterAPI: Make change_password require body params instead of query
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3503
2021-08-13 17:56:59 +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 61ba54897e Merge branch 'streamer-crash-fix' into 'develop'
Streamer crash fix

See merge request pleroma/pleroma!3508
2021-08-13 15:42:12 +00:00
Alex Gleason b7bbf42acd
Streamer: fix crash in MastodonAPI.StatusView 2021-08-13 10:25:42 -05:00
Haelwenn 3a7b54be4a Merge branch 'nil-report-object-hotfix' into 'develop'
AdminAPI: hotfix for nil report objects

See merge request pleroma/pleroma!3504
2021-08-11 20:30:43 +00:00
Haelwenn (lanodan) Monnier 61d233921c
ObjectValidator.stringify_keys: filter out nil values 2021-08-11 21:38:10 +02:00
Haelwenn 3ca39ccf69 Merge branch 'bugfix/subscriptions-replies' into 'develop'
maybe_notify_subscribers: Normalize Object to check inReplyTo presence

Closes #2732

See merge request pleroma/pleroma!3505
2021-08-11 18:50:39 +00:00
Haelwenn (lanodan) Monnier 436fac3bac
maybe_notify_subscribers: Don't create notifications from ingested messages 2021-08-11 20:49:38 +02:00
Alex Gleason 7247c29653
AdminAPI: hotfix for nil report objects 2021-08-11 09:42:19 -05:00
Haelwenn 7c1243178b Merge branch 'bugfix/change_password' into 'develop'
TwitterAPI: Make change_password require body params instead of query

Closes #2740

See merge request pleroma/pleroma!3503
2021-08-10 18:40:13 +00:00
Haelwenn (lanodan) Monnier 197cdebca9
TwitterAPI: Make change_email require body params instead of query 2021-08-10 20:33:00 +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 09dcb2b522
TwitterAPI: Make change_password require body params instead of query
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/2740
2021-08-10 20:01:11 +02: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
Sean King 1841bd8383 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remove/mastofe 2021-08-06 08:08:20 -06: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 03030b47c2
quarantine instances info
Added a new field in the nodeinfo called quarantined_instances_info
This holds an object like `"quarantined_instances_info":{"quarantined_instances":{"quar.inst":{"reason":"whatever reason"}}}}`
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 b83758bd96
Merge remote-tracking branch 'pleroma/develop' into moderators 2021-08-05 11:11:24 -05:00
Alex Gleason 44ede0657f
Merge remote-tracking branch 'pleroma/develop' into staff-plug 2021-08-04 11:48:57 -05: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
Haelwenn 7acdab1f30 Merge branch 'mkljczk-develop-patch-60115' into 'develop'
MastodonAPI: Fix list timelines

Closes mastofe#89 and #2693

See merge request pleroma/pleroma!3477
2021-07-22 18:41:11 +00: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
Alex Gleason 3674179b26
Merge remote-tracking branch 'pleroma/develop' into instance-deletion 2021-07-17 15:03:43 -05:00
Alex Gleason bad79f79e6
AdminAPI.InstanceController: clean up tests, rename actions 2021-07-17 15:00:15 -05:00
Alex Gleason 54dbcfe02a
AdminAPI: add DELETE /instances/:instance to delete all content from a remote instance 2021-07-17 14:55:05 -05:00
Alex Gleason 25676c84be
Create AdminAPI.InstanceController 2021-07-17 13:05:25 -05:00
feld 3f58213646 Merge branch 'admin-api-users-sort' into 'develop'
AdminAPI: sort new users at the top

Closes #2709

See merge request pleroma/pleroma!3481
2021-07-14 14:39:14 +00:00
Alex Gleason 1a2fe96d56
Merge remote-tracking branch 'pleroma/develop' into admin-api-users-date 2021-07-14 09:02:55 -05:00
Alex Gleason 167e14416b
AdminAPI: add date to users 2021-07-14 08:54:59 -05:00
Alex Gleason deb3f91136
Merge remote-tracking branch 'pleroma/develop' into admin-api-users-sort 2021-07-13 22:47:47 -05:00
Alex Gleason 5e88796784
AdminAPI: sort user results by ID descending 2021-07-13 22:47:02 -05:00
Alex Gleason 2b3d7794b2
AdminAPI: let moderators actually do things 2021-07-12 22:26:04 -05:00
Alex Gleason 4fe9a758f9
Let moderators manage custom emojis 2021-07-12 22:11:38 -05:00
Alex Gleason 1f093cb216
Moderators: reorganize :admin_api pipeline in Router 2021-07-12 22:11:32 -05:00
Alex Gleason 9bc1e79c56
Moderators: add UserIsStaffPlug 2021-07-12 21:57:52 -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
Sean King 5d279a22b1 Merge develop branch upstream 2021-07-10 11:04:16 -06:00
marcin mikołajczak 6ef8e1776d fix the fucking list timelines on mastofe/soapbox-fe 2021-07-02 13:03:41 +00: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
Haelwenn (lanodan) Monnier fc6ab78a84
Add test on changing [:instance, :upload_limit] 2021-06-22 12:25:25 +02:00
Haelwenn (lanodan) Monnier a851a24036
Downgrade Plug to 1.10.x, revert upload_limit tuple to function change
This should fix setting the upload limit in the database as found in:
https://queer.hacktivis.me/notice/A8XUZp74Cg7eYNEMxU

This reverts commit 7d350b73f5.
2021-06-22 11:19:13 +02: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
feld 406dadb56b Merge branch 'fix/twittercard-video-dimensions' into 'develop'
Generate Twittercard/OGP metadata with correct dimensions

See merge request pleroma/pleroma!3456
2021-06-10 15:03:58 +00:00
Mark Felder 202ee5fd77 Add note about video thumbnails for code spelunkers unfamiliar with Media Preview Proxy 2021-06-10 09:56:43 -05:00
Mark Felder 6aa7fc15df Formatting of the comment 2021-06-09 11:58:51 -05:00
Mark Felder 5f7901cc48 Credo 2021-06-09 11:09:14 -05:00
Mark Felder 2a47156b87 Lint 2021-06-09 11:06:53 -05:00
Mark Felder 86bcb87e6c Fix incorrectly ordered arguments to the function and not properly merging lists. 2021-06-09 11:05:24 -05:00
Mark Felder 2cf648d419 Add a video thumbnail to the OpenGraph metadata if Media Preview Proxy is enabled. 2021-06-09 10:02:41 -05:00
Mark Felder 19a49dd757 Remove Metadata.Utils.attachment_url/1
This was a wasteful shortcut to MediaProxy.preview_url/1 and we don't
always want the preview_url in the metadata anyway.
2021-06-09 09:58:29 -05:00
Haelwenn (lanodan) Monnier c839078a75
ObjectValidators.{Announce,EmojiReact,Like}: Fix context, actor & addressing 2021-06-09 04:23:02 +02:00
Haelwenn 53cf801c30 Merge branch 'cycles-plug-deps' into 'develop'
Refactor skipped plugs into Pleroma.Web functions

See merge request pleroma/pleroma!3463
2021-06-09 02:20:00 +00:00
Alex Gleason 45b7325b9e
Refactor skipped plugs into Pleroma.Web functions
Speeds up recompilation by reducing compile cycles
2021-06-08 19:15:04 -05: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
Mark Felder 9cb8960284 Switch OGP default type from "website" to "article"
This is what Mastodon uses and might fix some link preview bugs I've encountered
2021-06-08 17:14:30 -05:00
feld 4de2bd3b79 Merge branch 'cycles-user-view' into 'develop'
Recompilation speedup: Create AdminAPI.UserView to avoid compile-time dep

See merge request pleroma/pleroma!3457
2021-06-08 22:07:25 +00:00
Mark Felder d70db63084 Set the correct height/width if the data is available when generating opengraph metadata 2021-06-08 16:58:33 -05:00
Alex Gleason 4faeec2c44
Create AdminAPI.UserView to avoid compile-time dep
Speeds up recompilation
2021-06-08 16:34:06 -05:00
Mark Felder aa8cc4e86e Only use fallback for videos and only add this metadata for images if we really have it. 2021-06-08 16:31:12 -05:00
Mark Felder d4ac9445cd Twittercard metadata for images should also include dimensions if available 2021-06-08 16:19:12 -05:00
Mark Felder 5de65ce3e8 Set the correct height/width if the data is available when generating twittercard metadata 2021-06-08 15:59:55 -05:00
feld 939b3bfe43 Merge branch 'improve-og-embed' into 'develop'
Improve opengraph embeds

See merge request pleroma/pleroma!3442
2021-06-08 19:26:17 +00:00
Alex Gleason b99f60615c Fix order of Pleroma.Web.Utils.Params aliases 2021-06-08 12:50:47 -05:00
Alex Gleason ec65b7ae29 Pleroma.Web.Params --> Pleroma.Web.Utils.Params 2021-06-08 12:50:47 -05:00
Alex Gleason 0877b120c3 Pleroma.Web.ControllerHelper.truthy_param?/1 --> Pleroma.Web.Params.truthy_param?/1
Breaks cycle in lib/pleroma/web/api_spec/operations/status_operation.ex
2021-06-08 12:50:47 -05:00
Alex Gleason 1399b82f7b
Create WrapperAuthenticator and simplify Authenticator behaviour
Speeds up recompilation by reducing compile-time cycles
2021-06-07 18:18:39 -05:00
Alex Gleason d87dfcb5f0
Put custom guards in Web.Utils.Guards
Speeds up recompilation by removing a compile-time cycle on AdminAPI.Search
2021-06-07 15:51:52 -05:00
Mark Felder 264458531a Formatting 2021-06-07 15:47:50 -05:00
feld 676c3c96dc Merge branch 'cycles-mrf-policy' into 'develop'
Recompilation speedup: create MRF.Policy behaviour separate from MRF module

See merge request pleroma/pleroma!3450
2021-06-07 20:10:20 +00:00
feld 64bc0c69ed Merge branch 'fix/plug_parser_multipart' into 'develop'
web endpoint: Use Config.get directly instead of a tuple

See merge request pleroma/pleroma!3445
2021-06-07 19:58:37 +00: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
Sean King 26d2c677b7
Removing trailing space on empty line in OAuth controller 2021-06-04 15:50:57 -06:00
Sean King 2e310b3ec8
Fix more build errors 2021-06-04 15:06:55 -06:00
Sean King 839c2c6a12
Fix code mistake in OAuth controller 2021-06-04 14:50:16 -06:00
Sean King dc4814f0cd
Fix merge conflicts with upstream 2021-06-04 14:42:44 -06:00
Haelwenn 0c56f9de0d Merge branch 'tests/openapi-everywhere' into 'develop'
Put OpenAPI ~everywhere in tests

See merge request pleroma/pleroma!3324
2021-06-04 18:53:09 +00:00
Haelwenn (lanodan) Monnier eb7313b0d3
Pipeline Ingestion: Page 2021-06-04 20:06:33 +02:00
Haelwenn (lanodan) Monnier 7d350b73f5
web endpoint: Use Config.get directly instead of a tuple
Fixes a lot of warnings like the following while running the testsuite:

  warning: passing a {module, function, args} tuple to Plug.Parsers.MULTIPART is deprecated. Please see Plug.Parsers.MULTIPART module docs for better approaches to configuration

This might mean no more dynamic configuration but there seems to be the same limitation two lines underneath anyway.
2021-06-04 20:04:30 +02:00
io 2c401dafa1 Improve opengraph embeds
This brings them more in line with Mastodon.
- Deduplicates display name from the title and content
- Removes arbitrary limits on the size of the embedded image
- Removes angled double quotes from embed descriptions. These would normally just indicate that the content is a quote, but that is already implied by the content being in an embed.
2021-06-04 05:33:35 +00: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
Haelwenn (lanodan) Monnier 168687eef2
media_proxy: switch from :crypto.hmac to :crypto.mac 2021-06-03 19:11:15 +02:00
Haelwenn a5dce42c85 Merge branch 'chore/rename-chat' into 'develop'
Rename the non-federating Chat feature to Shout

See merge request pleroma/pleroma!2842
2021-06-03 15:52:16 +00:00
Mark Felder 0be7eada92 Keep original Shoutbox channel name as chat:public
There is no sane / high level workaround for merging users who join shout:public and chat:public.
2021-06-01 14:34:13 -05: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
Mark Felder 2743c66693 Add "chat" back as a feature for backwards compat.
Legacy PleromaFE uses this to identify if ShoutBox is available.
2021-06-01 13:17:50 -05:00
Mark Felder 48a0ea2fc3 Wire up join requests to the old "chat:public" channel into the new "shout:public" channel 2021-06-01 11:56:51 -05:00
Mark Felder d6432a65da Move shout configuration from :instance, update docs and changelog 2021-06-01 11:49:46 -05:00
Mark Felder ff00b354fa Rename the non-federating Chat feature to Shout 2021-06-01 11:49:14 -05:00
Alex Gleason c435de426d
Merge remote-tracking branch 'pleroma/develop' into cycles-constants 2021-06-01 11:33:11 -05:00
feld 75b94a2f35 Merge branch 'cycles-frontend-static' into 'develop'
Recompilation speedup: make Router a runtime dep of FrontendStatic

See merge request pleroma/pleroma!3429
2021-06-01 16:19:41 +00: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 2e682788a3
Merge commit '07fed0fda2473fc4e1e3b01e863217391fd2902f'; commit 'e3173a279dad89dfce6eae89368ad3ba180c0490'; commit '21787546c01069d1d1d8261f0bc37d13a73122a9'; commit 'fda34591cefad94277385311c6391d1ca2adb36c'; commit '0ada3fe823a3c2e6c5835431bdacfbdb8b3d02a7'; commit '32d263cb905dd7fffd43a4955295af0b2b378537'; commit 'c9e4200ed2167772294fceb4f282979b5ea04981'; commit '3ff9c5e2a67ab83c2abdb14cd246dea059079e75'; commit 'fa543a936124abee524f9a103c17d2601176dcd4'; commit 'c23b81e399d5be6fc30f4acb1d757d5eb291d8e1' into cycles-phase-1 2021-05-30 12:58:24 -05:00
Alex Gleason 595bca24ad
Merge remote-tracking branch 'pleroma/develop' into cycles-frontend-static 2021-05-30 12:12:58 -05:00
Alex Gleason 721c966842
FrontendStatic: make Router a runtime dep
Speeds up recompilation by removing compile-time cycles
2021-05-30 12:12:16 -05:00
feld 5d40ffe429 Merge branch 'cycles-views' into 'develop'
Recompilation speedup: Create real Views for all Controllers

See merge request pleroma/pleroma!3425
2021-05-29 21:50:07 +00:00
feld b5f3a5c979 Merge branch 'cycles-html' into 'develop'
Recompilation speedup: Break out activity-specific HTML functions into Pleroma.Activity.HTML

See merge request pleroma/pleroma!3426
2021-05-29 21:19:25 +00: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
Alex Gleason 1a69f59221
Merge remote-tracking branch 'pleroma/develop' into cycles-html 2021-05-29 12:29:58 -05:00
Alex Gleason 3ff9c5e2a6
Break out activity-specific HTML functions into Pleroma.Activity.HTML
Fixes cycles in lib/pleroma/ecto_type/activity_pub/object_validators/safe_text.ex
2021-05-29 12:29:11 -05:00
Alex Gleason 7c96c82b5b
Merge remote-tracking branch 'pleroma/develop' into cycles-views 2021-05-29 12:17:24 -05:00
Alex Gleason c9e4200ed2
Create real Views for all Controllers
This makes views depend on each other at runtime instead of compile-time
2021-05-29 12:15:57 -05:00
feld 8871ca5aa3 Merge branch 'cycles-router-api-routes' into 'develop'
Recompilation speedup: Pleroma.Web.get_api_routes/0 --> Pleroma.Web.Router.get_api_routes/0

See merge request pleroma/pleroma!3419
2021-05-28 19:06:49 +00: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
feld edcdd15e01 Merge branch 'alias-router-helpers' into 'develop'
Switch to aliasing `Router.Helpers` instead of importing

See merge request pleroma/pleroma!3409
2021-05-28 19:01:47 +00:00
Alex Gleason 39127f15eb
Merge remote-tracking branch 'pleroma/develop' into cycles-router-api-routes 2021-05-28 13:51:21 -05:00
Alex Gleason c23b81e399
Pleroma.Web.get_api_routes/0 --> Pleroma.Web.Router.get_api_routes/0
Reduce recompilation time by breaking compile-time cycles
2021-05-28 13:51:01 -05:00
feld 7ad87571bd Merge branch 'cycles-router' into 'develop'
Recompilation speedup: move StaticFEPlug to a pipeline

See merge request pleroma/pleroma!3417
2021-05-28 18:24:33 +00:00
feld 9f386df83c Merge branch 'cycles-router-mediaproxy' into 'develop'
Recompilation speedup: don't make MediaProxy be a compile-dep of Router

See merge request pleroma/pleroma!3418
2021-05-28 18:22:27 +00:00
Alex Gleason bf2ee12fdb
Merge remote-tracking branch 'pleroma/develop' into cycles-router-mediaproxy 2021-05-28 13:08:23 -05:00
Alex Gleason fda34591ce
Don't make MediaProxy be a compile-dep of Router
Speeds up recompilation by removing MediaProxy as a compile-time dep of Router
2021-05-28 13:07:34 -05:00
Alex Gleason e885b49e35
Merge remote-tracking branch 'pleroma/develop' into cycles-router 2021-05-28 12:44:16 -05:00
Alex Gleason 21787546c0
Router: move StaticFEPlug to a pipeline
Speed up recompilation by breaking a cycle. Removes StaticFEPlug as a compile-time dep of Router.
2021-05-28 12:43:02 -05:00
Mark Felder 4694853766 Provide totalItems field for featured collections 2021-05-27 12:17:31 -05:00
Mark Felder 05d678c070 Expose user email address to user/owner; not publicly. 2021-05-20 12:50:43 -05:00
Alex Gleason ad7d4ff8bc
Merge remote-tracking branch 'pleroma/develop' into alias-router-helpers 2021-05-19 12:49:00 -05:00
Alex Gleason 07fed0fda2
Switch to aliasing `Router.Helpers` instead of importing 2021-05-18 17:45:30 -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 02b9436494
Don't render media `meta` if nil 2021-05-12 16:16:10 -05:00
Alex Gleason 4c060ae733
Ingest remote attachment width/height 2021-05-12 15:38:49 -05:00
Alex Gleason ab9eabdf20
Add SetMeta filter to store uploaded image sizes 2021-05-12 15:07:31 -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 1a45aa1278
Merge remote-tracking branch 'pleroma/develop' into notice-routes 2021-05-05 14:50:54 -05:00
Alex Gleason 50e3750758
Add notice compatibility routes for other frontends
Fixes: https://git.pleroma.social/pleroma/pleroma/-/issues/1785
2021-05-05 14:50:10 -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 e7ac15905e
Merge remote-tracking branch 'upstream/develop' into oauth-token-id 2021-04-29 12:19:10 -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
Haelwenn f9bedf5597 Apply lanodan's suggestion(s) to 1 file(s) 2021-04-20 21:08:31 +00:00
Haelwenn 42185d8750 Apply lanodan's suggestion(s) to 1 file(s) 2021-04-20 21:06:45 +00:00
Haelwenn e104829c2f Apply lanodan's suggestion(s) to 1 file(s) 2021-04-20 21:06:39 +00:00
Haelwenn 30b1d50938 Apply lanodan's suggestion(s) to 1 file(s) 2021-04-20 21:06:32 +00:00
Sean King d1eb1913e8 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/opt-out-of-google-floc 2021-04-19 15:42:38 -06:00
Mark Felder efed94a23e Fix error response which was breaking tests related to pinned posts 2021-04-19 16:23:57 -05:00
Sean King 2b4f958b2a
Add opting out of Google FLoC to HTTPSecurityPlug headers 2021-04-18 14:00:18 -06:00
rinpatch c6dcd863e2 Apply rinpatch's suggestion(s) to 1 file(s) 2021-04-16 09:59:50 +00: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
Sean King 8afa3f2d1b
Remove no longer necessary unit tests for MastoFE 2021-04-15 23:12:42 -06:00
Sean King 4f55d5123b
Remove MastoFE-related backend code and frontend pieces 2021-04-15 22:56:21 -06:00
Mark Felder 0feafcc20c Use URI.merge to prevent concatenating two canonical URLs when a custom instance thumbnail was uploaded via AdminFE 2021-04-09 10:30:27 -05: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
Haelwenn 1e3db07586 Revert "Merge branch 'patch-fix-open-api-spec' into 'develop'"
This reverts merge request !3382
2021-04-01 12:00:58 +00: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
Miss Pasture 863010ea63 date-times are always strings 2021-03-31 06:51:22 +00: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
Alex Gleason b6a69b5efd
Return token's primary key with POST /oauth/token 2021-03-24 12:50:05 -05:00
rinpatch d3660b24d3 Copy emoji in the subject from parent post
Sometimes people put emoji in the subject, which results in the subject
looking broken if someone replies to it from a server that does not
have the said emoji under the same shortcode. This patch solves the problem
by extending the emoji set available in the summary to that of the parent
post.
2021-03-22 21:20:47 +03:00
rinpatch 572363793f Merge branch 'fix/2579-finger-content-type' into 'develop'
respect content-type header in finger request

Closes #2579

See merge request pleroma/pleroma!3375
2021-03-21 08:25:02 +00:00
rinpatch 72143dd732 Merge branch 'richmedia-workaround' into 'develop'
Workaround for RichMedia preview image breakage edge case

See merge request pleroma/pleroma!3363
2021-03-21 08:19:42 +00:00
Alexander Strizhakov d7e51206a2
respect content-type header in finger request 2021-03-19 18:53:55 +03:00
rinpatch a9bc652ab9 Merge branch 'mediaproxy-decode' into 'develop'
Simple way to decode mediaproxy URLs

See merge request pleroma/pleroma!3364
2021-03-19 08:52:12 +00: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 a2aa309496 Merge branch 'update_open_api_spex' into 'develop'
Update OpenApiSpex dependency

See merge request pleroma/pleroma!3362
2021-03-16 01:54:43 +00:00
Haelwenn (lanodan) Monnier 55bdfb075c
OpenAPI: TwitterAPI Util Controller 2021-03-15 06:47:07 +01:00
Haelwenn (lanodan) Monnier 65cd9cb638
TwitterAPI: Remove unused read notification function 2021-03-15 06:47:07 +01:00
Haelwenn (lanodan) Monnier a22c53810b
Remove deprecated /api/qvitter/statuses/notifications/read 2021-03-15 06:47:07 +01:00
Haelwenn (lanodan) Monnier e4743847a1
OpenAPI: PleromaAPI UserImport Controller 2021-03-15 06:47:07 +01:00
Haelwenn (lanodan) Monnier 3123ecdd6e
OpenAPI: MastodonAPI Media Controller 2021-03-15 06:47:06 +01:00
Haelwenn (lanodan) Monnier 7eecc3b61d
OpenAPI: MastodonAPI Timeline Controller 2021-03-15 06:47:06 +01:00
Haelwenn (lanodan) Monnier b1d4b2b81e
Add support for actor icon being a list (Bridgy) 2021-03-15 06:44:05 +01:00
Mark Felder b80f868c6b Prefer naming this function build_image_url/2 2021-03-13 12:27:15 -06:00
Mark Felder 029ff65389 Leverage function pattern matching instead 2021-03-11 09:20:29 -06:00
Mark Felder 8246db2a96 Workaround for URI.merge/2 bug https://github.com/elixir-lang/elixir/issues/10771
If we avoid URI.merge unless we know we need it we reduce the edge cases we could encounter.
The site would need to both have "//" in the %URI{:path} and the image needs to be a relative URL.
2021-03-10 17:15:31 -06:00
Ivan Tashkinov 946e0aab49 Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework 2021-03-10 07:48:50 +03:00
Haelwenn 7f413139fb Merge branch 'openapi/admin/user' into 'develop'
Add OpenAPI spec for AdminAPI.UserController

See merge request pleroma/pleroma!3355
2021-03-10 03:24:40 +00:00
Ivan Tashkinov 92526e0230 Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework 2021-03-07 11:34:39 +03:00
Ivan Tashkinov 7f8785fd9b [#3213] Performance optimization of filtering by hashtags ("any" condition). 2021-03-07 11:33:21 +03:00
Mark Felder e97b34f65d Add simple way to decode fully qualified mediaproxy URLs 2021-03-05 13:18:37 -06:00
Egor Kislitsyn 92ab72dbbb
Update OpenApiSpex dependency 2021-03-05 15:51:29 +04:00
Egor Kislitsyn 9876fa8e90
Add UserOperation to Redoc 2021-03-04 21:13:53 +04:00
Ivan Tashkinov 5856f51717 [#3213] ActivityPub hashtags filtering refactoring. Test fix. 2021-03-03 23:09:30 +03:00
Mark Felder 8d601d3b23 Make the object reference in both render("show.json", _) functions consistently named 2021-03-02 14:14:38 -06:00
Mark Felder 85b2387f66 Fix build_application/1 match 2021-03-02 11:37:37 -06:00
Egor Kislitsyn 3aae5231b2
Add OpenAPI spec for AdminAPI.UserController 2021-03-02 20:49:17 +04:00
lain 7dac83eb6e Linting. 2021-03-02 15:03:16 +01:00
lain 024c11c18d StatusController: Deactivate application support for now.
Some more things to discuss about, so we'll remove it from 2.3.0
2021-03-02 14:40:47 +01:00
Ivan Tashkinov 882dd46843 Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework 2021-03-02 08:26:30 +03:00
Mark Felder b1e1db82bc Store application details in the object under the generator key, not application key 2021-03-01 11:29:10 -06:00
lain 4a9d3a1f28 Merge branch 'features/reports-enhancements' into 'develop'
Enhance reports in Pleroma API: index, show

See merge request pleroma/pleroma!3280
2021-02-28 16:45:15 +00:00
lain 6a71aa535b Merge branch 'admin-api-versioning' into 'develop'
Pleroma APIs versioning

Closes #2509

See merge request pleroma/pleroma!3335
2021-02-28 16:22:22 +00:00
lain 050c4b1f14 Merge branch 'bugfix/peertube-mpegURL-object' into 'develop'
Video: Handle peertube videos only stashing attachments in x-mpegURL

Closes #2372 and #2535

See merge request pleroma/pleroma!3336
2021-02-28 16:18:23 +00:00
lain e6a14e1cd1 Merge branch 'feat/client_app_details' into 'develop'
Support application field

See merge request pleroma/pleroma!3311
2021-02-28 16:17:34 +00:00
Haelwenn (lanodan) Monnier 3bc7d12271
Remove sensitive-property setting #nsfw, create HashtagPolicy 2021-02-27 21:26:17 +01:00
lain d0823d7f1e Merge branch 'frontendstatic-ignore-api-calls' into 'develop'
Filter out API calls from FrontendStatic plug

Closes #2261

See merge request pleroma/pleroma!3346
2021-02-27 19:40:38 +00:00
Mark Felder d35b6254b4 Store the client application data in ActivityStreams format 2021-02-26 18:14:57 -06:00
Mark Felder 1552179792 Improved recursion through the api route list 2021-02-25 10:07:29 -06:00
Mark Felder cea31df6a6 Attempt to filter out API calls from FrontendStatic plug 2021-02-24 15:27:53 -06:00
Ivan Tashkinov 8f88a90ca3 Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework
# Conflicts:
#	lib/pleroma/application.ex
#	lib/pleroma/config.ex
2021-02-23 13:58:35 +03: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
eugenijm c1d63bbd9a Reroute /api/pleroma to /api/v1/pleroma 2021-02-21 13:26:23 +03:00
Mark Felder 63739c5a58 Tests to validate client disclosure obeys user setting 2021-02-18 17:23:17 -06:00
Mark Felder d5ef02c7a7 Mastodon makes this field null when posting with MastoFE or if you choose to not disclose it, so it's safe to be null by default 2021-02-18 16:35:03 -06:00
Ivan Tashkinov 998437d4a4 [#3213] Experimental / debug feature: `database: [improved_hashtag_timeline: :preselect_hashtag_ids]`. 2021-02-18 21:03:06 +03:00
Alexander Strizhakov 1e6c27181e
expires_in in scheduled status params 2021-02-18 14:59:22 +03:00
rinpatch 8829a408ec Merge branch 'fix/chats-no-unread-in-openapi' into 'develop'
ChatMessage schema: Add `unread` property

See merge request pleroma/pleroma!3323
2021-02-18 09:54:59 +00:00
rinpatch 2ab9499258 OAuthScopesPlug: remove transform_scopes in favor of explicit admin scope definitions
Transforming scopes is no longer necessary since we are dropping
support for accessing admin api without `admin:` prefix in scopes.
2021-02-17 21:37:23 +03:00
rinpatch 95a22c1cc2 OpenAPI: Add `admin:` scope prefix to admin operations
Also splits "Emoji packs" to two categories: "Emoji pack administration"
and "Emoji packs"
2021-02-17 21:10:28 +03:00
Haelwenn (lanodan) Monnier ff72ce31ca
Enhance reports in Pleroma API: index, show 2021-02-17 18:46:53 +01:00
Haelwenn e7b1f0f5f4 Merge branch 'feat/chat-list-pagination' into 'develop'
Chats: Introduce /api/v2/pleroma/chats which implements pagination

Closes #2140

See merge request pleroma/pleroma!3325
2021-02-17 15:36:59 +00:00
rinpatch 158f9f18ee Merge branch 'remove-conversation-api' into 'develop'
Add API endpoint to remove a conversation

Closes #2488

See merge request pleroma/pleroma!3321
2021-02-17 15:14:27 +00:00
rinpatch d7ad288c84 Chats: Introduce /api/v2/pleroma/chats which implements pagination
Also removes incorrect claim that /api/v1/pleroma/chats supports
pagination and deprecates it.

Closes #2140
2021-02-17 16:03:24 +03:00
rinpatch 98ab2b82a6 ChatMessage schema: Add `unread` property
It is present in the code, but was not documented.
2021-02-16 22:41: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
Egor Kislitsyn cf6d3db58f
Add API endpoint to remove a conversation 2021-02-15 21:48:13 +04:00
Mark Felder 9b61df1fb6 App is already preloaded into the token, so avoid an extra query 2021-02-12 12:44:45 -06:00
Mark Felder c1d78328ee Consistency 2021-02-11 14:27:52 -06:00
Mark Felder 6dc0b13cf8 Revert to original formatting for these function defs 2021-02-11 14:24:51 -06:00
Mark Felder 7c508319a5 Prefer naming this put_application because we're putting it into the params map 2021-02-11 14:19:53 -06:00
Mark Felder 09b8378646 %Token{} may not be in the conn, so avoid breaking the ability to post statuses in that scenario. 2021-02-11 14:15:25 -06: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
Ivan Tashkinov df89b5019b [#2510] Improved support for app-bound OAuth tokens. Auth-related refactoring. 2021-02-11 15:02:50 +03:00
Haelwenn 2cf753c502 Merge branch 'fix/no-version-api-pleroma-social' into 'develop'
Fix no version number on api.pleroma.social

See merge request pleroma/pleroma!3310
2021-02-10 00:52:59 +00:00
Mark Felder 4540e08a6a Rendering fallback for when we don't have valid data available 2021-02-09 18:52:22 -06:00
Mark Felder 981349f21d Enable rendering of the client application data details 2021-02-09 18:22:41 -06:00
Mark Felder 3dc7e89c54 Ensure we capture the application details into the object 2021-02-09 18:07:15 -06:00
Mark Felder de8b8e9cf1 Add a function to lookup client app details by the app_id 2021-02-09 16:59:58 -06: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
rinpatch 0d9230aed9 OpenAPI spec: Do not show build enviroment in the spec version 2021-02-09 22:23:11 +03:00
feld 593c0851d9 Merge branch 'develop' into 'new-user-emails' 2021-02-08 16:01:50 -06: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
rinpatch 17f41a589f Merge branch 'fix/rss-link' into 'develop'
RSS: Make sure post URL is the first `<link>` element

See merge request pleroma/pleroma!3308
2021-02-08 20:14:53 +00:00
rinpatch ed8ef80b5e RSS: Make sure post URL is the first `<link>` element
Otherwise some RSS readers (tested in Miniflux) might pick the context
URL as the external link.

Related to #2425.
2021-02-08 22:44:15 +03: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 af37a5c51a Also make this maybe_ for consistency 2021-02-04 14:33:49 -06:00
Mark Felder d047372291 Merge branch 'develop' into fix/reports-from-admins 2021-02-04 12:37:20 -06:00
feld 7b67bf4e97 Merge branch 'fix/configdb-error' into 'develop'
Improve error message for ConfigDB

See merge request pleroma/pleroma!3289
2021-02-04 14:33:59 +00:00
Haelwenn ea5469961a Merge branch 'bugfix/notice-external-redirect' into 'develop'
Redirect non-local activities when /notice/:id is used

See merge request pleroma/pleroma!3300
2021-02-04 14:26:03 +00:00
Haelwenn (lanodan) Monnier ecff027418
Redirect non-local activities when /notice/:id is used
Related-to: https://git.pleroma.social/pleroma/pleroma/-/issues/2496
2021-02-04 15:17:40 +01: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
rinpatch 74ef1a044d Account schema: specify that pleroma.relationship is nullable 2021-02-03 18:10:43 +03:00
feld 008499f65a Merge branch 'develop' into 'fix/2412-filters'
# Conflicts:
#   CHANGELOG.md
2021-02-03 14:23:23 +00:00
feld c3dd860a02 Merge branch 'fix/2449-scheduled-poll-bug' into 'develop'
Fix for scheduled post with poll

Closes #2449

See merge request pleroma/pleroma!3294
2021-02-03 14:22:23 +00: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
rinpatch e2d7c4fd57 Merge branch 'feat/openapi-spec-export' into 'develop'
Improve OpenAPI spec and deploy it to api.pleroma.social

See merge request pleroma/pleroma!3296
2021-02-03 13:21:19 +00:00
rinpatch 9fcff7851f Improve OpenAPI spec and deploy it to api.pleroma.social
Too many changes in OpenAPI spec to describe each one, but
basically it is tag fixes, bringing consitency to operation summaries
and fixing some incorrect information.
2021-02-03 16:07:44 +03: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
feld f1f773f2c7 Merge branch 'email-stub-in-verify-credentials' into 'develop'
Email-like field in /api/v1/accounts/verify_credentials (for PeerTube OAuth plugin and alike)

See merge request pleroma/pleroma!3286
2021-02-02 18:35:08 +00:00
feld d289ad8579 Merge branch 'develop' into 'fix/2411-mutes-api'
# Conflicts:
#   CHANGELOG.md
#   docs/development/API/differences_in_mastoapi_responses.md
2021-02-02 17:57:58 +00:00
feld cd5ff7a943 Merge branch 'develop' into 'feature/2164-unify-api-arguments'
# Conflicts:
#   CHANGELOG.md
2021-02-02 17:11:38 +00:00
feld 69c560cfba Merge branch 'active-user-count' into 'develop'
Monthly Active Users

Closes #2332

See merge request pleroma/pleroma!3283
2021-02-02 17:07:57 +00:00
Alexander Strizhakov 0dc68c157f
fix for scheduled post with poll 2021-02-01 18:22:26 +03:00
Alexander Strizhakov fdf1dfed56
only_remote -> remote renaming 2021-02-01 14:11:12 +03:00
Alexander Strizhakov ba512cbea4
`/api/v1/accounts/:id/statuses` docs update 2021-02-01 14:11:12 +03:00
Alexander Strizhakov 77f0a0af7d
more tests and update for docs and changelog 2021-02-01 14:11:12 +03:00
Alexander Strizhakov 2cb6dc5a3a
list timeline filtration by params 2021-02-01 14:11:12 +03:00
Alexander Strizhakov b6a72680e2
added only_media flag to home timeline 2021-02-01 14:11:11 +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 1b49b8efe5 Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework
# Conflicts:
#	CHANGELOG.md
2021-01-31 20:38:58 +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
Alexander Strizhakov b794dae98a
like this 2021-01-29 15:55:00 +03:00
Alexander Strizhakov c369d2b930
support for with_relationships parameter
in /api/v1/mutes and /api/v1/accounts/:id endpoints
2021-01-29 08:41:21 +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
Mark Felder 5fcab23aa3 Improve error message for ConfigDB 2021-01-28 14:59:23 -06:00
Ivan Tashkinov 60b4654038 Email-like field in /api/v1/accounts/verify_credentials response (for OAuth plugins like Peertube).
Addresses https://git.pleroma.social/pleroma/pleroma-support/-/issues/56.
2021-01-28 19:49:43 +03:00
Alexander Strizhakov 35cad9793d
cache headers for emoji and images 2021-01-27 18:49:08 +03:00
Egor Kislitsyn 793fc77b16
Add active user count 2021-01-27 18:20:06 +04: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
feld d7af0294e6 Merge branch 'service-worker-allowed-header' into 'develop'
Ability to set custom HTTP headers per each frontend

See merge request pleroma/pleroma!3247
2021-01-26 18:14:01 +00:00
Alexander Strizhakov 875fbaae35
support for expires_in/expires_at in filters 2021-01-26 08:27:45 +03:00
Haelwenn 250e202098 Merge branch 'fix/missing-own_votes' into 'develop'
Include own_votes in the poll data

See merge request pleroma/pleroma!3274
2021-01-26 00:55:05 +00:00
Mark Felder 2cb5c16723 Credo 2021-01-25 18:25:53 -06:00
Mark Felder 0b19534475 Merge branch 'develop' into docs/apache-config 2021-01-25 17:00:26 -06: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
Alexander Strizhakov 3f3d64acbf
little refactor and tests
for voted & own_votes fields in polls
2021-01-25 19:46:36 +03:00
Mark Felder 537ba1c5e0 Merge branch 'develop' into refactor/deactivated_user_field 2021-01-25 09:45:06 -06:00
Mark Felder 6bfd497f4a Include own_votes in the poll data 2021-01-22 09:47:59 -06:00
Ivan Tashkinov 218c519606 Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework
# Conflicts:
#	test/pleroma/web/mastodon_api/views/status_view_test.exs
2021-01-22 10:05:28 +03:00
Mark Felder 80ccdb56f6 Make tag urls absolute 2021-01-21 16:49:19 -06:00
Mark Felder e5b32aab92 rename function 2021-01-21 14:41:28 -06:00
Mark Felder 003402df40 Add ability to invalidate cache entries for Apache 2021-01-21 14:20:13 -06:00
eugenijm 7fcaa188a0 Allow to define custom HTTP headers per each frontend 2021-01-21 21:55:23 +03:00
eugenijm 133644dfa2 Ability to set the Service-Worker-Allowed header 2021-01-21 21:55:11 +03: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
feld 958a7f6ed0 Merge branch 'fix/reblog-api' into 'develop'
Fix Reblog API

Closes #2423

See merge request pleroma/pleroma!3261
2021-01-18 21:19:14 +00:00
Mark Felder 28581e03ad Merge branch 'develop' into refactor/deactivated_user_field 2021-01-18 14:58:21 -06:00
Mark Felder 44a86951a3 Merge branch 'develop' into refactor/approval_pending_user_field 2021-01-18 12:05:05 -06:00
Egor Kislitsyn 1b79dce7bc
Fix Reblog API
Do not set visibility parameter to `public` by default and let CommonAPI to infer it from status.
2021-01-18 20:15:57 +04: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 2c0fe2ea9e Remove toggle_confirmation; require explicit state change
Also cosmetic changes to make the code clearer
2021-01-15 13:11:51 -06:00
Mark Felder d36182c088 Change user.confirmation_pending field to user.is_confirmed 2021-01-15 12:44:41 -06:00
Mark Felder ebd7d1365b Make setting user activation status explicit 2021-01-15 11:37:17 -06:00
Mark Felder 860b5c7804 Change user.deactivated field to user.is_active 2021-01-15 11:24:46 -06:00
Mark Felder f7e59c28ed Change user.approval_pending field to user.is_approved 2021-01-15 10:42:02 -06:00
Lain Soykaf 39f3683a06 Pbkdf2: Use it everywhere. 2021-01-14 15:06:16 +01: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
lain 9106048c61 Password: Replace Pbkdf2 with Password. 2021-01-13 15:11:11 +01: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
feld 5453038ce9 Merge branch 'fix/backup-url-on-s3' into 'develop'
Standardize base url for uploads

See merge request pleroma/pleroma!3246
2021-01-12 20:54:30 +00:00
lain 7a1cb752dd Pagination: Don't be dos'd by random parameters. 2021-01-12 12:59:50 +01:00
Mark Felder ef59d99833 Simplify. We will always have a result from Upload.base_url/0, so just add it to the list 2021-01-11 14:19:14 -06:00
Mark Felder 1040881047 Fix regression in MediaProxy.local?/0 and appending the Upload.base_url to whitelisted domains 2021-01-11 14:01:31 -06:00
lain e1a547d7d3 ChatMessages: Fix pagination headers.
They used to contain the path parameter `id` as query param,
which would break the link.
2021-01-11 15:30:40 +01:00
Mark Felder 9887cdf9be Formatting 2021-01-10 09:03:42 -06:00
feld fa63f1b55b Apply 4 suggestion(s) to 2 file(s) 2021-01-10 01:34:54 +00:00
Mark Felder 86dcfb4eb9 More places we should be using Upload.base_url 2021-01-08 17:32:42 -06:00
Mark Felder ad79983614 Fix URL generated for backup files, try to create a source of truth we can reuse throughout the codebase 2021-01-08 17:32:42 -06: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
Alex Gleason 3342f6a7ef
Backups: render ID in API 2021-01-07 13:06:22 -06:00
lain ac1298fce8 Merge branch 'cleanup/unused-proxy-opts' into 'develop'
Cleanup Pleroma.Upload proxy opts

See merge request pleroma/pleroma!3236
2021-01-07 16:25:39 +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
Alex Gleason 20af025c65
AdminAPI: return user email 2021-01-06 11:30:32 -06:00
Mark Felder d69c78ceb9 Remove configurability of upload proxy opts, simplify 2021-01-05 15:06:00 -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 bea69853a2 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into pleroma-moderation-log-stuff 2021-01-05 12:19:39 +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
Alex Gleason 0ec7e9b8e9
AdminAPI: return id for moderation log entries 2021-01-01 11:59:48 -06:00
feld afe9c152ab Merge branch 'fix/reports-ordering' into 'develop'
Do not reverse order of reports. We want newest ones sorted to the top.

Closes #2364

See merge request pleroma/pleroma!3225
2020-12-31 19:24:49 +00:00
Alex Gleason 0d6b9ce8ca Apply 2 suggestion(s) to 1 file(s) 2020-12-31 18:51:57 +00: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
Alex Gleason cbce880076
Merge remote-tracking branch 'upstream/develop' into aliases 2020-12-30 17:10:02 -06:00
Mark Felder 2597b028f7 Make pagination type conditional 2020-12-30 16:37:04 -06:00
Mark Felder 085d4e6cfc Continue to use ActivityPub.fetch_user_activities/3, make it pass :offset 2020-12-30 16:10:10 -06:00
Mark Felder 4c5f75f4e9 Support pagination in AdminAPI for user statuses 2020-12-30 15:18:54 -06:00
Mark Felder 744b34709d Do not reverse order of reports. We want newest ones sorted to the top. 2020-12-30 14:22:48 -06:00
Haelwenn 3966add048 Revert "Merge branch 'features/hashtag-column' into 'develop'"
This reverts merge request !2824
2020-12-28 12:02:16 +00:00
Haelwenn b122b6ffa3 Merge branch 'features/hashtag-column' into 'develop'
Insert text representation of hashtags into object["hashtags"]

See merge request pleroma/pleroma!2824
2020-12-28 10:14:58 +00:00
Haelwenn (lanodan) Monnier 18b536c176
Pleroma.Object/1: take %Object{} as argument instead 2020-12-28 11:05:24 +01:00
Ivan Tashkinov 14fae94c0e [#3213] Made Object.hashtags/1 work with :hashtags assoc. Adjusted tests. 2020-12-28 00:08:09 +03:00
Alexander Strizhakov 2e859794ee
non condition dir creation 2020-12-27 21:58:15 +03:00
Alexander Strizhakov 7bfb041658
insreasing test coverage for StealEmojiPolicy 2020-12-27 21:53:30 +03:00
Alexander Strizhakov aafd7b44ce
check dir existence in policy 2020-12-27 21:53:30 +03:00
Ivan Tashkinov 4134abef63 Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework 2020-12-26 22:23:05 +03:00
Ivan Tashkinov cbb19d0e18 [#3213] Hashtag-filtering functions in ActivityPub. Mix task for migrating hashtags to `hashtags` table. 2020-12-26 22:20:55 +03:00
lain e4f1d8f48c Merge branch 'cachex-test' into 'develop'
Test framework overhaul (speed, reliability)

See merge request pleroma/pleroma!3209
2020-12-26 10:26:35 +00:00
Haelwenn (lanodan) Monnier 87b13c5430
Create Object.hashtags/1 wrapper 2020-12-22 05:15:34 +01:00
Haelwenn (lanodan) Monnier acb03d591b
Insert text representation of hashtags into object["hashtags"]
Includes a new mix task: pleroma.database fill_old_hashtags
2020-12-22 05:15:34 +01:00
Ivan Tashkinov ee221277b0 Encapsulation of tags / hashtags fetching from objects. 2020-12-21 22:54:26 +03:00
lain ab633e51ab Linting 2020-12-21 16:48:35 +01:00
lain 5db1e6c8d3 Pipeline test: Switch from Mock to Mox.
Speeds up the test and makes it possible to run async.
2020-12-21 16:35:12 +01:00
lain c9d73af74d Cachex: Unify arity of callback function 2020-12-21 12:03:58 +01:00
Kaizhe Huang fb02241580 Fix trailing whitespaces in lib/pleroma/web/web_finger.ex 2020-12-21 00:54:15 +11:00
lain 95a9bdfc37 Tests: Use NullCache for async tests.
Caching can't work in async tests, so for them it is mocked to a
null cache that is always empty. Synchronous tests are stubbed
with the real Cachex, which is emptied after every test.
2020-12-18 19:53:19 +01:00
lain 713612c377 Cachex: Make caching provider switchable at runtime.
Defaults to Cachex.
2020-12-18 17:44:46 +01:00
FiveYellowMice 83cd7f2b5f WebFinger: add subscribe_address in return data of JSON responses 2020-12-18 13:48:38 +00:00
Alex Gleason 80891e83d8
Merge remote-tracking branch 'upstream/develop' into registration-workflow 2020-12-17 09:05:36 -06:00
lain 8b8c317c0f Merge branch 'fix/2336-mastoapi-ws-posts-dropping' into 'develop'
Fix mastoapi ws posts dropping

Closes #2336

See merge request pleroma/pleroma!3198
2020-12-16 11:35:45 +00:00
lain 6bb4f4e172 Merge branch 'support/2255_posix_errors' into 'develop'
[#2255] added error messages for posix error code

See merge request pleroma/pleroma!3138
2020-12-15 15:16:03 +00:00
Mark Felder 6dac2ac71a Minor refactoring of the logic for hiding followers/following counts.
Field is not nullable anymore, and this is more readable.
2020-12-14 13:27:42 -06:00
Alexander Strizhakov cebe3c7def Fix for dropping posts/notifs in WS when mix task is executed
- start oban in mix tasks with empty queues, plugins and crontab
- fix for update_users_following_followers_counts
- fix for removed logo.png
- typo in resend confirmation emails mix task docs
- fix for uploads mix task (start Majic.Pool)
- fix for creating user mix task (start :fast_html app)
2020-12-14 11:02:32 -06:00
Alex Gleason 642729b49f Fix AudioVideoValidator markdown 2020-12-11 17:22:54 -06:00
Alex Gleason f8c93246d6 Refactor Earmark code, fix tests 2020-12-11 17:22:42 -06:00
Alex Gleason e9e17e5df3 Upgrade Earmark to v1.4.10 2020-12-11 17:22:17 -06:00
Ivan Tashkinov 7fff9c1bee Tweaks to OAuth entities expiration: changed default to 30 days, removed hardcoded values usage, fixed OAuthView (expires_in). 2020-12-09 21:14:39 +03:00
lain 477c6c8e55 Merge branch 'auth-improvements' into 'develop'
Cookie auth rework / Auth subsystem refactoring and tweaks

Closes pleroma/secteam/pleroma#3

See merge request pleroma/pleroma!3112
2020-12-09 15:55:45 +00:00
lain 1436a2fa2d Merge branch 'stream-follow-updates' into 'develop'
Stream follow updates

Closes #2299

See merge request pleroma/pleroma!3183
2020-12-09 15:52:31 +00:00
Ivan Tashkinov a010c5b16a Merge remote-tracking branch 'remotes/origin/develop' into auth-improvements 2020-12-06 13:59:35 +03:00
Ivan Tashkinov e9859b68fc [#3112] Ensured presence and consistency of :user and :token assigns (EnsureUserTokenAssignsPlug). Refactored auth info dropping functions. 2020-12-06 13:59:10 +03:00
feld 6adad96c79 Merge branch 'issue/2256' into 'develop'
[#2256] added subject actor to moderation log

See merge request pleroma/pleroma!3164
2020-12-04 17:49:05 +00:00
Egor Kislitsyn c9afb350e7
Document follow relationship updates and cleanup 2020-12-02 19:16:36 +04:00
Egor Kislitsyn 35ba48494f
Stream follow updates 2020-12-02 00:18:58 +04:00
Ivan Tashkinov d50a3345ae [#3112] Allowed revoking same-user token from any apps. Added tests. 2020-11-30 21:55:48 +03:00
Ivan Tashkinov 50e47a215f Merge remote-tracking branch 'remotes/origin/develop' into auth-improvements 2020-11-28 21:51:27 +03:00
Ivan Tashkinov f1b07a2b2b OAuth form user remembering feature. Local MastoFE login / logout fixes. 2020-11-28 21:51:06 +03:00
Alexander Strizhakov 6aadb1cb40
digest algorithm is taken from header 2020-11-27 08:10:52 +03:00
Ivan Tashkinov 12a5981cc3 Session token setting on token exchange. Auth-related refactoring. 2020-11-25 21:47:23 +03:00
Ivan Tashkinov 489b12cde4 Merge remote-tracking branch 'remotes/origin/develop' into auth-improvements 2020-11-21 19:47:46 +03:00
Ivan Tashkinov ccc2cf0e87 Session-based OAuth auth fixes (token expiration check), refactoring, tweaks. 2020-11-21 19:47:25 +03:00
Alex Gleason 30ed7b502f
Merge remote-tracking branch 'upstream/develop' into registration-workflow 2020-11-21 10:23:53 -06:00
feld ecd1ef8cb5 Merge branch 'fix/2302-report-duplicates' into 'develop'
Fix for forwarded reports

Closes #2303 and #2302

See merge request pleroma/pleroma!3146
2020-11-20 18:40:15 +00:00
feld 79a509ee61 Merge branch '2301-users-search-discoverability-fix' into 'develop'
[#2301] Proper handling of User.is_discoverable

Closes #2301

See merge request pleroma/pleroma!3162
2020-11-19 20:33:52 +00:00
feld cd1b4155d5 Merge branch 'oban-jobs-to-simple-tasks' into 'develop'
Moving some background jobs into simple tasks

Closes #1790

See merge request pleroma/pleroma!3129
2020-11-19 20:32:32 +00:00
Maksim Pechnikov 66f411fba0 added subject actor to moderation log 2020-11-19 22:13:45 +03:00
Ivan Tashkinov b27d8f7437 Merge remote-tracking branch 'remotes/origin/develop' into 2301-users-search-discoverability-fix
# Conflicts:
#	CHANGELOG.md
2020-11-19 19:35:44 +03:00
Ivan Tashkinov e164c37139 [#2301] Proper handling of `User.is_discoverable`: users appear in in-service search but are hidden from external services like search bots. 2020-11-19 19:30:02 +03:00
Haelwenn c8d11c3064 Merge branch '2317-old-reset-tokens' into 'develop'
Resolve "Don't allow old password reset tokens"

Closes #2317

See merge request pleroma/pleroma!3160
2020-11-19 16:22:14 +00:00
lain 11e0d5f9ac Password Resets: Don't accept tokens above a certain age.
By default, one day
2020-11-19 12:27:06 +01:00
Alexander Strizhakov 8a8c154b4e
test fixes 2020-11-19 09:58:32 +03:00
Alexander Strizhakov be0b874e1d
fix for mastodon forwarded reports 2020-11-19 09:53:14 +03:00
Alexander Strizhakov e2bf6b1f7e
fix for forwarded reports 2020-11-19 09:53:13 +03:00