Commit graph

1314 commits

Author SHA1 Message Date
a0eff7cc94 Merge remote-tracking branch 'origin/develop' into fork
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-28 16:35:22 +02:00
feld
38db406ce4 Merge branch 'simpler-oban-queues' into 'develop'
Oban queue simplification

See merge request pleroma/pleroma!4123
2024-05-27 19:02:53 +00:00
Mark Felder
0847d9ebaf Oban queue simplification 2024-05-27 13:48:17 -04:00
Lain Soykaf
03d0c5abfb Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into tusooa/extract-fix 2024-05-27 19:21:20 +04:00
9876411269 Merge remote-tracking branch 'origin/develop' into fork
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-22 17:17:04 +02:00
2e76ceb5b4 Merge remote-tracking branch 'origin/develop' into status-notification-type
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-18 11:30:25 +02:00
feld
53ef576739 Merge branch 'instance_rules' into 'develop'
Instance rules

See merge request pleroma/pleroma!3669
2024-05-15 20:29:04 +00:00
adbd40049d Merge remote-tracking branch 'mkljczk-github/fork' into fork
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-14 18:11:23 +02:00
7a03e49c4d Merge remote-tracking branch 'origin/develop' into fork
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-14 18:10:03 +02:00
Mark Felder
ede414094f RichMedia refactor
Rich Media parsing was previously handled on-demand with a 2 second HTTP request timeout and retained only in Cachex. Every time a Pleroma instance is restarted it will have to request and parse the data for each status with a URL detected. When fetching a batch of statuses they were processed in parallel to attempt to keep the maximum latency at 2 seconds, but often resulted in a timeline appearing to hang during loading due to a URL that could not be successfully reached. URLs which had images links that expire (Amazon AWS) were parsed and inserted with a TTL to ensure the image link would not break.

Rich Media data is now cached in the database and fetched asynchronously. Cachex is used as a read-through cache. When the data becomes available we stream an update to the clients. If the result is returned quickly the experience is almost seamless. Activities were already processed for their Rich Media data during ingestion to warm the cache, so users should not normally encounter the asynchronous loading of the Rich Media data.

Implementation notes:

- The async worker is a Task with a globally unique process name to prevent duplicate processing of the same URL
- The Task will attempt to fetch the data 3 times with increasing sleep time between attempts
- The HTTP request obeys the default HTTP request timeout value instead of 2 seconds
- URLs that cannot be successfully parsed due to an unexpected error receives a negative cache entry for 15 minutes
- URLs that fail with an expected error will receive a negative cache with no TTL
- Activities that have no detected URLs insert a nil value in the Cachex :scrubber_cache so we do not repeat parsing the object content with Floki every time the activity is rendered
- Expiring image URLs are handled with an Oban job
- There is no automatic cleanup of the Rich Media data in the database, but it is safe to delete at any time
- The post draft/preview feature makes the URL processing synchronous so the rendered post preview will have an accurate rendering

Overall performance of timelines and creating new posts which contain URLs is greatly improved.
2024-05-07 19:54:56 -04:00
0bf8a2e38c Merge remote-tracking branch 'origin/develop' into HEAD
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-04-27 20:26:16 +02:00
4f5c4d79c4 FEP-2c59, add "webfinger" to user actor
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-04-11 17:50:11 +02:00
cd86965cde Add hint to rules
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-04-06 12:01:04 +02:00
ccc3ac241f Add hint to rules
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-04-06 11:45:19 +02:00
01a5f839c5 Merge remote-tracking branch 'origin/develop' into instance_rules 2024-04-06 10:42:23 +02:00
512db8f6dc Remove service_domain leftovers
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-24 13:10:18 +01:00
8b92459345 Merge remote-tracking branch 'origin/develop' into HEAD
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-18 22:00:35 +01:00
918c406a91 Merge remote-tracking branch 'origin/develop' into instance_rules
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-18 13:50:25 +01:00
lain
2b71f4897f Merge branch 'develop' into 'bookmark-folders'
# Conflicts:
#   docs/development/API/differences_in_mastoapi_responses.md
2024-03-18 10:35:02 +00:00
51edd70319 Merge branch 'bookmark-folders' into fork
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-14 23:32:16 +01:00
53a73aada2 Merge branch 'multitenancy' into fork
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-14 23:29:24 +01:00
1b6301fee7 Use 'schema' alias for schema.org
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-14 23:12:23 +01:00
0f33698747 Merge remote-tracking branch 'origin/develop' into fork
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-12 23:08:40 +01:00
bd33a7ac8f Remove stuff I don't need to stay closer to upstream
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-12 16:07:29 +01:00
d415686bb9 Allow to group bookmarks in folders
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-01 11:04:01 +01:00
c592a0e58d Merge remote-tracking branch 'origin/develop' into HEAD
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-02-22 21:05:20 +01:00
SyoBoN
2c9fed9b73 Translated using Weblate (Japanese)
Currently translated at 63.1% (60 of 95 strings)

Translation: Pleroma/Pleroma Backend (domain errors)
Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-backend-domain-errors/ja/
2024-02-16 17:54:01 +00:00
226e53fdd7 Merge remote-tracking branch 'origin/develop' into status-notification-type
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-01-31 22:19:33 +01:00
913465f3d2 Merge remote-tracking branch 'origin/develop' into multitenancy-v2
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-01-24 16:59:21 +01:00
Haelwenn
ab3f03a04a Merge branch 'develop' into 'public-polls'
# Conflicts:
#   docs/development/API/differences_in_mastoapi_responses.md
2024-01-21 12:03:29 +00:00
6051715a99 Merge remote-tracking branch 'origin/develop' into instance_rules
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-12-22 14:34:30 +01:00
Mark Felder
fb3eb6e0a4 Fix more Logger warn -> warning 2023-12-20 16:24:27 -05:00
tusooa
453cb6a388
Merge remote-tracking branch 'upstream/stable' into mergeback/2.6.1 2023-12-15 19:43:07 -05:00
tusooa
948f01f19a
Bundle 2.6.1 frontend 2023-12-14 20:32:49 -05:00
lain
a7f82ff82e Merge branch 'scrubbers-html4-GtS' into 'develop'
scrubbers/default: Add more formatting elements from HTML4 / GoToSocial

See merge request pleroma/pleroma!3979
2023-12-10 12:18:22 +00:00
lain
ee15939d33 Skip transaction to generate the index concurrently 2023-12-09 05:54:02 +00:00
Mark Felder
003d3312fd Permit the index creation to run concurrently 2023-12-08 15:48:00 -05:00
96747ece8d Merge remote-tracking branch 'origin/develop' into multitenancy 2023-11-28 13:50:56 +01:00
lain
35774d44b2 Merge branch 'generate-unset-user-keys-migration' into 'develop'
Fix GenerateUnsetUserKeys migration

See merge request pleroma/pleroma!3976
2023-11-28 12:34:32 +00:00
cee4e2b6a1 Cache domains list
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-11-28 00:22:47 +01:00
c78495900e Merge remote-tracking branch 'origin/develop' into merge-pleroma
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-11-17 22:53:06 +01:00
Haelwenn (lanodan) Monnier
06c58bce00 scrubbers/default: Add more formatting elements from HTML4 / GoToSocial
Added: acronym, bdo, big, cite, dfn, ins, kbd, q, samp, s, tt, var, wbr
2023-11-16 18:27:32 +01:00
1ee3ba5fd3 Optionally filter local timelines according to domain
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-11-16 17:31:36 +01:00
a1a6abf6c6 Merge remote-tracking branch 'origin/develop' into multitenancy
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-11-14 13:56:33 +01:00
3075b8c923 Set domain timestamps type to utc_datetime
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-11-14 13:55:33 +01:00
c3b989951a Check if domains resolve correctly
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-11-14 13:51:55 +01:00
fe776d8b33 Fix GenerateUnsetUserKeys migration
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-11-13 14:18:22 +01:00
lain
752bc168f6 Merge branch 'quotes-count' into 'develop'
Count and display post quotes

See merge request pleroma/pleroma!3956
2023-11-12 13:38:09 +00:00
marcin mikołajczak
9a063deacc Count and display post quotes 2023-11-12 13:38:08 +00:00
Lain Soykaf
0c5cc51983 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into pleroma-meilisearch 2023-11-12 13:53:18 +04:00