this post was submitted on 23 Mar 2025
107 points (100.0% liked)
Fediverse
32124 readers
1506 users here now
A community to talk about the Fediverse and all it's related services using ActivityPub (Mastodon, Lemmy, KBin, etc).
If you wanted to get help with moderating your own community then head over to [email protected]!
Rules
- Posts must be on topic.
- Be respectful of others.
- Cite the sources used for graphs and other statistics.
- Follow the general Lemmy.world rules.
Learn more at these websites: Join The Fediverse Wiki, Fediverse.info, Wikipedia Page, The Federation Info (Stats), FediDB (Stats), Sub Rehab (Reddit Migration)
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
They're not, they're a different kind of object on the ActivityPub level. Lemmy and some others use the unofficial extension called Litepub which includes a custom ChatMessage type, while Mastodon and others have chosen to repurpose the Note object (used for posts and comments on Mastodon and comments on Lemmy) with limited visibility and weird mention rules.
Sounds like the protocol needs an upgrade if people are doing funny stuff like that. No?
I recently did a library implementing pretty much the whole ActivityPub protocol and let me tell you one thing I've learned: ActivityPub is a half-assed unfinished mess.
It has so little constraints that pretty much anything is valid. You'd think that there was some logic at the core, but not really.
For example, there's the Like activity, the name is pretty self-explanatory. But it's valid to like anything. You want to like another Like activity? Why not! So you can like a like that likes a like...
Obviously, no real project implements such nonsense. But because almost everything is valid and up to interpretation of the implementer, there really is no single ActivityPub to implement that gets you running smoothly. There are many de-facto standards with various levels of compatibility with each other. Sending private messages is one such thing that many projects chose to implement in different ways.
Fun fact: Without implementing the HTTP Signatures spec, your app will not be able to send any activities to any software, because ActivityPub allows anyone to impersonate anyone, which obviously didn't really fly with people developing actual software that uses it.
In conclusion, pure ActivityPub is an unusable mess in its pure form that literally won't be able to communicate with other software implementing "ActivityPub," so everyone is kind of implementing a similar slice/hybrid of ActivityPub and other protocols, but not exactly the same ActivityPub.
Email specs be like 👀
Can you send me some details at my totally valid email
"Rikudou's personal email"@5.75.133.3
?