summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-05-22Webfinger: Allow managing account for subdomainLain Soykaf
2024-05-22Changelog: Adjust changelog typeLain Soykaf
2024-05-22Add changelogLain Soykaf
2024-05-22Webfinger: Fix testLain Soykaf
2024-05-22Prevent webfinger spoofingAlex Gleason
2024-05-22Webfinger: Add test showing wrong webfinger behaviorLain Soykaf
2024-05-21Merge branch 'status-notification-type' into 'develop'lain
Add "status" notification type See merge request pleroma/pleroma!3659
2024-05-20Fix `get_notified_from`marcin mikołajczak
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-20CI: Specify correct image name.Lain Soykaf
2024-05-20CI: Specify version fully in base image tagLain Soykaf
2024-05-20CI: Add new builders for base imagesLain Soykaf
2024-05-20Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into bump-elixirLain Soykaf
2024-05-19Merge branch 'familiar-followers' into 'develop'lain
Implement `/api/v1/accounts/familiar_followers` See merge request pleroma/pleroma!4098
2024-05-19Merge branch 'mark-read' into 'develop'lain
PleromaAPI: Simplify marking notifications as read See merge request pleroma/pleroma!4111
2024-05-18PleromaAPI: marking notifications as read no longer returns notificationsMark Felder
2024-05-18Merge remote-tracking branch 'origin/develop' into status-notification-typemarcin mikołajczak
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-16Merge branch 'revert-e944b152' into 'develop'feld
Revert "Merge branch 'strip-object-actor' into 'develop'" See merge request pleroma/pleroma!4112
2024-05-16Revert "Merge branch 'strip-object-actor' into 'develop'"feld
This reverts merge request !4105
2024-05-16Merge branch 'bad-mrf' into 'develop'feld
Startup detection for configured MRF modules that are missing or incorrectly defined See merge request pleroma/pleroma!4110
2024-05-16Startup detection for configured MRF modules that are missing or incorrectly ↵Mark Felder
defined
2024-05-15Merge branch 'strip-object-actor' into 'develop'feld
Strip actor from objects before federating Closes #3269 See merge request pleroma/pleroma!4105
2024-05-15Changelog for stripping actor from objectsMark Felder
2024-05-15Merge branch 'instance_rules' into 'develop'feld
Instance rules See merge request pleroma/pleroma!3669
2024-05-15Merge branch 'fix-muted-web-push' into 'develop'feld
Fix processing of Web Push and streaming notifications See merge request pleroma/pleroma!4032
2024-05-11Merge branch 'mastodon-instance-v2' into 'develop'feld
Add new values to /api/v2/instance Closes #3250 and #3251 See merge request pleroma/pleroma!4106
2024-05-11Merge branch 'develop' into fix-muted-web-pushMark Felder
2024-05-08Merge branch 'restore/card-img-alt' into 'develop'feld
Include image description in status media cards See merge request pleroma/pleroma!4108
2024-05-08Add test for StatusView rendering of Cards when missing descriptionsMark Felder
2024-05-08Improve StatusView tests for CardsMark Felder
2024-05-08Include image description in status media cardsmarcin mikołajczak
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-08Merge branch 'rich-media-db' into 'develop'feld
RichMedia refactor See merge request pleroma/pleroma!4057
2024-05-07Fix module struct matchingMark Felder
2024-05-07CredoMark Felder
2024-05-07CredoMark Felder
2024-05-07Fix compile warningMark Felder
warning: "else" clauses will never match because all patterns in "with" will always match lib/pleroma/web/rich_media/parser/ttl/opengraph.ex:10
2024-05-08Mastodon API: Remove deprecated GET /api/v1/statuses/:id/card endpointMark Felder
Removed back in 2019 https://github.com/mastodon/mastodon/pull/11213
2024-05-08Remove test validating missing descriptions are returned as an empty stringMark Felder
2024-05-08Improve test descriptionMark Felder
2024-05-08Rich Media Cards are fetched asynchonously and not guaranteed to be ↵Mark Felder
available on first post render
2024-05-08Rich Media Cards are cached by URL not per statusMark Felder
2024-05-07Fix broken Rich Media parsing when the image URL is a relative pathMark Felder
2024-05-07Respect the TTL returned in OpenGraph tagsMark Felder
2024-05-07Fix broken testsMark Felder
2024-05-07Increase the :max_body for Rich Media to 5MBMark Felder
Websites are increasingly getting more bloated with tricks like inlining content (e.g., CNN.com) which puts pages at or above 5MB. This value may still be too low.
2024-05-07RichMedia refactorMark Felder
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-07Merge branch 'revert-50af909c' into 'develop'feld
Revert "Merge branch 'pleroma-card-image-description' into 'develop'" See merge request pleroma/pleroma!4107
2024-05-07Revert "Merge branch 'pleroma-card-image-description' into 'develop'"feld
This reverts merge request !4101
2024-05-07Update changelog entryMark Felder
2024-05-07Add the absent max_featured_tags to the api spec for /api/v1/instanceMark Felder
2024-05-07Add configuration[accounts][max_pinned_statuses] to /api/v2/instanceMark Felder
Also add the absent max_featured_tags to the api spec for /api/v2/instance