#dev 2023-04-20

2023-04-20 UTC
[pfefferle], [aciccarello] and [dave] joined the channel
#
[tantek]
ok, test one complete and suspicion confirmed. by changing the slug on my post and reping BridgyFed, I was able to trick BridgyFed into thinking it is seeing a new post, thereby posting a "create" activity from scratch (rather than an update) which then caused that post to show-up in all the hashtags tag pages on all the instances it was federated to
#
[tantek]
this is an unfortunate work around to the problem of Mastodon does not handle discovering & indexing new hashtags in an "update" activity
#
[tantek]
interestingly enough, Mastodon is de-duplicating all these! i.e. my initial reply post, my "update" to that post to remove the "in-reply-to", and then my "create" of that post via a new slug (old permalinks redirect). Only the latest version is showing up here: https://xoxo.zone/@tantek.com@tantek.com/with_replies
#
Loqi
[preview] Tantek Çelik
#
[tantek]
so now the Mastodon-hashtag-hack truly is, if you add hashtags to a post, be sure to change the slug before you ping Bridgy Fed, so Bridgy Fed will send a "create" activity, which Mastodon will index the new hashtags in, AND de-dupe with any previous post that redirects from the same permalink!
#
[schmarty]
I don't know what you are saying and I am never doing this lol
#
[tantek]
it's ok [schmarty], never edit a post to add hashtags and you'll be fine
#
[schmarty]
Haha, sorry, I'm reacting a little badly to the activitypub interop alchemy
#
[tantek]
no no, I would say that's an appropriate reaction to interop alchemy
#
[tantek]
I'm here to suffer the hacks & alchemy and document them as ⚠
#
[schmarty]
Just don't die of mercury poisoning
#
[snarfed]
[tantek] nice sleuthing, and definitely an awkward workaround for logic that ideally BF would just handle itself automatically
#
[snarfed]
feel free to file an issue with what BF should do here!
[keithjgrant], IWSlackGateway and [tantek] joined the channel
#
[tantek]
[snarfed] yeah I'm wondering if Bridgy Fed "always send a create, even for an update" is the right thing here. Also unclear that a "create" with the *same* permalink (as opposed to a changed slug where the old redirects to the new) would still work
#
[tantek]
interesting, my mention of https://aaronparecki.com/2013/04/19/3/indieweb didn't show up there! and I sent it a few different ways including the form input on that permalink
#
Loqi
[preview] [Aaron Parecki] @eschnou It worked! Now here's a reply! #indieweb
[keithjgrant] and [snarfed] joined the channel
#
[snarfed]
yeah always updating with Create would be unfortunate. maybe worth filing a Mastodon bug that Update doesn't update hashtags?
#
[tantek]
I was hoping to file a Bridgy Fed bug about updates don't always propagate new hashtags to Mastodon, and then leave it to you to properly file the AS2 objects and such in a Mastodon bug 👀
#
[tantek]
I think you have a better chance of wording such a Mastodon bug to get it fixed, since you have better understanding of the plumbing at work
#
[tantek]
oh wow my full long note post made it into the Other Mentions of aaronpk's above post 😂
geoffo, sivoais, gRegor, epoch, [jeremycherfas], notdave, [capjamesg], [KevinMarks], sebbu, [chrisbergr] and [campegg] joined the channel
#
[campegg]
I have a favor to ask of all the ActivityPub-fluent people here: I'm muddling my way through implementing AP on my site, and have started documenting(-ish) some of my thoughts and assumptions here: https://campegg.com/about/activitypub/ — would really appreciate it if someone who knows more than I do could take a look and letting me know if I'm going off in the wrong direction. Thanks in advance!
#
Loqi
[preview] Cam Pegg
#
[snarfed]
[campegg] sure! Main first thing I see is that you publish by delivering to your followers' inboxes (and other per activity recipients, eg whoever you're replying to, liking, etc)
#
[snarfed]
Outbox is pretty peripheral and not used for much
#
[snarfed]
And yes, HTTP sigs are both necessary and difficult. As usual with crypto/auth, I strongly recommend using a lib, not rolling your own
#
[campegg]
Thanks, [snarfed]!
#
[campegg]
Definitely going to go with a library for the sigs… don't want to mess with that stuff
#
[campegg]
So the way publishing works is by sending the individual activities to the inboxes of each of my followers? I've implemented json views for my notes, so that there's a (hopefully) an AP-compatible version (e.g. https://campegg.com/notes/20230419073932 and https://campegg.com/notes/20230419073932/json/)… what it sounds like is that when I save/update/delete, I need to send that object (with the correct activity type) to each follow
#
[campegg]
individually
#
[campegg]
[snarfed] ++
#
Loqi
[snarfed] has 88 karma in this channel over the last year (142 in all channels)
#
[snarfed]
You can eventually optimize with sharedInbox, but no need for that to start
#
[campegg]
Thank you! that's super helpful!
#
[campegg]
One more (for now 🙂): I've been looking at httpsig (https://pypi.org/project/httpsig/) as a potential solution for signing; are there any others you might recommend I check out?
#
Loqi
[preview] [snarfed] #430 maybe switch HTTP Signatures lib
#
[campegg]
Brilliant, thanks!
#
[campegg]
`requests-http-message-signatures` looks like it might be the way to go
#
IWDiscordRelay
<c​apjamesg#4492> My new site rewrite has traversed four programming languages.
#
IWDiscordRelay
<c​apjamesg#4492> Lisp, Ruby, Perl, and JavaScript (via 11ty).
#
aaronpk
warning: the http signatures that mastodon implemented is based on an early draft and also includes their own stuff they added. it's worth checking to make sure the library is mastodon compatible because just looking for "http signatures" right now won't necessarily work with mastodon
#
[snarfed]
yup. specifically, cavage v12 at most, _not_ httpbis, and include specific headers. https://github.com/snarfed/bridgy-fed/issues/430#issuecomment-1510537265
#
Loqi
[preview] [snarfed] conclusion seems to be that the fediverse is still generally on cavage v12 at most, and hasn't migrated to httpbis yet. - https://socialhub.activitypub.rocks/t/state-of-http-signatures/754/22 - https://socialhub.activitypub.rocks/t/http-signatures-...
#
[campegg]
🤔
[jacky] and pharonix71 joined the channel
#
[jacky]
so thinking about the FEP for DNS stuff again
#
[jacky]
that _could_ probably be used for things that have yet to migrate to an AP powered platform (or has a proxy) but DNS (somehow) is easier to update than adding something like rel=me
#
[snarfed]
that situation sounds...not common
#
[campegg]
[snarfed] Thanks! I've been taking a look into the BF code to see how you've been solving for various bits and pieces 🙂
gRegor, CourtneyR_Dev, [pfefferle], [schmarty], [tw2113_Slack_] and [manton] joined the channel
#
capjamesg
[snarfed] How do I translate a handle into a DID in Bsky?
#
capjamesg
Wait, got it!
#
Loqi
[preview] [capjamesg] bsky-link-preview: Generate embeddable link previews to posts on Bluesky.
#
capjamesg
I need to fix the hosted app as it calls localhost by accident.
#
[snarfed]
feature requests: preserve newlines, include quoted posts, images (?)
#
capjamesg
Do you have an example post with those features?
#
capjamesg
I know. I am trying to wrap up for the day but I decided to build a new thing haha.
#
capjamesg
[snarfed]++ thanks!
#
Loqi
[snarfed] has 89 karma in this channel over the last year (144 in all channels)
#
capjamesg
Feel free to file PRs if you are in the mood :D
geoffo joined the channel
#
[tantek]
capjamesg, PRs to which repo?
#
Loqi
[preview] [capjamesg] bsky-link-preview: Generate embeddable link previews to posts on Bluesky.
CourtneyR_Dev joined the channel
#
[tantek]
[snarfed] wrote "[tantek] nice sleuthing, and definitely an awkward workaround for logic that ideally BF would just handle itself automatically" — thanks and I think I have one more iterative test to try before writing it up. And I'm leaning towards recommending Bridgy do the thing that produces better results in Mastodon, even if it is not completely protocol compliant, once the bug is filed on Mastodon to fix "update" handling.
gRegor joined the channel
#
Loqi
[preview] [James' Coffee Blog ☕] Announcing bsky.link, an embed link generator for Bluesky
geoffo joined the channel
#
[tantek]
ok last experiment (I think), modify that same post (that went from reply -> note -> note with new slug) back to a reply to see what happens when BridgyFed tries to "update" a post and *add* in-reply-to info and see how Mastodon handles that (or doesn't)
#
[tantek]
last experiment for that note/reply that is
#
[tantek]
well, that was a bust kinda. Bridgy Fed happily delivered an "update", to exactly one instance (that of the in-reply-to URL's server) https://fed.brid.gy/log?start_time=1682034184&key=https://tantek.com/2023/109/t1/btconf-personal-url-fediverse-feed#bridgy-fed-update-2023-04-20T23:43:03.812421+00:00&module= and Mastodon did not display it.
#
[tantek]
what I don't know is if that's a Mastodon "update" bug, Bridgy bug (of some sort), or both interacting
#
Loqi
[preview] [Fred Rocha] We finished #btconf last night talking about the discoverability of personal websites with @sophie and @nickautomatic. It turns out it's hard to be read, even if you have captivating and original content. Reply to this post with your personal url and...
#
[tantek]
what I do know is that when I first pinged Bridgy Fed with my new reply post, Bridgy Fed somehow created a broken "reply" post (first time I've seen that, possible regression, posting replies to Masto permalinks has worked for me in the past)
#
[tantek]
thanks [snarfed] for capturing that initial bug in an issue: https://github.com/snarfed/bridgy-fed/issues/487
#
Loqi
[preview] [snarfed] #487 wm => AP: weird broken AS2 Create activity
#
[tantek]
wondering if I should try again with another reply so we have multiple data points?