Honestly, I don't really care what strategy other #ActivityPub implementations follow to comply with the spec. (I solved it in #Fedify by just using a proper JSON-LD processor.) It's just a bit annoying that I always send valid JSON-LD documents, but whenever I encounter an interoperability bug where the other side can't process them, I'm the one who has to send them a patch to fix it. 😩
4 replies
@hongminhee So, I really appreciate that you are doing this work. I know it's hard, and it feels unrewarding, but it really matters, and it really helps the ecosystem.
Please let me know if I can help out in these efforts.
I hope that all of us in the ActivityPub community take these requests seriously when they come in.
@hongminhee forced to do whack-a-mole development. 😬
@hongminhee I ran into things like this with Mastodon. I send valid AP activities but if I don’t encode them in a specific way, Mastodon silently ignores them. Like how it assumes the object of a Create activity must be inline and not a reference, but the actor must be a reference and not inline.
Why don't you fix your software instead?
It sounds like you're referring to this issue:
https://github.com/pixelfed/pixelfed/issues/6588
But in Fediverse, attachment is not supposed to be an object, it's an array.
I don't think you should expect people to comply with your vision of ActivityPub.
github.com
[Federation]: `Create(Note)` with a single attachment is dropped because `Helpers::verifyAttachments` still assumes `attachment` is an array (follow-up to #6427) · Issue #6588 · pixelfed/pixelfed
Description PR #6427 made handleCreateActivity accept the JSON-LD 1.1 compact form of to/cc (single value instead of a one-element array). The same compaction rule applies to every set-valued prope...
