Gregory
I've completed "Secure Container" - Day 4 - Advent of Code 2019 https://adventofcode.com/2019/day/4
Gregory
Why is JavaScript called that? The only thing it has in common with Java are toString and indexOf functions.
Gregory
Added support for displaying images. Now a question. I currently hotlink everything, including profile pictures. Downloading all media and keeping it eternally like Mastodon does seems to me like a terrible idea. But then hotlinking is also not ideal – Mastodon has images in different sizes internally while only serving the biggest ones through AP. I'm thinking about something in-between. A LRU cache with admin-configurable size maybe?
Gregory
So I just posted a reply to @Gargron's post from my #Smithereen instance. My first reply to someone else's post to contain an LD-signature. Then interesting things started happening! First, I received an onslaught of incoming requests for... something. I don't log GET requests. I knew Jetty is multi-threaded, but I didn't know it's this multi-threaded. Second, someone with a broken SSL configuration tried to follow me. I presume that's how you know you're now a proper part of the fediverse?
Eugen Rochko
@grishka Yes, when you publicly reply to a post, and it has an LD-signature, we forward that reply to the parent's followers, so that people who click on the post get a more complete conversation.
Gregory
After countless hours of debugging, #Smithereen now finally supports linked data signatures!
Gregory
Could someone please help me making sense of LD-signatures? This RDF stuff drives me crazy. https://socialhub.activitypub.rocks/t/making-sense-of-rsasignature2017/347
Gregory
I made my first unit tests today. I'll have to support the parts of JSON-LD spec I thought I didn't need because, well, I might end up needing them to verify LD-signatures.
Gregory
I did it! The JSON-LD algorithm spec was clearly written with something dynamically typed like JavaScript in mind. Implementing that in Java is pain in the ass and takes extreme amounts of instanceof statements to get right. But at least I now support those "reverse" properties no one's ever gonna use...
Gregory
Replying to something now adds a mention of both the author of the original post and of the reply you're replying to – so both those people get notifications. If you're replying to a reply, that second mention is actually visible. (side note: there are two kinds of mentions in AP, the one you put into the "tag" field which triggers notifications on Mastodon, and the one you put into the post content as a link that users can click on.)
Gregory
Seems like Mastodon only notifies you about a reply if the reply contains a mention. Addressing (to/cc) doesn't matter here AT ALL. So I guess I have to support mentions, no way around that ¯\_(ツ)_/¯
Gregory
Now, there's a good question whether the mention has to actually be there in the post content or putting one in "tags" is going to be enough.
Gregory
Verifying JSON-LD signatures doesn't appear to be the easiest thing in the world... #ActivityPub
Gregory
@lightone @strypey also Smithereen which I'm making. VKontakte-like social network written in Java (probably the first ever #ActivityPub implementation in Java) with friends and walls and photos and groups... Of which currently only friends and walls are implemented. Not quite ready enough and so not published anywhere yet, but I'm looking forward to it.
Gregory
@douginamug https://flak.tedunangst.com/post/ActivityPub-as-it-has-been-understood not a presentation but a series of articles, but it does help with understanding. |