moon.eth
b11e8888d1
MediaProxy: improve inline rendering of remote image attachments
...
Two related changes that ensure remote images render inline in timelines
instead of as clickable links.
reverse_proxy: always force inline for whitelisted content types
When `inline_content_types` is configured as a whitelist, the upstream's
`content-disposition` header used to be passed through unchanged. Some
origins send `content-disposition: attachment` for media we want
embedded, so the proxy now always emits `content-disposition: inline`
for whitelisted types (overriding the upstream header), deriving a
filename from `MIME.extensions/1` (e.g. `inline.gif`) so browsers have
something to use for "Save As". When the type has no known extension,
the bare token `inline` is emitted. The `inline_content_types: true`
(pass-through) and `:false` (always attachment) behaviours are
unchanged.
ActivityPub: sniff MIME type for extensionless/generic attachments
Some remotes (e.g. extensionless Cloudflare Images URLs) ship
attachments with no usable `mediaType` (missing, empty, or
`application/octet-stream`), which would render as links instead of
inline images. `AttachmentValidator.fix_media_type/1` now fetches the
first 8 KB of the URL and runs it through libmagic when the declared
type carries no real information. Only `image/*` results replace the
declared type; any other result, non-2xx response, transport error, or
exception yields `nil` and the original type is kept, so ingestion
never blocks and non-image media is never reclassified. Present real
types are left untouched (no fetch is attempted).
The new logic lives in `Pleroma.Web.ActivityPub.ObjectValidators.AttachmentTypeSniffer`.
Tests: comprehensive coverage of both changes, including a dedicated
suite for the sniffer covering happy paths, non-image bodies, HTTP
failures, raised exceptions, guard clauses, and verification that the
Range header is sent; AttachmentValidator tests for mimeType fallback,
empty-string mediaType, multi-URL sniffing, and HTTP-failure fallback;
ReverseProxy tests for inline_content_types `true`/`false`/custom
whitelists, bare-inline for types without a MIME extension, and
attachment_name handling.
2026-07-14 15:04:06 +09:00
nicole mikołajczyk
b0ae451942
Merge pull request 'Allow attaching emojis to user lists' ( #7929 ) from mkljczk/pleroma:list-emoji into develop
...
Reviewed-on: https://git.pleroma.social/pleroma/pleroma/pulls/7929
2026-06-29 12:51:43 +00:00
nicole mikołajczyk
cb0a1d1602
Merge pull request 'Grouped Notifications: Add feature flag to instance view and nodeinfo' ( #7926 ) from phnt/pleroma:grouped-notifs-flag into develop
...
Reviewed-on: https://git.pleroma.social/pleroma/pleroma/pulls/7926
2026-06-29 11:28:45 +00:00
Phantasm
964feb1e47
InstanceView: Remove unreachable guards in filter_render
2026-06-28 00:36:43 +02:00
Phantasm
dd07088377
InstanceView: lint tests
2026-06-28 00:19:38 +02:00
Phantasm
3027052b0d
InstanceView: Remove wall of changed configs in show render tests.
...
Switched to using config defaults instead.
2026-06-28 00:17:28 +02:00
Phantasm
d19a9f768c
InstanceView: Tighten show2.json
2026-06-27 23:39:48 +02:00
Phantasm
6e03f1d789
InstanceView: Tighten show.json render test, rename show2-only funcs
2026-06-27 23:34:01 +02:00
Phantasm
ef321846d4
InstanceView: Use attribute for pleroma_configuration filter in test
2026-06-27 22:44:59 +02:00
Phantasm
6c79cc792f
InstanceView: improve filtering in tests, simplify
2026-06-27 22:42:50 +02:00
Phantasm
9912b2d16a
InstanceView: lint tests
2026-06-26 02:05:55 +02:00
Phantasm
93fe0f5ab5
InstanceView: Filter out *configuration keys from *configuration2
2026-06-26 02:05:50 +02:00
Phantasm
6393fe0a9e
InstanceView: removing unneeded doubling of attributes in tests
2026-06-26 01:59:57 +02:00
Phantasm
0337bd0ae4
InstanceView: Add show2.json render test
2026-06-26 01:59:57 +02:00
Phantasm
c290f022de
InstanceView: Add show.json render test
2026-06-26 01:59:54 +02:00
Phantasm
e45dad2104
InstanceView: Add domain_blocks.json render test
2026-06-23 22:42:15 +02:00
Phantasm
df67f21974
InstanceView: use shorter setup syntax when applicable
2026-06-23 22:24:44 +02:00
Phantasm
86725b5a00
InstanceView: add rule(s), translation render tests
2026-06-23 22:22:49 +02:00
Phantasm
7e9b8a7663
InstanceView: Add federation/0 func test
2026-06-23 18:20:16 +02:00
Phantasm
19a84baf82
InstanceView: Add feature flag tests
2026-06-23 17:26:47 +02:00
nicole mikołajczyk
c6d1cead83
Allow attaching emojis to user lists
...
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2026-06-23 16:08:52 +02:00
Phantasm
07c65adb0c
Grouped Notifications: Add feature flag to instance view and nodeinfo
2026-06-10 22:54:06 +02:00
lain
6f5ea55613
Merge pull request 'allow <center> (used by mfm)' ( #7920 ) from mfm-center into develop
...
Reviewed-on: https://git.pleroma.social/pleroma/pleroma/pulls/7920
2026-06-05 09:24:15 +00:00
lain
98cd1bbb9a
Merge pull request 'Add grouped notifications API' ( #7910 ) from issue-7905-grouped-notifications into develop
...
Reviewed-on: https://git.pleroma.social/pleroma/pleroma/pulls/7910
Reviewed-by: Phantasm <phnt@noreply.git.pleroma.social>
2026-06-05 09:23:26 +00:00
Henry Jameson
86dd9663fc
allow <center> (used by mfm)
2026-06-01 22:06:45 +03:00
Lain Soykaf
fc9e6793ce
Address grouped notification review cleanup
2026-05-29 12:30:33 +04:00
lain
aa16f40f09
Merge pull request 'Prepared FE E2E Docker image' ( #7884 ) from docker-e2e-image into develop
...
Reviewed-on: https://git.pleroma.social/pleroma/pleroma/pulls/7884
2026-05-25 12:33:27 +00:00
lain
f99ce5b2e6
Merge pull request 'Support paged featured collections' ( #7912 ) from issue-7887-featured-collection into develop
...
Reviewed-on: https://git.pleroma.social/pleroma/pleroma/pulls/7912
2026-05-25 12:07:56 +00:00
Lain Soykaf
e023ed7a5a
Seed E2E admin before API readiness
2026-05-25 16:06:21 +04:00
Lain Soykaf
54369c93d7
Use E2E approval config key
2026-05-25 16:05:21 +04:00
Lain Soykaf
8a410bf49f
Quote E2E entrypoint variables
2026-05-25 16:04:53 +04:00
lain
e46365bf2a
Merge pull request 'Woodpecker CI: Build armv7 Docker images' ( #7882 ) from ci/build-armv7-docker-images into develop
...
Reviewed-on: https://git.pleroma.social/pleroma/pleroma/pulls/7882
2026-05-25 11:34:27 +00:00
lain
33fdc59bc1
Merge branch 'develop' into issue-7887-featured-collection
2026-05-25 11:24:10 +00:00
lain
b1d72e16a3
Merge branch 'develop' into ci/build-armv7-docker-images
2026-05-25 11:21:23 +00:00
lain
c8c1f7d38b
Merge pull request 'Fix Websockets streaming API pushing old already federated posts to TL' ( #7907 ) from websockets-necroposts into develop
...
Reviewed-on: https://git.pleroma.social/pleroma/pleroma/pulls/7907
2026-05-25 10:25:36 +00:00
Lain Soykaf
cdb0f103a8
Tighten rich media backfill stream test
2026-05-25 14:08:07 +04:00
lain
619db0adca
Merge pull request 'Restore streaming WebSocket protocol tokens' ( #7908 ) from issue-3298-websocket-protocol into develop
...
Reviewed-on: https://git.pleroma.social/pleroma/pleroma/pulls/7908
2026-05-25 08:06:52 +00:00
Lain Soykaf
4c9fc6287e
Remove unreachable WebSocket protocol match
2026-05-25 09:26:07 +04:00
Phantasm
a5e7145c97
Merge pull request 'Woodpecker CI: Do not trigger on Weblate MRs' ( #7903 ) from phnt/pleroma:weblate-no-ci into develop
...
Reviewed-on: https://git.pleroma.social/pleroma/pleroma/pulls/7903
2026-05-24 21:47:18 +00:00
Phantasm
0c0d687330
credo, lint
2026-05-24 23:41:59 +02:00
Phantasm
6ee40cb2eb
RichMedia: Add StatusView backfill streaming tests
2026-05-24 23:41:59 +02:00
Phantasm
ff7927e219
changelog
2026-05-24 23:41:59 +02:00
Phantasm
5f55c9653c
RichMedia: Disable websockets backfill streaming in StatusView
2026-05-24 23:41:59 +02:00
Phantasm
678fe8a064
RichMedia: Add support for disabling wss streaming out on backfill
2026-05-24 23:41:58 +02:00
Phantasm
94a28d1286
RichMedia Backfill: Add cachex positive test
2026-05-24 23:41:58 +02:00
Lain Soykaf
a2a23b327b
Keep cursor cleanup scoped to grouped notifications
2026-05-23 14:27:11 +04:00
Lain Soykaf
1db2b99e48
Run group key migration before notification backfill
2026-05-23 14:00:17 +04:00
Lain Soykaf
add3844c6d
Persist notification group keys
2026-05-23 11:38:33 +04:00
lain
1a83b1d28d
Merge pull request 'reorganize mfm attributes in order they're listed in misskey repo, add missing ones' ( #7904 ) from mfm-extended into develop
...
Reviewed-on: https://git.pleroma.social/pleroma/pleroma/pulls/7904
2026-05-23 05:54:48 +00:00
hj
cda6738309
Update priv/scrubbers/default.ex
2026-05-22 20:47:52 +00:00