#dev 2022-01-28

2022-01-28 UTC
tetov-irc, j12t, joshproehl and joshproehl_ joined the channel
#
@slightlylate
Perhaps I'm naive and new to this stuff, but if you're gonna propose an "open protocol for the web", maybe do it based on open standards? Just spitballing.
(twitter.com/_/status/1486878308180832256)
strugee, balupton[d], superkuh, [tonz], maxwelljoslyn[d], alex_, _maxwelljoslyn[d, saptaks_znc, Seirdy, nsh-, strugee_, [manton], [jeremyfelt], [tw2113_Slack_], [KevinMarks], IWSlackGateway, jjuran, sknebel, Zegnat, jacky and [jeremycherfas] joined the channel
#
capjamesg[d]
Has anyone here implemented IndieAuth in Python / know a lot about IndieAuth and has a good grasp of Python?
#
capjamesg[d]
I am adding some helper functions for IndieAuth into the indieweb-utils library. The goal is to make it as easy as possible to set up an IndieAuth server in Python.
#
capjamesg[d]
But it would be great to have someone look over our implementation, not quite yet but in the near future.
#
sknebel
can do
nanoflite, Seb[d] and [Francesco_Impr] joined the channel
tetov-irc, [Grant_Hutchins], BinarySavior and kinduff joined the channel
#
Matt[m]
Hey aaronpk , why do you publish a JSON feed on your site instead of RSS or Atom? I hadn't heard of JSON feeds until I went looking for a feed for your site.
#
aaronpk
i should have an atom feed too
#
aaronpk
yeah it's right there below the jsonfeed
#
Loqi
totally
#
aaronpk
IIRC I made the jsonfeed for micro.blog to pull in
#
GWG-
I installed a jsonfeed for the same reason
#
GWG-
Also I hoped it would take off more than it did
marksuth[d], Seb[d], wackycity[d], sayanarijit[d], Eddy04[d], Christian_Olivie, Silicon[d], edburns[d], grantcodes[d], hoenir, mossymaker[d], tracydurnell[d], kimberlyhirsh[d], balupton[d], capjamesg[d], Asaf_Agranat[d], rattroupe[d], corenominal[d], Jeremiah[d], Ramon[d], MarkJR84[d], shaunix[d], hans63us[d], sarahd[d], Myst[d], maxwelljoslyn[d], aspenmayer[d] and sgreger joined the channel
#
sgreger
Taking this over here from meta as it is more about my mf-markup than about IndieNews:
jamietanna joined the channel
#
sgreger
If I post a bookmark with commentary, am I correct that the suitable markup is to use <a href="…" class="h-cite u-bookmark-of"> to link the bookmarked source and that would maintain that my post itself contains more than just a bookmarked URL?
jacky joined the channel
#
jacky
capjamesg[d]: I'm also good with Python, down to look at some highlighted chunks
#
capjamesg[d]
The code is largely helper functions so it doesn't aim to do everything that an IndieAuth server would, rather assist in common actions. The library uses JWT tokens in its generation / decoding so right now isn't built for a setup that would not leverage JWT.
#
capjamesg[d]
The PR in question is this one sknebel + jacky: https://github.com/capjamesg/indieweb-utils/pull/28 (branch indieauth_server_functions)
#
capjamesg[d]
Even a quick read at the code to make sure nothing is obviously wrong / missing would be great.
#
Loqi
[capjamesg] #28 Add new IndieAuth server functions
#
capjamesg[d]
src/indieweb_utils/indieauth/server.py
#
capjamesg[d]
I still need to write test cases for a lot of the code. That is a task for another day as this is all quite a big task.
#
jeremycherfas
Is there a way to get better diagnostic information out of phpMyAdmin. Im trying to import a large DB and the only error I get is Incorrect format parameter. I have increased maximum execution time and the error happens before that has been reached; not sure what else I can do.
#
aaronpk
sgreger: that sounds right, you'd put your comment in your regular h-entry outside of the h-cite
petermolnar joined the channel
#
sgreger
aaronpk: Ok, thanks for confirming! I need to test a bit more; my bookmark posts are maybe a bit unusual as they always contain commentary – really more "notes with a bookmarked link" than "bookmarks".
#
aaronpk
a lot of mine are like that too
#
aaronpk
is indienews not doing what you want? I am open to changing that if it makes sense
#
aaronpk
[manton]: out of all the example feeds on https://www.jsonfeed.org/version/1.1/ only daringfireball is actually publishing jsonfeed 1.1 ... do you know of any others?
[asuh] joined the channel
#
jacky
capjamesg[d]: checking now
#
aaronpk
also interestingly he doesn't use the new mime type
#
aaronpk
looks like the 1.1 update took too long to get out and jsonfeed will forever be stuck on version 1 :-/
#
aaronpk
i think it's time to rip out all the instagram code from XRay too
#
jacky
:pouring_out_drink_emoji:
#
jacky
I really wish someone had an editor for images and photos similar to those apps
#
jacky
those apps being TikTok and Instagram
#
jacky
like even if it was just like an SDK
#
aaronpk
there are lots of good photo editor apps these days
#
aaronpk
i've been using Lightroom for the most part, even when I post to instagram
#
[schmarty]
^^ it would be cool to collect those kind of content-making alternatives to silo'd apps
#
[schmarty]
i have a podcast buddy who apologetically made a video in tiktok because he didn't know about Clips on iOS
#
[schmarty]
(and remade it in like 5 minutes on Clips lol)
#
jacky
I think I mean something like https://github.com/eventtus/photo-editor but like how Gluon for micro.blog exists
#
Loqi
[eventtus] photo-editor: Photo editor with a lot of cool features
#
jacky
I guess also that I'd want it to also be something we can use to share to our sites
#
jacky
as a first-class feature
#
[manton]
[aaronpk] Yeah, 1.1 was held up too long for stupid reasons. I’ve slowly been updating things and I think the WordPress plug-in uses 1.1. Apps will need to support both MIME types for the foreseeable future, unfortunately.
#
aaronpk
jacky: all we really need is an iOS app with a share target that can post to micropub, then you can share a photo out of any app to the posting app
#
jacky
hmm fair
#
aaronpk
my workaround is i have a Shortcut that uploads to my media endpoint, so i can share out of any photo app directly to my media endpoint. then when I open up Quill, it loads that image in the editor
#
[manton]
Micro.blog for iOS has a share extension and can post to Micropub!
#
aaronpk
ooh I didn't know that
#
jacky
tbh that's a simple enough app to make
#
jacky
kiss++
#
Loqi
kiss has 1 karma over the last year
#
sgreger
aaronpk: I am more concerned that my mf markup might not be 100% accurate in general. Regarding IndieNews, I was surprised that (when the note was still, erroneously, marked up as bookmark) that the title of the webmention target was my post title, not the destination title
#
sgreger
But according to the wiki, that's how it should work – so I'm validating my microformats now
#
aaronpk
oh no [manton] micro.blog doesn't like my indieauth endpoint anymore
#
jacky
I wonder if Indigineous does this stuff
#
capjamesg[d]
[snarfed] I saw your webmention. Interestingly consolidation might be easier for me once IndieWeb utils implements all the specs I actively rely on. But I’d love to know if you know any good reads / guides on how to organize a larger Python app.
#
capjamesg[d]
jacky Indigenous has been officially renamed now I believe.
#
capjamesg[d]
It’s now IndiePass.
#
jacky
oh TIL
#
capjamesg[d]
(Although I get that the current stable app is still Indigenous.)
#
capjamesg[d]
marksuth is leading a big update effort.
#
capjamesg[d]
He writes about it on his blog at marksuth.dev.
#
capjamesg[d]
jacky++ for your comments on my PR. I really appreciate it!
#
Loqi
jacky has 20 karma in this channel over the last year (63 in all channels)
#
jacky
I should check his blog out more
#
Loqi
yea!
#
jacky
oh nice so he's going full on with Flutter for this
#
GWG-
[manton] Re jsonfeed, does anyone use next_url in the wild? Micro.blog doesn't
#
[snarfed]
capjamesg most general advice will apply, Python isn't too special or different. the community/open source way is generally separate libs/repos that you then compose together as deps. aaronpk's work is a good example!
KartikPrabhu and neceve joined the channel
#
[manton]
[aaronpk] Hmm, does it show any error? Can you tell what part of the IndieAuth flow is tripping it up?
#
aaronpk
just a generic error. do you have an easy way to see logs? if not i can add some debugging to mine to see if i can find more info
#
[manton]
GWG: Good question, I don’t know. I should add support for it. I think there’s also potential for podcasts to use it for older episodes.
#
[manton]
All of that should be on the client side, so I won’t get any logs for it, no.
#
aaronpk
gotcha
#
[manton]
The setup is also a little confusing: you need to go into Settings in the app and choose “WordPress or Micropub”, then start a new post and it should prompt for your blog URL.
#
aaronpk
i eventually figured that out :)
#
[manton]
Is the error before or after it directs you to the browser to auth with your site?
#
aaronpk
which is why i thought you might have logs
#
[manton]
Ah! Yeah, I will have a log for that, but it really doesn’t do anything except redirect.
#
GWG-
[manton]: I want to add next url for the WordPress plugin...
#
[manton]
[aaronpk] Hmm, looks like it’s actually 500-ing. Weird. Looking at it.
#
[manton]
[aaronpk] Are you passing “me=“? I bet that’s it.
#
[manton]
I don’t think I updated the server to make “me” optional.
#
aaronpk
in the redirect? no
#
[manton]
Okay, this will be a code change then. Sorry about that. It does require a “me” parameter.
#
aaronpk
i just added "me" manually and i did get past that error
#
[manton]
Cool, lemme know if it works with that. I’ll update the apps to remove that limitation. I thought I had reviewed this after the last IndieAuth pop-up session but I guess not.
#
aaronpk
that would be great
#
aaronpk
worked around it by hardcoding returning "me" for micro.blog :)
#
[manton]
That works. 🙂
jacky, [aciccarello]1, doosboox3, klez, bneil, feoh and GWG joined the channel
#
[tonz]
Posted in microformats, but should be here: If I were to build my own microsub client, where / how would I begin? I’ve created my own little micropub client this month, where I started with the bit that communicates with the micropub server. I suppose that would be logical here too. But unlike with micropub, where I’m sending stuff to the endpoint, in microsub I’m getting loads of stuff _from_ the endpoint.  That takes somethi
#
[tonz]
client side storage? Is that what other clients do too? Or could you keep talking to the microsubserver all the time? [aaronpk] says he just creates a nice view on what the server provides.
#
[tonz]
Just a ‘viewer’ seems a good start, any intermediate local storage can be shoved in between if needed.
#
aaronpk
basically monocle makes a request to the microsub server on each page load and doesn't store anything itself other than the list of channels
#
[tonz]
got it, thanks. How does that impact micropub based interaction, if at all? Does it only mean it’s ephemeral, as in if you close the client, it’s all gone, and next time you’ll reload with zero knowledge about history, or would there be other dynamics/consequences to be aware of?
#
aaronpk
well monocle is all php-based so there is no need to store any history itself since the next time you visit a page it just makes a call again
#
aaronpk
this is different from a mobile client though which would probably want to store things itself more aggressively
#
[tonz]
yes, that makes sense. Currently I’m looking at a client run on my laptop, on a local apache/php/mysql set-up. It’s what I do for micropub and other small tools too.
#
[tonz]
so not much need for storage locally in that sense, unless I want to enforce my local first policy, which is ok for reading, but become less meaningful when interaction with micropub is involved. Though currently I micropub posts from my regular rss reader as a delayed action, so that could be a choice here too.
#
aaronpk
yeah, an offline experience would be useful but that's not at all how i designed monocle
#
[tonz]
got it, thanks Aaron.
#
capjamesg[d]
My reader works the same way.
#
capjamesg[d]
Although my reader server and client are bundled, the server can be used with any client and vice versa.
#
capjamesg[d]
The client side just makes HTTP requests to the server as necessary.
#
capjamesg[d]
There are a few bonus features I can offer because the client is coupled with the server but most things are entirely interoperable.
#
capjamesg[d]
I don’t store anything in local storage but I’d love to get a service worker going for offline support.
#
capjamesg[d]
When I figure out how to use service workers that is.
#
[tonz]
as an aside[aaronpk] until now it always felt extremely daunting when someone suggested ‘roll your own’ version of this stuff. When you then did the demo at the 2018 Nuremberg IWC coding something from scratch, I did notice it didn’t look that hard, but a the same time thought, yeah right if you’re fluent in php / any fav language here, then it’s easy. Unlike my iterative style of coding without much actual coding experience
#
[tonz]
this month it sort of happened that I wrote a micropub thingy, and the actual communication is just a tiny bit of code. But once that was done, the rest felt much more basic. Now I wonder, how can I convey that to other IW community members feeling out of their depth coding wise, that when I say I got my own micropub client it doesn’t put them off further, but might draw them in.
#
capjamesg[d]
I’m happy to go into more depth if needed.
#
aaronpk
I think you nailed it in the explanation! Showing incremental progress with a small thing rather than thinking of the whole thing as one giant project
#
[tonz]
I’ve been following your blogging on this @capjamesg[d]. I think I’ll go for just viewing first too, local first perhaps later. (years ago I would load up the feedreader before leaving home, read during the commute and transform that into actions like bookmarkt this, blog that, reply to X, but though offline first for me is still good practice it is less needed in my current workflow)
#
[tonz]
@capjamesg[d] what I think I am aiming for is run a yarns microsub server in a separate WP install than where the micropub server is. This way yarns doesn’t clutter my site’s WP database. With hundreds of feeds I’d rather keep it separate. It does mean logging into two WP instances with two tokens, which I realised is doable if I chunk it up and make something myself.
#
capjamesg[d]
I have taken a lot of my feed reading work step by step. I first got the server working, then I got a desktop client working, then the mobile version, then the progressive web app.
#
jacky
so question re: indieauth
#
jacky
is `grant_type` needed for getting a profile?
#
jacky
it looks like the difference is really which endpoint is called (which determines what kind of response comes back)
#
capjamesg[d]
That is a good question.
#
capjamesg[d]
If not I’ll have to amend the utils PR.
#
jacky
My endpoint expects it and it looks like https://indielogin.com doesn't provide it (causing the sign-in flow for me to not work)
#
jacky
I feel like that's a simple enough fix but if it's adding `grant_type=authorization_code`, I'd need to see where to add that
#
jacky
is happy to open a PR
#
aaronpk
Wait indielogin should be doing that already I though
#
jacky
lemme see if i can get more output of the incoming request
Nuve joined the channel
#
jacky
oh crap
#
jacky
this is on me
#
jacky
I'm processing a query string in a POST request
#
jacky
I don't know fi you can see the logs for indielogin.com
#
aaronpk
Not unless I squint really hard
#
GWG
jacky: You might want a user endpoint
#
Loqi
[dshanske] #107 Add User Info Endpoint and Clarify Return
jacky joined the channel
#
jacky
you prob know this now but aaronpk: it _does_ send `grant_type`
#
aaronpk
oh good
jacky, Nuve and [James_Van_Dyne] joined the channel
#
[James_Van_Dyne]
capjamesg: I’m putting together a PR that I’d like to merge into your indieauth PR to refactor the Profile stuff a bit.
#
capjamesg[d]
Sure thing! Make sure you have the latest commit locally as I made a change or two per your comments earlier.
#
capjamesg[d]
I shall review the PR when it comes in.
#
capjamesg[d]
And I’ll create an issue for new indieauth test cases since that is likely going to be an ongoing initiative.
#
capjamesg[d]
aaronpk do you have any plans to write an official test suite / have one that’s in beta?
#
aaronpk
plans yes, beta no, timeline no
#
capjamesg[d]
No worries 🙂
#
[schmarty]
it's a bit scattered in terms of high- and low-level details. really just capturing thoughts about different parts of a potential indieauth test suite.
tetov-irc joined the channel