An intersectionalist, feminist, and socialist guy living in Seoul (UTC+09:00). Who's behind @fedify and @hollo. Write some free software in #Haskell, #Rust, #TypeScript, & #Python. They/them.
I received a request from @ghost today to add #LDSignatures to @fedify for compatibility with #Mastodon, as Mastodon does not plan to implement Object Integrity Proofs (FEP-8b32) for the near future. 😩
However, Mastodon's implementation of LD Signatures does not even use valid JSON-LD properties (despite the name), so I'm not sure how to make it compatible with Mastodon since #Fedify does JSON-LD processing. 🤔
@hongminhee@ghost@fedify these properties should be part of the https://w3id.org/security/v1 context, but it looks like we are omitting this context in some activities
Smithereen (I'm writing this from it) also does JSON-LD processing but also supports LD signatures. I don't understand what's the problem here — imo you aren't supposed to LD-process the signature itself. I remove it before any LD processing and treat it as a separate object passed alongside the main one.
@hongminhee Do they want LD signatures in Fedify in order to process forwarded Create activities? I simply fetch object by its id when signer and actor do not match.
Wow, English-only people (or Western languages, for that matter) are so naïve. In case you didn't know, the lang attribute is very important in East Asian languages.
@hongminhee@fosstodon.org anything that improves accessibility, be it for disabled or people of different language, should not be a suggestion but mandatory
I've rewritten #Fedify several times and in several languages. The first time it was written in #TypeScript, then #Python, then C#, then back to TypeScript. (It was codenamed FediKit at the time of development.) I settled on TypeScript for the following reasons:
• It has a decent JSON-LD implementation. • Lots of people use it. (I wanted Fedify to be widely used.) • It's type-safe enough.
Even if I were to build Fedify again, I would choose TypeScript.
I've rewritten #Fedify several times and in several languages. The first time it was written in #TypeScript, then #Python, then C#, then back to TypeScript. (It was codenamed FediKit at the time of development.) I settled on TypeScript for the following reasons:
• It has a decent JSON-LD implementation. • Lots of people use it. (I wanted Fedify to be widely used.) • It's type-safe enough.
I'm sharing a prototype of #Fedify written in #Python, codenamed “FediKit.” Many of the ideas for Fedify were already implemented in this prototype, albeit in a different language.
@hongminhee @ghost @fedify these properties should be part of the
https://w3id.org/security/v1
context, but it looks like we are omitting this context in some activitiesSmithereen (I'm writing this from it) also does JSON-LD processing but also supports LD signatures. I don't understand what's the problem here — imo you aren't supposed to LD-process the signature itself. I remove it before any LD processing and treat it as a separate object passed alongside the main one.
@hongminhee Do they want LD signatures in Fedify in order to process forwarded Create activities? I simply fetch
object
by itsid
when signer and actor do not match.