Commit graph

8625 commits

Author SHA1 Message Date
FloatingGhost
1486ad0c6e import logger 2022-07-05 14:45:28 +01:00
floatingghost
364b6969eb Use finch everywhere (#33)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/33
2022-07-04 16:30:38 +00:00
sfr
058bf96798 implement Move activities (#45)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/45
Co-authored-by: sfr <sol@solfisher.com>
Co-committed-by: sfr <sol@solfisher.com>
2022-07-04 16:29:39 +00:00
FloatingGhost
95ef3a8b1e Use Akkoma modification for collections 2022-07-03 19:36:30 +01:00
FloatingGhost
05081cd81b Add collection fetching module 2022-07-03 19:20:59 +01:00
FloatingGhost
0a3a552696 Add support for a first reference in pinned objects 2022-07-03 17:25:20 +01:00
floatingghost
3f7c64f30b Fix broken attachments from owncast (#31)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/31
2022-07-01 11:14:55 +00:00
FloatingGhost
635a3c223a Add elasticsearch tests 2022-06-30 16:53:21 +01:00
FloatingGhost
1ecdb19de5 Refactor ES on top of search behaviour 2022-06-30 16:28:31 +01:00
Ekaterina Vaartis
563b964690 Change updateId to uid because apparently that's the new name 2022-06-29 20:49:45 +01:00
Ekaterina Vaartis
b7462040cc Change the meilisearch key auth to conform to 0.25.0 2022-06-29 20:49:45 +01:00
Ekaterina Vaartis
7f53aa400b Don't try removing deleted users and such from index as posts 2022-06-29 20:49:45 +01:00
Ekaterina Vaartis
7aebff799b Fix meilisearch tests and jobs for oban 2022-06-29 20:49:45 +01:00
Ekaterina Vaartis
5def4a7d49 Use oban for search indexing 2022-06-29 20:49:45 +01:00
Ekaterina Vaartis
54b2a86f47 Add a search backend behaviour 2022-06-29 20:49:45 +01:00
Ekaterina Vaartis
bac70a2bc1 Implement suggestions from the Meilisearch MR
- Index unlisted posts
- Move version check outside of the streaming and only do it once
- Use a PUT request instead of checking manually if there is need to insert
- Add error handling, sort of
2022-06-29 20:49:45 +01:00
Ekaterina Vaartis
c128798418 Rename Activity.Search to Search.DatabaseSearch 2022-06-29 20:49:44 +01:00
Ekaterina Vaartis
ea582fbf93 Rename search.ex to database_search.ex and add search/2 2022-06-29 20:49:00 +01:00
Ekaterina Vaartis
0769f06bd1 Style fixes 2022-06-29 20:49:00 +01:00
Ekaterina Vaartis
5dd908552c Move the search.ex file so credo doesn't complain 2022-06-29 20:48:59 +01:00
Ekaterina Vaartis
d99a2be351 Only add local posts to index in activity_pub
Remote ones are already added in another place
2022-06-29 20:48:44 +01:00
Ekaterina Vaartis
51faa28568 Set content-type to application/json 2022-06-29 20:48:44 +01:00
Ekaterina Vaartis
afcdd2f437 Modify some meilisearch variables 2022-06-29 20:48:44 +01:00
Ekaterina Vaartis
37913c8ddf Use proper deleted object for removing from index 2022-06-29 20:48:44 +01:00
Ekaterina Vaartis
a937a98df5 Don't try removing from index again in common_api
It's already removed in the side effects of the pipeline
2022-06-29 20:48:44 +01:00
Ekaterina Vaartis
0802c0666b Move add_to_index / remove_from_index to Pleroma.Actitivy.Search 2022-06-29 20:48:44 +01:00
Ekaterina Vaartis
41f3572152 Fix activity being passed to objec_to_search_data 2022-06-29 20:48:29 +01:00
Ekaterina Vaartis
d1079f1aa3 Add the meilisearch.stats command 2022-06-29 20:48:29 +01:00
Ekaterina Vaartis
dbf556cdcf Implement meilisearch auth 2022-06-29 20:48:29 +01:00
Ekaterina Vaartis
0cf3654907 Rework task indexing to share code with the main module
The code in the main module now scrubs new posts too
2022-06-29 20:48:29 +01:00
Ekaterina Vaartis
b3401ba7bd Also index incoming federated posts 2022-06-29 20:48:29 +01:00
Ekaterina Vaartis
a586ce0ddd Use content instead of source and scrub it 2022-06-29 20:48:29 +01:00
Ekaterina Vaartis
c3a04166a0 Tweak search ordering to hopefully return newer results 2022-06-29 20:48:29 +01:00
Ekaterina Vaartis
e5ac2ffa07 Ensure only indexing public posts and implement clearing and delete 2022-06-29 20:48:29 +01:00
Ekaterina Vaartis
e961cf2689 Initial meilisearch implementation, doesn't delete posts yet 2022-06-29 20:48:28 +01:00
Hélène
8f140deb8f 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-06-29 20:47:45 +01:00
Ilja
661d0ba481 Also use actor_type to determine if an account is a bot in antiFollowbotPolicy 2022-06-29 20:47:44 +01:00
Tusooa Zhu
3fd87b6a75 Skip cache when /objects or /activities is authenticated
Ref: fix-local-public
2022-06-29 20:47:27 +01:00
Tusooa Zhu
932e5df19e Allow to skip cache in Cache plug
Ref: fix-local-public
2022-06-29 20:47:26 +01:00
Tusooa Zhu
33d821256e Fix incorrect fallback when English is set to first language 2022-06-29 20:47:10 +01:00
Tusooa Zhu
2df25e6666 Support fallbacking to other languages 2022-06-29 20:47:10 +01:00
Tusooa Zhu
fcfb5a4967 Lint 2022-06-29 20:47:10 +01:00
Tusooa Zhu
07bd35227a Support multiple locales from userLanguage cookie 2022-06-29 20:47:10 +01:00
Tusooa Zhu
fa95bc8725 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-06-29 20:47:10 +01:00
Tusooa Zhu
845e5769ce Make lint happy 2022-06-29 20:47:10 +01:00
Tusooa Zhu
ef73f61b07 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-06-29 20:47:10 +01:00
Tusooa Zhu
72bdb0640f Allow user to register with custom language 2022-06-29 20:46:51 +01:00
Tusooa Zhu
1b77308644 Allow update_credentials to update User.language 2022-06-29 20:45:35 +01:00
Tusooa Zhu
7726148472 Send emails i18n'd using backend-stored user language 2022-06-29 20:45:19 +01:00
Tusooa Zhu
c301a95276 Make all emails translatable 2022-06-29 20:45:05 +01:00
Tusooa Zhu
63a0536d55 Make mail and mailer translatable 2022-06-29 20:45:05 +01:00
Tusooa Zhu
39cfecb188 Make static fe translatable 2022-06-29 20:45:05 +01:00
Tusooa Zhu
03aac29531 Fix tests 2022-06-29 20:45:05 +01:00
Tusooa Zhu
c6652fccae Make mfa pages translatable 2022-06-29 20:45:03 +01:00
Tusooa Zhu
8f8d2abb12 Make oauth pages translatable 2022-06-29 20:44:48 +01:00
Tusooa Zhu
793922f1d8 Use proper lang attributes in htmls 2022-06-29 20:44:16 +01:00
Tusooa Zhu
ec57e3480c Make tag feed translatable 2022-06-29 20:44:16 +01:00
Tusooa Zhu
50913c4dc5 Make password reset pages translatable 2022-06-29 20:44:16 +01:00
Tusooa Zhu
8f08c902a5 Make lint happy 2022-06-29 20:44:16 +01:00
Tusooa Zhu
ed1d9e91bc Make remote follow pages translatable 2022-06-29 20:44:15 +01:00
Tusooa Zhu
775f997c40 Prefer userLanguage cookie over Accept-Language header in detecting locale
https://git.pleroma.social/pleroma/pleroma-meta/-/issues/60
2022-06-29 20:43:41 +01:00
Ilja
a20d2847e2 After code review
Use patern matching to see if someone was superuser before
2022-06-29 20:43:41 +01:00
Ilja
1048bc1bb9 Delete report notifs when demoting from superuser
When someone isn't a superuser any more, they shouldn't see the reporsts any more either.
Here we delete the report notifications from a user when that user gets updated from being a superuser to a non-superuser.
2022-06-29 20:43:41 +01:00
Sam Therapy
8de65de3b9 Add unicode 14 support
and add a test with a unicode 14 emoji
2022-06-29 20:43:41 +01:00
floatingghost
2342fface1 Add visibility check in context path (#26)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/26
2022-06-29 09:33:57 +00:00
FloatingGhost
064c36274c Purge gopher frontend 2022-06-27 17:31:16 +01:00
floatingghost
e6cd61619f Purge SSH frontend (#23)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/23
2022-06-27 11:32:06 +00:00
FloatingGhost
d392fafa06 Remove debug prints 2022-06-25 18:43:19 +01:00
FloatingGhost
f2ff05637f Allow for embedding object data in publish 2022-06-25 18:41:26 +01:00
FloatingGhost
45b7d18871 update api spec for custom emoji reaction 2022-06-25 15:45:10 +01:00
FloatingGhost
cac39ef817 Bugfix: standardise scheme for emoji reactions 2022-06-25 15:27:46 +01:00
FloatingGhost
3928cecf6b ensure local statuses are not visible remotely 2022-06-22 17:06:40 +01:00
FloatingGhost
34e11cef47 check for local_public? on AP route 2022-06-22 16:35:12 +01:00
FloatingGhost
502382da45 cherry-pick security from upstream 2022-06-22 16:25:05 +01:00
sn0w
f2f8b81fc4
Use mediaproxy for emoji notifications if enabled 2022-06-17 14:27:22 +02:00
FloatingGhost
f15c9e8b08 format everything 2022-06-15 18:22:30 +01:00
FloatingGhost
5b11543c96 update pleroma-fe url 2022-06-15 18:18:23 +01:00
FloatingGhost
6e1d9c63da allow %{source} dict in no_empty 2022-06-14 17:41:25 +01:00
FloatingGhost
abefbcec64 Merge branch 'mfm' into develop 2022-06-14 16:25:47 +01:00
FloatingGhost
0627da0027 mix format 2022-06-14 16:25:28 +01:00
FloatingGhost
829ae13572 ensure tests pass 2022-06-14 16:24:03 +01:00
FloatingGhost
4fb2251221 Allow authoring MFM 2022-06-14 15:56:12 +01:00
FloatingGhost
3f06ccc9e3 allow source from misskey 2022-06-14 10:56:18 +01:00
sn0w
60bfaed368
Allow reacting with emojis containing a number 2022-06-14 11:47:09 +02:00
FloatingGhost
0f5bea2465 Add emoji_url to notifications to allow rendering
Ref #5
2022-06-12 13:35:14 +01:00
FloatingGhost
2abf8c982e fix secret key failure 2022-06-11 16:48:04 +01:00
FloatingGhost
24bf8c3977 mix format 2022-06-11 16:14:31 +01:00
FloatingGhost
32fbd2e4e3 fix all tests 2022-06-11 16:14:22 +01:00
FloatingGhost
c3ed86cd1e fix emoji controller tests 2022-06-11 14:21:50 +01:00
FloatingGhost
142646426e fix emoji tests 2022-06-11 14:08:54 +01:00
FloatingGhost
71f4281850 fix quoting of custom emoji
Fixes #3
2022-06-11 14:08:13 +01:00
FloatingGhost
ed58a6b070 run mix format 2022-06-10 13:41:08 +01:00
FloatingGhost
801f2b0fc5 Add capabilities for emoji reactions
Patch from helene@p.helene.moe
2022-06-09 12:56:34 +01:00
FloatingGhost
0f2bfeaea7 Enable mediaproxy by default 2022-06-08 17:19:42 +01:00
FloatingGhost
e910f21d8d allow undoing 2022-06-08 13:27:25 +01:00
FloatingGhost
e724da2a42 remove io.inspects 2022-06-08 12:58:12 +01:00
FloatingGhost
c5467d04e4 add outbound reacts 2022-06-08 12:36:38 +01:00
FloatingGhost
ad0b8c095c add custom emoji reaction support 2022-06-08 02:42:44 +01:00
FloatingGhost
f19c93cdaa use tls1.3 2022-06-07 12:24:40 +01:00
FloatingGhost
6a19fbac2f add copyright notice for forked files 2022-01-20 12:48:16 +00:00
FloatingGhost
0f6bece60d Merge remote-tracking branch 'origin/patch/readd-mastofe' into develop 2022-01-08 21:45:12 +00:00
FloatingGhost
0d012ebea1 Revert "Merge branch 'remove/mastofe' into 'develop'"
This reverts commit 6b3842cf50, reversing
changes made to 6b1282a829.
2022-01-08 21:44:37 +00:00
FloatingGhost
8cc6359a85 Merge remote-tracking branch 'upstream/bookwyrm-entities' into develop 2022-01-07 20:23:53 +00:00
FloatingGhost
25b4395830 just drop unknown tags 2022-01-07 20:14:04 +00:00
FloatingGhost
34780cf182 Merge remote-tracking branch 'upstream/bookwyrm-entities' into develop 2022-01-07 17:36:21 +00:00
FloatingGhost
2cc6b1e1bd Allow for varying name fields 2022-01-07 17:35:56 +00:00
FloatingGhost
5c48fe1138 make credo happy 2022-01-07 17:31:13 +00:00
FloatingGhost
92d3742072 Merge remote-tracking branch 'upstream/bookwyrm-entities' into develop 2022-01-07 17:21:44 +00:00
FloatingGhost
9ee27fb5ec add bookwyrm entity tests 2022-01-07 17:17:18 +00:00
FloatingGhost
680c5d8d89 Add compatibility with bookwyrm's weird entities 2022-01-07 16:51:04 +00:00
FloatingGhost
3252ed0f54 format 2021-12-30 18:05:44 +00:00
FloatingGhost
4e7e95a17e don't error out 2021-12-30 18:05:44 +00:00
FloatingGhost
4e8ee48cff delete activities 2021-12-30 18:05:44 +00:00
FloatingGhost
12a171844b Merge remote-tracking branch 'upstream/develop' into develop 2021-12-30 18:05:22 +00: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
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
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
Alex Gleason
326575d5b7
Merge remote-tracking branch 'origin/develop' into finch 2021-12-27 11:31:15 -06:00
Alex Gleason
a659428024 Merge branch 'restricted-moderators' into 'develop'
AdminAPI: Optionally restrict moderators from accessing sensitive data

See merge request pleroma/pleroma!3578
2021-12-27 17:06:22 +00:00
Alex Gleason
6e27fc9c12 Merge branch 'log-slow-queries' into 'develop'
Log slow Ecto queries

See merge request pleroma/pleroma!3553
2021-12-27 15:41:06 +00:00
Ivan Tashkinov
08c0f09bad Made slow queries logging disabled by default. 2021-12-27 09:13:31 +03: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
Ivan Tashkinov
3e9e7178bc Configurability of slow queries logging ([:pleroma, :telemetry, :slow_queries_logging]). Adjusted log messages truncation to 65 kb (was default: 8 kb). Non-truncated logging of slow query params. 2021-12-26 22:49:00 +03:00
Lain Soykaf
4cf03046f5 Merge branch 'finch' of git.pleroma.social:pleroma/pleroma into finch 2021-12-26 16:57:17 +01:00
Lain Soykaf
6efbd08854 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into finch 2021-12-26 16:41:17 +01: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
Ivan Tashkinov
e009950845 Slow queries logging improvements: added EXPLAIN results, listed params, improved stacktrace. 2021-12-19 20:45:28 +03: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
a1batross
31b9034a27 emoji/loader.ex: be more verbose about which emoji pack config is loading now
To avoid issue when one of the hundred JSON files is malformed and
administrator don't know which one
2021-12-17 14:15:44 +00:00
Mark Felder
5660bee2dc Dirty hack to make mediaproxy functional by relying on Hackney for that part 2021-12-16 11:36:58 -06:00
FloatingGhost
1863ae59fb format 2021-12-16 16:13:48 +00:00
FloatingGhost
415d9dd6f6 Merge remote-tracking branch 'origin/feature/elasticsearch' into develop 2021-12-16 16:13:41 +00:00
FloatingGhost
0c0ea169d4 Merge remote-tracking branch 'upstream/develop' into develop 2021-12-16 16:10:08 +00:00
FloatingGhost
3a9b83413e Merge branch 'develop' into feature/elasticsearch 2021-12-16 16:07:15 +00:00
FloatingGhost
f3d9c58fef Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop 2021-12-16 16:07:00 +00:00
FloatingGhost
742b86fdaa format 2021-12-16 16:05:33 +00:00
FloatingGhost
9134ef5ecb add timestamp 2021-12-16 16:05:18 +00:00
FloatingGhost
2152832780 add timestamp 2021-12-16 15:58:56 +00:00
FloatingGhost
26cae62c7f maybe 2021-12-16 15:20:34 +00:00
FloatingGhost
9d4727598d fix remote hashtags 2021-12-16 15:20:34 +00:00
FloatingGhost
1745606ab5 maybe 2021-12-16 15:20:22 +00:00
FloatingGhost
418212c71c fix remote hashtags 2021-12-16 15:09:36 +00: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
Lain Soykaf
4e98ba3c3a Application: Actually start finch if it's needed 2021-12-15 15:42:37 -05:00
Lain Soykaf
abb62dd886 Application, dependencies: prepare for finch 2021-12-15 13:53:09 -05:00
sadposter
25920c10df don't try indexing non-people 2021-12-15 11:08:13 +00:00
sadposter
93e41df75d don't try indexing non-people 2021-12-15 11:05:30 +00:00
FloatingGhost
ccc5c59c50 re-add fetching by url 2021-12-15 10:58:09 +00:00
FloatingGhost
d5c8415496 re-add fetching by url 2021-12-15 10:57:47 +00:00
sadposter
c50ad91d31 fix empty queries returning 50 results 2021-12-14 15:02:48 +00:00
sadposter
7f30218b82 extra cool 2021-12-14 15:02:48 +00:00
sadposter
d1bb10c88e fix empty queries returning 50 results 2021-12-14 15:02:11 +00:00
sadposter
8378c3a8bc extra cool 2021-12-14 14:48:24 +00:00
FloatingGhost
0d7bbee430 add timeouts 2021-12-14 14:35:46 +00:00
FloatingGhost
bed6f4e12c add timeouts 2021-12-14 14:33:34 +00:00
FloatingGhost
9d5d964bf8 merge 2021-12-14 14:28:15 +00:00
sadposter
cc4c5f22f4 fix inbound federation 2021-12-14 14:27:42 +00:00
sadposter
94c22baaa3 filter by user type 2021-12-14 14:16:21 +00:00
sadposter
8f78cb3050 Merge branch 'develop' of gitssh.ihatebeinga.live:IHBAGang/pleroma into develop 2021-12-14 14:01:09 +00:00
sadposter
5d901c337e fix inbound federation 2021-12-14 13:58:16 +00:00
FloatingGhost
703f53c08f Search through users and hashtags as well 2021-12-14 13:55:14 +00:00
FloatingGhost
a85bf5929b add hashtag indexing 2021-12-14 13:55:14 +00:00
FloatingGhost
6ca70833f5 add user import 2021-12-14 13:55:14 +00:00
FloatingGhost
c03e8d46e8 Search through users and hashtags as well 2021-12-14 13:53:46 +00:00
FloatingGhost
8547cefaff add hashtag indexing 2021-12-14 12:37:10 +00:00
Alex Gleason
8672ad6b00
TwitterAPI: allow deleting one's own account with request body 2021-12-13 17:07:29 -05:00
FloatingGhost
6bb19454fd add user import 2021-12-13 20:27:35 +00:00
Alex Gleason
108dfd1f87
Search: limit number of results 2021-12-12 22:50:07 -06:00
sadposter
06ab00d625 fix buggos 2021-12-12 20:12:06 +00:00
FloatingGhost
a504e250a9 fully reference es 2021-12-12 20:12:06 +00:00
FloatingGhost
71126fea0c fix multi-after-transaction 2021-12-12 20:12:06 +00:00
FloatingGhost
dbdf0c005e pipeline it 2021-12-12 20:12:06 +00:00
sadposter
ef9dea66b2 fix bug in inbound 2021-12-12 20:12:06 +00:00
sadposter
e835212a7d enforce visibility 2021-12-12 20:12:06 +00:00
sadposter
144c06487a fix buggos 2021-12-12 20:01:07 +00:00
FloatingGhost
ee1a2fc451 fully reference es 2021-12-12 19:40:31 +00:00
FloatingGhost
67f8bdce4f fix multi-after-transaction 2021-12-12 19:40:05 +00:00
FloatingGhost
7502da993b pipeline it 2021-12-12 19:39:07 +00:00
sadposter
f341e68622 fix bug in inbound 2021-12-12 19:31:47 +00:00
sadposter
23c758bbe7 enforce visibility 2021-12-12 18:25:20 +00:00
FloatingGhost
0fbf7faf85 Remove IO inspect 2021-12-12 17:35:35 +00:00
FloatingGhost
de60b1f3c1 make search provider configurable 2021-12-12 17:35:35 +00:00
FloatingGhost
fce13cce46 add extra filters 2021-12-12 17:35:35 +00:00
FloatingGhost
449d8ff165 integrate search endpoint with ES 2021-12-12 17:35:35 +00:00
FloatingGhost
9002e5155b Add import functionality 2021-12-12 17:35:35 +00:00
Alex Gleason
da83839dc1 AttachmentValidator: ingest width and height 2021-12-12 17:35:02 +00:00
Lain Soykaf
eb7bbe3fc8 Linting. 2021-12-12 17:35:02 +00:00
Finn Behrens
66b60f1ee2 move result into with guard 2021-12-12 17:35:02 +00:00
FloatingGhost
0fab887eee make linter happy 2021-12-12 17:35:02 +00:00
FloatingGhost
47833e31ad Remove IO inspect 2021-12-12 17:26:06 +00:00
FloatingGhost
ed3a866f94 make search provider configurable 2021-12-12 17:23:44 +00: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
FloatingGhost
345eb7b3f8 add extra filters 2021-12-11 19:56:15 +00:00
FloatingGhost
3478492945 integrate search endpoint with ES 2021-12-11 18:48:46 +00:00
FloatingGhost
c684265585 Add import functionality 2021-12-11 17:36:49 +00: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
sadposter
6a6260f64e re-enable deactivated check 2021-12-06 12:03:16 +00:00
FloatingGhost
db46913dcc make linter happy 2021-12-06 11:50:51 +00:00
FloatingGhost
cd8bdbc761 Make deactivated user check into a subquery
Fixes #2792
2021-12-06 11:44:17 +00:00
sadposter
ca2bd8b72b remove deactivated_users call 2021-12-06 10:18:16 +00:00
Alex Gleason
949a53e327
Log Ecto queries > 500ms 2021-12-05 18:29:33 -05:00
sadposter
bb54720778 add debug 2021-12-05 21:56:11 +00:00
sadposter
c85b278f1e Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop 2021-12-05 15:01:23 +00: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
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
sadposter
a61207cf8f Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop 2021-11-19 13:43:24 +00: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
6aff3d3204 Merge branch 'fix-object-deletion-timeout' into 'develop'
Fix Activity.delete_all_by_object_ap_id/1 timeout so users can be deleted

Closes #2704

See merge request pleroma/pleroma!3479
2021-11-15 13:21:42 +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
sadposter
eb1c7d75f4 Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop 2021-10-16 14:08:04 +01:00
Haelwenn
6b5c2d5f86 Merge branch 'refactor/group_validator_fields' into 'develop'
object_validators: Group common fields in CommonValidations

See merge request pleroma/pleroma!3384
2021-10-10 08:57:11 +00: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
Mark Felder
3af7db9fd7 Fix typo 2021-10-06 10:49:25 -05: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
sadposter
bd9c9136f9 Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop 2021-09-13 16:14:58 +01: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
sadposter
c31e491e99 Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop 2021-09-07 10:00:31 +01: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
sadposter
b202cf15d6 Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop 2021-08-30 22:04:42 +01: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
Tusooa Zhu
bd0eb1c675
Make activity search properly use GIN indexes
The original approach to search in GIN indexes is to use
`to_tsvector(text)` in the WHERE clause of the query. According to
postgres docs [pdoc], this method does not make use of the index,
while `to_tsvector(config, text)` does. This commit changed the
query to use the two-argument `to_tsvector()`.

[pdoc]: https://www.postgresql.org/docs/12/textsearch-tables.html

To obtain the search config in use, we make a query to the db first.
The `::regconfig::oid` hack is needed because Postgrex does not support
regconfig type directly [postgrexbug]. I use the conversion from and to
`oid` instead of `text` because I tested in the actual DB and querying
using the conversion via `text` is slow just as the one-argument
`to_tsvector()` variant.

[postgrexbug]: https://github.com/elixir-ecto/postgrex/issues/502

Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3519

Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/2758
2021-08-28 18:26:04 +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
Tusooa Zhu
a9984c6da7
Make activity search properly use GIN indexes
The original approach to search in GIN indexes is to use
`to_tsvector(text)` in the WHERE clause of the query. According to
postgres docs [pdoc], this method does not make use of the index,
while `to_tsvector(config, text)` does. This commit changed the
query to use the two-argument `to_tsvector()`.

[pdoc]: https://www.postgresql.org/docs/12/textsearch-tables.html

To obtain the search config in use, we make a query to the db first.
The `::regconfig::oid` hack is needed because Postgrex does not support
regconfig type directly [postgrexbug]. I use the conversion from and to
`oid` instead of `text` because I tested in the actual DB and querying
using the conversion via `text` is slow just as the one-argument
`to_tsvector()` variant.

[postgrexbug]: https://github.com/elixir-ecto/postgrex/issues/502

BUG: https://git.pleroma.social/pleroma/pleroma/-/issues/2758
2021-08-27 22:27:17 -04: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