#dev 2023-01-20

2023-01-20 UTC
starrwulfe joined the channel
#
sknebel
Could put those behind indieauth (or at least offer the option to do so)
#
[tantek]
definitely put them behind IndieAuth
#
@tmichellemoore
Today, I have read up to Articles on the Webmention page. If you are a developer there are many ways for you to implement Webmentions. If you are not a developer, you are not left out. There are plugins or website that provide the functionality. On this… https://tmichellemoore.com/?p=152154
(twitter.com/_/status/1616234015119351808)
petermolnar joined the channel
#
[0x3b0b]
The fact that Akkoma isn't technically supported by Bridgy Fed is potentially useful information for me in helping to identify other information as not being useful. I've been mulling over what I get when I try to look up Tantek in Fediverse context as part of trying to wrap my head around how I'm going to interact with people depending on how they operate, and it hadn't occurred to me that my secondary Fediverse account being on an
#
[0x3b0b]
Akkoma server with a Mangane front-end might mean that trying to look up his profile or posts there for comparison won't give me the same result as if I checked on Mastodon proper.
IWDiscordRelay and nertzy[d] joined the channel
#
[snarfed]
sknebel tantek yeah the follow/unfollow UI is currently behind IndieAuth. I'm lazy and really want to avoid building full blown user sessions, which this would require. 🤷
#
[snarfed]
0x3b0b I expect there's at least partial BF/Akkoma AP compatibility. definitely try looking up a BF site to see what the profile looks like! the reported incompatibility is just for liking an Akkoma post via BF
#
[0x3b0b]
So if I look *him* up, I get (along with a lot of irrelevant results) his correct `@tantek.com@tantek.com`, which correctly gets his icon, banner, "about"/links, and (okay, not so much correctly as expected) shows him as having no followers and following no one, because as far as I can tell/understand, that instance won't get meaningful values for those two things until someone on that instance follows them (at least, that's what I saw
#
[0x3b0b]
for Jeff Moss on the `defcon.social` instance). It also shows him as having no posts.
#
[0x3b0b]
The search also finds @tantek.com@bridgy-federated.uc.r.appspot.com which otherwise looks identical.
#
[snarfed]
thanks! yeah I think all that is expected. no posts since none have been delivered to that instance yet, no followers/following because BF only partially implements those collections. https://github.com/snarfed/bridgy-fed/issues/264
#
Loqi
[preview] [snarfed] #264 Fully implement followers/following AP collections
#
starrwulfe
hmm. What is the bridgy translator URI for sending a webmention reply? Something like brid.gy/publish/mastodon/reply/theURIthatImRespondingTo?
#
[snarfed]
sorry, translator URI?
#
[0x3b0b]
I think in retrospect everything involved in looking him up has, in fact, made sense, except the fact that I'm almost positive at one point there was one of his posts that would cause a 500 error if I tried to look it up one night, and the next morning it worked fine.
#
[snarfed]
0x3b0b ok!
#
[0x3b0b]
Well, that and the fact that for some reason my site renders some of his recent posts with an extra link to one of the posts he linked to with the entire text of that post as the link text, but I'm pretty sure that's a microblogpub problem.
#
[tantek]
I am learning quite a bit by replying to different kinds of posts people are making on their own sites vs Mastodon instances vs tweets and combinations thereof.
#
[0x3b0b]
I learned yesterday that on the post I used to verify that I could successfully post and webmention an Indieweb "like" to something that wasn't an ActivityPub object, and have it appear to the Fediverse that I'd just posted a note with a link to that thing, almost every other reaction listed except one person's "bookmark" was actually a backfed response from a syndicated toot.
#
[tantek]
does Twitter auto-link the first part of an @-@ address? anyone know?
#
[0x3b0b]
hang on a sec, I might be able to find an example pretty quickly
#
[tantek]
funny that I haven't posted one yet, or rather I haven't POSSEd one to Twitter yet
#
[tantek]
perhaps it's time for a test
#
@bpedro
RT @tantek.com@fed.brid.gy I am once again asking you to own your notes, rather than tweeting them into Big Chad's garage. Maybe you left the big garage and now toot in your neighborhood Chad's garage. It's still someone else's garage. https://xkcd.com/1150 (1/4)
(twitter.com/_/status/1609847252314365953)
#
[0x3b0b]
or at least a part that it thinks it recognizes
#
[tantek]
ah that's different, the "." period terminator works. I'm talking more of the form @w3c@...
#
[0x3b0b]
Ah, gotcha. Misunderstood.
#
[tantek]
nah, you just happened to pick an example of both @-@ and @-name. 🙂
#
[0x3b0b]
ok, I was wrong about having a quick line on a convenient example. And that wasn't what I was thinking of at first, either.
#
starrwulfe
welp, can't do webmentions from a Tumblr since they strip anything but "supported" html.
#
[tantek]
editing my test post to avoid a possible false-positive @-name reference/notification on Twitter
#
[0x3b0b]
Yeah, I'd be a bad example to test, because my Twitter handle is also the first part of my @-@...
#
[tantek]
also going to test Bridgy Fed multi-reply support while I'm at it
#
[0x3b0b]
I imagine that's true of a lot of people
#
[tantek]
no that's a good thing, that makes it easier to test
#
[tantek]
here we go
#
[0x3b0b]
One of the things I've been trying to wrap my head around is, since I can't currently post something that isn't an ActivityPub object, if I want to reply to someone who uses something like Bridgy Fed, what is the ideal way to do it that will flow correctly in the most places? ...and I think I'm going to use you as a test case here in a little while, but possibly only after I finish cleaning up and posting this article I was working on
#
[0x3b0b]
last night.
#
[tantek]
the short answer is no, Twitter specifically does NOT auto-link any part of an @-@ address (without any "."s in the first part)
#
@t
Thanks @w3cdevs@w3c.social (@w3cdevs) & @w3c@w3c.social, good to be back on the @W3CAB. As W3C Developers noted, we have a lot Priority Projects work to do. I have rejoined the Vision project: https://www.w3.org/wiki/AB/2023_Priorities#Vision.2FPrinciples, with gratitude to @cwilso.com (... https://tantek.com/t5Nw4
(twitter.com/_/status/1616246315960401921)
#
[tantek]
Interesting, my reply post hasn't been picked up by Bridgy Fed yet despite webmentioning from my site and Mention.tech https://tantek.com/2023/019/t4/
#
[tantek]
Did I break something [snarfed]? Does Bridgy Fed dislike a multireply to multiple AP addresses?
#
[tantek]
or wondering if the 500 problem has gotten bad enough to be fully reproducible when Bridgy Fed attempts to read from my site
#
[snarfed]
[tantek] most of your wms in the last few hrs have been fine. the last one, from mention.tech, timed out (15s) when fetching https://tantek.com/2023/019/t4/
#
Loqi
[preview] [Tantek Çelik] Thanks @w3cdevs@w3c.social (@w3cdevs) & @w3c@w3c.social, good to be back on the @W3CAB. As W3C Developers noted, we have a lot Priority Projects work to do. I have rejoined the Vision project: https://www.w3.org/wiki/AB/2023_Priorities#Vision.2FPrin...
#
[snarfed]
that's the only wm for that URL I see in the last few hrs, I don't see any others eg from Falcon
#
[tantek]
wow that it's taking >15s to retrieve!
#
[tantek]
a browser full refresh of that page only takes a couple of seconds
#
[tantek]
maybe Falcon timed out trying send all the webmentions / Internet Archive requests in that post
#
[tantek]
maybe I need to move the Internet Archive requests to be async
#
[tantek]
tried mention.tech sending another
#
[KevinMarks]
Mention.tech does things async with retries, though I didn't update it when the Internet Archive api changed
#
[tantek]
yeah I mean my own (Falcon) code that calls Internet Archive
#
[tantek]
a-ha, my multi-reply finally went through and test complete: Bridgy Fed only threads the *first* AP in-reply-to link it finds, instead of all of them (even on the same server)
#
[tantek]
That post was in-reply to toots by both w3cdevs@ and w3c@ w3c.social
#
[tantek]
however it only shows up as a reply under the first
#
[tantek]
is that a Bridgy Fed limitation or an AP limitation of only allowing a single in-reply-to per action? like does AP require separate Reply verbs/objects for each in-reply-to?
#
[tantek]
Who was it that was asking about getting Twitter API approval? Looks like that might be gone gone: https://www.engadget.com/twitter-new-developer-terms-ban-third-party-clients-211247096.html
#
[snarfed]
They're not banning all API apps, just alternative "clients," which our tools generally aren't, except maybe social readers
#
[0x3b0b]
If they do it similarly to how they seemed to be handling the "you can't post links to Mastodon accounts," they also may be unlikely to *notice* social readers.
#
[snarfed]
Yeah that's the other saving grace for most silo API apps, including pretty much all of ours, if you're small they often won't notice or care
#
[snarfed]
[tantek] just fyi BF is timing out on more GETs to tantek.com, eg the two "in progress" ones on https://fed.brid.gy/user/tantek.com
[chrisaldrich] joined the channel
#
[snarfed]
also [tantek] re your multi-reply, BF log shows that it correctly delivered two AS2 replies, each with the appropriate `inReplyTo` to the appropriate inbox, one to @w3c and one to @w3cdevs. https://fed.brid.gy/log?start_time=1674180903&key=https://tantek.com/2023/019/t4/%20https://w3c.social/@w3c/109706120053912910&module=
#
[snarfed]
I suspect Mastodon itself doesn't support multi-replies, so it only connected it to one original post, @w3cdevs'
#
[tantek]
argh that's annoying about the GETs timing out. I wonder if my server is under extra stress / load from the whole "Mastodon fetching link previews" effect
#
[tantek]
well the multi-reply attempt was worth a shot
#
[tantek]
I wonder if it works across instances tho
#
[tantek]
since Mastodon displays reply contexts (upthread chains) for cached posts from other servers, I wonder how it would handle that
#
[0x3b0b]
Aha. I haven't figured out yet where in the code it's happening, exactly what the rationale is, or how it's picking which link to do it for yet, but I at least figured out what microblog.pub is doing that's resulting in some of your posts in my feed having a link at the end where the link text is an entire one of your *other* posts that you linked to. It's *somehow* picking a link in the post to feature at the bottom of it, and the way
#
[0x3b0b]
it determines the link text to use - or at least one of the options - is the `<title>` element from the destination page.
#
[0x3b0b]
Now that I know that, I can probably go in there tomorrow, figure out where it's happening, see what the rest of the logic is, patch it to have a length limit if nothing else, and possibly submit a bug/patch upstream.
#
[0x3b0b]
...Wow, the stack trace I just got trying to reply to you is...very large
#
[0x3b0b]
I think that one's a problem for Tomorrow Bob
geoffo joined the channel
#
[aciccarello]
I just saw the bridgy fed follow form and decided to copy it to my site. Works well! snarfed++
#
Loqi
snarfed has 65 karma in this channel over the last year (109 in all channels)
gRegor, gRegorLove_, starrwulfe and Guest6 joined the channel
#
jeremycherfas
Getting an Error Loading Channels in Together, `Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://together-server.tpxl.io/. (Reason: CORS request did not succeed). Status code: (null).`
jeremycherfas, gRegorLove_ and starrwulfe joined the channel
#
Loqi
[preview] [Ben Adida] What would be super cool: an open-source core library for new front-end UIs to Mastodon, library handles the auth and API calls against Mastodon, builds up the local database cache, emits events, and then allows a thousand UI flowers to bloom.
#
sknebel
not really
jonnybarnes, [asuh], geoffo, IWSlackGateway, starrwulfe, [tantek], gRegor and [KevinMarks] joined the channel
#
[KevinMarks]
so are these mastodon trends pages jsonfeed? Or lookalikes? https://indieweb.social/api/v1/trends/links
#
[tantek]
monoculture--
#
Loqi
monoculture has -1 karma over the last year
[snarfed] joined the channel
#
[snarfed]
this Mastodon link preview DOS thing will never die 😢 https://github.com/snarfed/bridgy/issues/1398
#
Loqi
[preview] [snarfed] #1398 Handle link preview DOSes better
#
aaronpk
wait why is bridgy involved with serving link preview requests from tantek.com? I am confused
#
[snarfed]
redirects since a bunch of URLs have to be fed.brid.gy for interop 😐
#
[snarfed]
AS2 URLs/ids, Mastodon requires that some of them are on the same domain that serves them
#
[snarfed]
oh wait I filed it on the wrong repo 🤦‍♂️
#
Loqi
[preview] [snarfed] #378 Handle link preview DOSes better
#
sknebel
redirects? or are you proxying responses?
#
sknebel
has to be the latter, rightß
#
sknebel
so then I guess you could do the micro-cache thing
#
[snarfed]
Nah, redirects
#
sknebel
but you first talk to the site?
#
sknebel
before you serve the redirect?
#
sknebel
otherwise were are the error counts coming from?
#
[snarfed]
Yeah redirects are only one of the three DOSed request types, but they talk to the site too, forgot why, let me check
#
sknebel
or is the issue that so much is happening that *other* requests you make for other purposes fail because the origin goes down
#
sknebel
because all the instances talk to the origin
[aciccarello] joined the channel
#
sknebel
so for stuff where you repeatedly talk to the origin, something micro-cache-y feels appropriate (not sure to what degree that fits app engine models) - limits your rps, serve stale cache values if you got 50x on last try
#
sknebel
(micro-cache == normal cache duration in low seconds)
#
[snarfed]
Yeah i already do all of that except the last part about serving stale values on failures, which is what I propose in the issue
#
[snarfed]
Great minds!
[TMichelleMoore] joined the channel
#
[TMichelleMoore]
[aciccarello] So you just copied the html for that form to your website?
#
[aciccarello]
Basically! I copied the HTML and made some minor changes. I updated the submit url to be the absolute URL instead of relative (since it's no longer on a bridgy fed domain) and then adjusted some wording/styles.
#
[tantek]
that's very clever aciccarello
#
[tantek]
I wonder if there's somewhere we can document that technique
#
[tantek]
what is Bridgy Fed
#
Loqi
Bridgy Fed connects IndieWeb sites with Mastodon and the fediverse https://indieweb.org/Bridgy_Fed
[pfefferle] joined the channel
#
[tantek]
aciccarello, I started a stub "How to" for a follow form like what you did (based on what you said), could you add more details? https://indieweb.org/Bridgy_Fed#How_to_add_a_follow_form
#
[tantek]
just saw the issue [snarfed], thank you. "20-30qps for 5-10min"?!? :exploding_head:
#
[tantek]
I guess I have some serious optimizing to do on my PHP backend 😂
#
[tantek]
if my math is right, that means I should aim for a full post permalink HTML render in ~33ms
#
[tantek]
really curious if anyone is measuring their post permalink HTML server render times and what they’re seeing (with which tools). obviously SSGs don't count lol.
#
[aciccarello]
[tantek] I added a few more details though I'm not sure how detailed to get.
#
gRegor
ooh, nice
#
[aciccarello]
I was happy to see that the form worked still. html++
#
Loqi
html has 1 karma in this channel over the last year (2 in all channels)
#
gRegor
seems low for indieweb XD html++
#
Loqi
html has 2 karma in this channel over the last year (3 in all channels)
#
[snarfed]
[tantek] no need to target that scale for your site, BF should and will shield you from it
#
[snarfed]
if you want to look at anything like that, I'd look at the timeouts and 500s we're seeing when it's not under load
#
@GrembloProjects
https://bensden.xyz/ I'm testing webmentions to see if I'm an idiot or if I set it up right
(twitter.com/_/status/1616527954149867544)
#
gRegor
I think I need to find a way to ignore certain homepage webmentions. Since Mastodon replies all link the @domain at the start of the reply, I get a wm to the permalink and one to the homepage for each interaction.
#
[KevinMarks]
I've used honeycomb.io to look at post render times in detail, though that was on node, not tried with PHP - the same broad technique should work though
#
sknebel
such storms really are a prime candidate for short caches
#
sknebel
no point in rendering the same thing 20x a second
#
sknebel
and caching for only seconds removes a lot of the "2 hard problems in computer science" concerns
#
[KevinMarks]
it's very much the old memcached usecase, which might fit tantek's architecture
#
capjamesg
"2 hard problems in computer science"?
#
capjamesg
Ah yes.
#
capjamesg
Why is cache invalidation so hard?
#
IWDiscordRelay
<j​acky#7226> heh
#
IWDiscordRelay
<j​acky#7226> such a good question; from my experience, timing is _always_ been the issue (and also determining "how old" can something be before it's actually stale)
#
sknebel
hence microcaching, i.e. only a few seconds
#
sknebel
sure, you dont strictly need to regenerate a page every 5 seconds either
#
sknebel
but thats something the backend can easily handle
#
sknebel
capjamesg: The 2 hard problems in computer science are famously "naming things, cache invalidation, and off-by-one errors"
#
[snarfed]
the 20th century update would add printers, CSS vertical centering, email deliverability, and maybe conneg--
#
Loqi
conneg has -20 karma in this channel over the last year (-26 in all channels)
#
[snarfed]
er 21st century
[chrisbergr] joined the channel
#
@AxiomEval
It's an obvious one but I'm certainly getting some pleasure out of using Webmentions as a way of updating posts or other artefacts when I forget to do something obvious such as add a link for something - I've always hated update in place. #indieweb #webmention
(twitter.com/_/status/1616545814792265728)
starrwulfe and chrisaldrich joined the channel
#
[tantek]
that kind of caching would be provided by a CDN right?
#
aaronpk
i did it on my site with a bit of nginx config
#
sknebel
yeah, thats more something webserver side
#
[tantek]
so perhaps there's an Apache module or something I can flip on
#
[tantek]
probably called MOD_CACHE or something
gxt joined the channel
#
[tantek]
Lol classic: "_We're turning off CacheQuickHandler because in our experience it caused all kinds of problems with requests."_
#
IWDiscordRelay
<j​acky#7226> https://wiki.whatwg.org/wiki/Why_not_conneg
[chrisaldrich] joined the channel
#
Loqi
ok, I added "https://wiki.whatwg.org/wiki/Why_not_conneg" to the "See Also" section of /conneg https://indieweb.org/wiki/index.php?diff=86190&oldid=82670
[tw2113_Slack_] and geoffo joined the channel
#
IWDiscordRelay
<j​acky#7226> just need to convince more of these masto devs to support Micropub + Microsub https://github.com/Dimillian/IceCubesApp
#
IWDiscordRelay
<j​acky#7226> probably the need to implement two APIs versus one is a 'burden'
#
IWDiscordRelay
<j​acky#7226> but it's a smaller surface area
#
Loqi
[preview] [Dimillian] IceCubesApp: A SwiftUI Mastodon client
#
[tantek]
jacky, indeed! it is a smaller surface!
#
[tantek]
I'd say start with IndieAuth+Micropub
#
aaronpk
i think one of the reasons these devs are drawn towards mastodon is because they can offer a consistent and relatively complete UX to their expected users because the client works only with one specific software that works a certain way
#
IWDiscordRelay
<j​acky#7226> wouldn't that perpetually put the standards here at a place of lower adoption then?
#
IWDiscordRelay
<j​acky#7226> I do get the appeal of that - this API is known to map to this behavior
#
IWDiscordRelay
<j​acky#7226> (this API = Masto's API)
#
[tantek]
right, how many Mastodon clients work with Pleroma?
#
aaronpk
some other AP software started adopting the mastodon client API so that they'd work with mastodon clients, kind of how like a bunch of cloud storage providers all adopted the AWS S3 API
#
IWDiscordRelay
<j​acky#7226> Pleroma implements a facet of the Masto API (IIRC) so as many as there's out there
#
aaronpk
but even then you're talking about two different software, not tens or hundreds
#
IWDiscordRelay
<j​acky#7226> yeah the S3 effect (which, also, I just noticed that Amazon Simple Storage Service would _not_ make a good acronym, lol) is def a thing
#
IWDiscordRelay
<j​acky#7226> across like DO, Vultr, Azure, etc (and even open projects now like Minio)
#
IWDiscordRelay
<j​acky#7226> this was kinda a random musing tbh because it _does_ seem like there's "less" to do if you're aiming to target something like Masto despite a standard being something that _should_ work across different projects
#
aaronpk
there isn't necessarily less to do, but ther'es a clearer path to doing it and more importantly a clearer path to testing it
#
aaronpk
the mastodon API covers more features than micropub + microsub
#
[KevinMarks]
Mastodon is doing the early twitter playbook of shipping the api earlier or at the same time as their client app, which makes it a good playground for multiple apps
#
[tantek]
interesting. would be worth documenting what it covers beyond micropub + microsub
#
IWDiscordRelay
<j​acky#7226> it's a bit on the tin, no? account creation + deletion, etc at a host (which reduces setup cost), things people tend to use like emoji dictionaries for messages, etc. there's a _lot_ that it does that one could just see by looking at https://docs.joinmastodon.org/methods/
#
IWDiscordRelay
<j​acky#7226> like it covers _a_ lot
#
[tantek]
that's a good reference jacky
#
[tantek]
I feel a lot of that should be covered by MIcrosub
#
[tantek]
correction, most of it is stuff to consider adding to Micropub
#
[tantek]
Micropub-brainstorming << consider new extensions based on features of https://docs.joinmastodon.org/methods/ that Micropub currently lacks, that would make sense (fit) in Micropub
#
Loqi
ok, I added "consider new extensions based on features of https://docs.joinmastodon.org/methods/ that Micropub currently lacks, that would make sense (fit) in Micropub" to the "See Also" section of /Micropub-brainstorming https://indieweb.org/wiki/index.php?diff=86199&oldid=66903
#
[tantek]
Micropub-brainstorming << to-do: rescope this page as a place to have higher level conversations / discussions and possibly even incubate ideas toward extensions, and then keep delegating actual extension proposal & development to GitHub
#
Loqi
ok, I added "to-do: rescope this page as a place to have higher level conversations / discussions and possibly even incubate ideas toward extensions, and then keep delegating actual extension proposal & development to GitHub" to the "See Also" section of /Micropub-brainstorming https://indieweb.org/wiki/index.php?diff=86200&oldid=86199
to2ds joined the channel
#
[tantek]
jacky, account creation+deletion is more of an IndieAuth API IMO. I think it's good minimalism that Micropub already "assumes" you have a working specific identity to use with the app
angelo and [schmarty] joined the channel
#
[schmarty]
Microsub also has a server-side component that isn't commodity the way Mastodon servers are.
#
@tmichellemoore
Today, I am continuing reading the Articles on the Webmention page. I am a little tired this evening so I might not get far. This is under the task to: * Learn About Webmentions a Little More Deeply. Day 13 of 100 #100DaysofIndieWeb, #IndieWeb… https://tmichellemoore.com/?p=152164
(twitter.com/_/status/1616584807592460289)