About image metadata:
If I open an image in Mac Preview, for example, then copy the image and paste it into a post on demo.rss.chat, the posted image does not contain metadata such as GPS altitude, GPS date/time, GPS latitude, or GPS longitude.
However, if I copy the image file itself (for example, from Finder) and paste it into a post on demo.rss.chat, the posted image does contain all of that metadata, including GPS altitude, GPS date/time, GPS latitude, and GPS longitude.
Is this the intended behavior, or should the metadata be stripped before the image is saved by rss.chat?
Maybe non-technical users should be made aware of this?
We’ll look into it, first thing I’d do is ask Claude what’s up. You could do that too. My theory is that it’s up to the system you copied it from to have a pref that protects this info.
I asked Claude, as you suggested. Here's the summary.
Your theory is close: it does depend on what the client puts on the clipboard, but there's no system pref involved. When you copy an image in Preview, macOS puts re-encoded pixel data on the pasteboard, so the EXIF from the original file never travels — the paste arrives "clean" by accident. When you copy the file in Finder, the browser receives the raw file bytes, GPS and all, and rss.chat stores them as-is. Same story on other OSes, each with its own inconsistencies — so relying on the client means the outcome depends on which copy gesture the user happened to make.
The only fix that protects everyone equally is stripping server-side at upload time, before the file is stored. One implementation note: apply the EXIF orientation to the pixels before purging metadata (e.g. sharp's .rotate() with no args), otherwise iPhone photos come out sideways.
Since rss.chat is a publishing tool, some users legitimately want to keep EXIF (camera settings, copyright/IPTC). So a user pref could make sense: a single checkbox like "Strip photo metadata at upload" — checked by default. Users who uncheck it know what they're doing; users who never open the prefs are protected. Defaulting the other way wouldn't help the non-technical users this is about, since they'll never find the setting.
On the soFab side (we self-host an rss.chat instance at rsschat.sofab.ch), here's how we're handling it in the meantime — from our privacy policy, now live:
Image and video metadata. Images and videos uploaded to mytis.sofab.ch are re-encoded or remuxed on receipt: embedded metadata (EXIF — GPS location, device details, timestamps) is removed and never stored. Files contained in ZIP archives are transferred as-is and are not modified. Exception: rsschat.sofab.ch runs third-party software (rss.chat), where posts are public by design; it does not yet strip metadata, so files posted there keep their embedded metadata.
We deliberately don't patch the rss.chat code we host, so disclosure is our interim answer — if stripping lands upstream, we'll happily delete that exception sentence.