Commit graph

8920 commits

Author SHA1 Message Date
floatingghost a3501cab86 ensure quote fetching obeys max thread distance (#119)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/119
2022-07-26 17:28:47 +00:00
FloatingGhost 0a55c37182 don't error out if the featured collection has a string ID 2022-07-26 15:08:35 +01:00
floatingghost 1f6deb0ef4 include local instance in bubble timeline (#117)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/117
2022-07-26 12:22:49 +00:00
floatingghost 90c4785b89 remove public post quarantine exception (#114)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/114
2022-07-26 11:09:13 +00:00
floatingghost 1419eee5df Quote posting (#113)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/113
2022-07-25 16:30:06 +00:00
FloatingGhost 516d155558 open up functions in user 2022-07-24 17:56:48 +01:00
floatingghost c4e9c4bc95 extend custom runtime system (#108)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/108
2022-07-24 16:42:43 +00:00
floatingghost 4c47992686 bugfix/follow-state (#104)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/104
2022-07-23 18:58:45 +00:00
floatingghost cb6e7359af add bubble timeline (#100)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/100
2022-07-22 14:55:38 +00:00
floatingghost 0c542e58aa Remove instrumentors (#98)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/98
2022-07-21 11:32:17 +00:00
FloatingGhost 0f132b802d purge chat and shout endpoints 2022-07-21 11:29:28 +01:00
floatingghost 07ea4d73e1 update mastofe paths (#95)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/95
2022-07-20 20:13:50 +00:00
FloatingGhost 3b8bf8464f update features array 2022-07-20 15:43:41 +01:00
floatingghost 729f45ccd2 purge ldap authenticator (#92)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/92
2022-07-20 12:49:13 +00:00
floatingghost dc9f66749c remove all endpoints marked as deprecated (#91)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/91
2022-07-20 12:00:58 +00:00
FloatingGhost cf0ad02ea9 Remove scrobbling support 2022-07-19 15:07:45 +01:00
FloatingGhost 85e2e64c82 fix resolution of GTS user keys 2022-07-18 15:21:27 +01:00
floatingghost 54ed8760ff Merge branch 'from/upstream-develop/tusooa/server-announcements' into 'develop' (#85)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/85
2022-07-18 13:08:36 +00:00
floatingghost 5b4d77eaa7 maintenance: dependency upgrade (#81)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/81
2022-07-18 00:56:35 +00:00
floatingghost d2a185c013 Documentation updates for stable release (#73)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/73
2022-07-15 12:27:16 +00:00
FloatingGhost d598c7a834 remove anonymous function from plug 2022-07-14 11:17:14 +01:00
FloatingGhost 4aee900ae8 fix compilation 2022-07-14 10:48:27 +01:00
floatingghost 37ae047e16 Add swaggerUI options (#66)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/66
2022-07-13 15:09:35 +00:00
floatingghost 7c1a2092ca Merge pull request 'Change default Postgres user/DB to akkoma' (#63) from norm/akkoma:default-db-name into develop
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/63
2022-07-13 12:16:40 +00:00
Tusooa Zhu 4c5bc3e9f7 Pass remote follow avatar into media proxy 2022-07-12 15:44:38 -04:00
norm becf7dced6 Merge branch 'develop' into default-db-name 2022-07-12 16:44:10 +00:00
Norm 7dfc3f3d0e Change default Postgres user/DB to akkoma 2022-07-12 12:41:30 -04:00
floatingghost 8215434c65 also resolve @full@tags in mfm (#62)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/62
2022-07-11 13:48:43 +00:00
floatingghost ff6c8455fb [#58] ensure all users are linked in MFM content (#61)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/61
2022-07-11 11:48:29 +00:00
floatingghost 5ad256f170 [#58] pre-link MFM content (#59)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/59
2022-07-10 17:06:25 +00:00
floatingghost 82fa766ed7 Remove precompiled javascript (#55)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/55
2022-07-08 13:03:18 +00:00
floatingghost bc6bfe383f Add configurable theme color (#53)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/53
2022-07-06 20:00:43 +00:00
floatingghost a9c82b62f2 Fixes for elasticsearch 8 (#52)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/52
2022-07-06 18:57:00 +00:00
norm 3d9dabd914 Fix config path lookup (#51)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/51
Co-authored-by: norm <normandy@biribiri.dev>
Co-committed-by: norm <normandy@biribiri.dev>
2022-07-06 18:28:41 +00:00
FloatingGhost 1486ad0c6e import logger 2022-07-05 14:45:28 +01:00
FloatingGhost a036a01a1e mix format 2022-07-04 17:38:16 +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 2937495712 fix ES import from live (#29)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/29
2022-06-30 18:44:31 +00:00
FloatingGhost bc9e76cce7 Add documentation for ES search 2022-06-30 17:36:57 +01: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 a4914add8c Don't support meilisearch < 0.24.0, since it breaks things 2022-06-29 20:49:45 +01:00
Ekaterina Vaartis cc3319ac1d Make chunk size configurable 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 86971fceaa Support reindexing meilisearch >=0.24.0
It has has a different error code key
2022-06-29 20:48:44 +01:00
Ekaterina Vaartis 9e7d7ebd48 Add a reindex option
Signed-off-by: Ekaterina Vaartis <vaartis@kotobank.ch>
2022-06-29 20:48:44 +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 5ed1759091 Reorder ranking rules for (maybe) better results 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 d5cc272a91 Add a message with a count of posts to index 2022-06-29 20:48:29 +01:00
Ekaterina Vaartis dbf556cdcf Implement meilisearch auth 2022-06-29 20:48:29 +01:00
Ekaterina Vaartis 5360cc1097 Make indexing logs rewrite themselves 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 117f525fd6 Adjust content indexing to skip more unneeded stuff 2022-06-29 20:48:29 +01:00
Ekaterina Vaartis 14ef6ce80f Mark only content as searchable for meilisearch 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 52a872432d Make the chunk size smaller 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 7b3701e6b9 Make meilisearch sort on publish date converted to unix time 2022-06-29 20:48:29 +01:00
Ekaterina Vaartis abf82a63ec Make the indexing batch differently and more, show number indexed 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 41db5c8653 Add logging to milisiearch index and make it use desc(id) 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