#dev 2016-09-25

2016-09-25 UTC
KevinMarks and KevinMarks_ joined the channel
#
martin.atkins.me.uk
edited /OpenID (+1153) "More details on Typepad's dropping OpenID consumer support"
(view diff)
KevinMarks and KevinMarks_ joined the channel
#
aaronparecki.com
created /2016/Brighton/indiebookmarks (+3142) "import from etherpad"
(view diff)
#
aaronparecki.com
created /2016/Brighton/beyondstreams (+4045) "import from etherpad"
(view diff)
Zegnat joined the channel
#
aaronparecki.com
edited /2016/Brighton/Schedule (-28) "update links to wiki pages"
(view diff)
tantek joined the channel
#
tantek.com
created /2016/Brighton/Hack_Day_Intro (+553) "stub with sections, my entry"
(view diff)
#
sebastiangreger.net
edited /LinkedIn (+197) "/* POSSE to LinkedIn */ update on IWC/Brighton proof-of-concept"
(view diff)
#
tantek.com
edited /LinkedIn (+255) "stub why, POSSE Examples with sgreger"
(view diff)
#
aaronparecki.com
edited /2016/Brighton/Hack_Day_Intro (+58) "/* Aaron */ #1 done!"
(view diff)
#
loqi.me
created /meaning_of_it (+61) "prompted by kii and dfn added by tantek"
(view diff)
#
loqi.me
created /simple_example (+168) "prompted by tantek and dfn added by tantek"
(view diff)
#
aaronparecki.com
edited /private_posts (-16) "move some thoughts under brainstorming"
(view diff)
#
mey.vn
edited /hugo (+654) "add section about migrating from WordPress to Hugo"
(view diff)
#
aaronparecki.com
created /Private-Webmention (+1904) "stub spec with outline and flow diagram"
(view diff)
#
aaronparecki.com
edited /private_posts (+25) "/* Use Cases */"
(view diff)
#
aaronparecki.com
edited /Private-Webmention (+494) "add summary"
(view diff)
#
sknebel
aaronpk: think so. ask someone who wasn't in the discussion? ;)
#
voxpelli
triggered over Webmention
AngeloGladding joined the channel
#
voxpelli
sknebel: what was the discussion around?
#
sknebel
voxpelli: private "messaging" over webmentions -> how can a webmention endpoint verify a link in a post that is behind auth
#
sknebel
we are going to lunch now -> back in 1 h
#
voxpelli
cool, yeah, sounds like an extension to Webmention to supercharge a Public Page Upgrading
#
voxpelli
Just noting some more things here that you can read after lunch:
#
voxpelli
While public page upgrading is nice, it is a challenge for eg. people with static sites.
#
voxpelli
It's also a challenge to know if a receiver supports doing such an upgrade and also a challenge in eg. the case of webmention endpoints such as mine and webmention.io that those endpoints are perhaps not the most well suited target for such messages
#
voxpelli
Eg. Twitter treats mentions and DM:s as two different sections of their site – a Webmention takes on the role of the mentions section, but the DM-section – that could be just as well suited for, or even more suited for, an indie-reader to handle or a standalone app
#
voxpelli
So while Public Page Upgrading is a really cool feature that serves many purposes, eg. allowing private accounts to be followed in an indie-reader, allows private block lists to be shared with third party tools etc I still think a dedicated DM endpoint could be a better choice for DM:s
#
voxpelli
https://indieweb.org/private-messaging-brainstorming works well for static pages + allows different endpoints to be used for DM:s and Webmentions rather than forcing the two of them to use the same
#
voxpelli
Creating a good Webmention endpoint is already fairly hard work with Salmention and everything – having that endpoint also having to take on all of the private messaging needs could dampen the momentum and diversity amongst webmention tools
#
voxpelli
(Webmention endpoints typically today handle no private content, making them suddenly understand that some content can only be shown to some authenticated users would require rewriting lots of code paths and generally be prone to errors – keeping it in a separate app totally focused on just private would be less error prone)
#
kodfabrik.se
edited /private-messaging-brainstorming (+155) "Adding link to the original inspiration of this flow"
(view diff)
#
aaronpk
thanks for the thoughts
#
aaronpk
1) i'm not calling this private messaging, and agree that that is different enough from a UI perspective that it might be better as a different spec
#
aaronpk
2) I don't think "Public Page Upgrading" is a useful term, not sure where that came from. This is specifically about webmention for private posts.
#
aaronpk
3) we *do* need some way to handle webmentions for private or otherwise access controlled posts, especially since that's often the first question I get when I tell people about webmention
#
aaronpk
4) if the security model of long tokens in a URL is sufficient for your use case, you don't need this for static sites
#
aaronpk
now to go add that to the wiki
#
voxpelli
2) Whether the term in itself adequately describes the concept or not I don't really know, but the fetching of a private content on a URL through the use of a token is certainly useful in additional contexts outside of Webmention
#
voxpelli
5) How does one discover whether a Webmention endpoint supports this kind of private content?
#
aaronpk
2) I was assuming you might have other reasons for having authentication on posts, and prior to this the idea of having a webmention endpoint "authenticate" as someone seemed challenging. this explains how to do it and doesn't seem too bad.
#
aaronpk
5) good question, I'm not sure yet. however, if you send this private webmention to someone who doesn't support it, the worst that happens is they fetch the source URL with no authentication and they are unable to verify the webmention. at least no data is leaked, and the sender also has a way to tell that the sender didn't support it if they notice that the URL was fetched without authentication.
#
voxpelli
2) to me the new described flow consists of two independent parts: 1. an extension of the ping that can be exchanged for an access token 2. a mechanism to use a token to access additional content
#
aaronpk
that's true. the mechanism is already defined in OAuth 2.0 Bearer Tokens so that's nice.
#
voxpelli
2) The 2. part would be the same as for http://indieweb.org/private_posts#Public_Page_Upgrading, but the initial discovery would be made through the ping rather than through a www-authenticate header as described there
#
aaronpk
yep this saves the step of having the receiver fetch the page with no authentication and then need to try again
#
aaronpk
this way the receiver knows before making the request that it will need authentication
#
voxpelli
and as discussed at other times: Tokens can be obtained through many different ways – so could be good to mention that the accessing of a private URL is independent from the new ping flow and can be used with multiple other flows as well
#
aaronpk
I could add something about the sender and receiver may have an alternative mechanism of exchanging tokens, but I do want to require Bearer Tokens (which really just means "Authorization: Bearer xxx" where xxx is a string
#
voxpelli
that way it could also make sense to rename the flow as "Authenticated Webmention Flow" or similar – as one aspect described in the "Public Page Upgrading" part is that a post doesn't have to be private to be upgradeable – it can eg. be that additional content like perhaps sensitive person tags or such could be shown
#
aaronpk
actually yeah renaming this to "Authenticated Webmention" is probably a good idae
#
sknebel
careful to not cause confusion with suggestions to authenticate the webmention sender
#
voxpelli
"Authenticated Access Flow" + "Authenticated Pinging Flow"?
#
aaronpk
using email's SPF like we were talking about is authenticating the webmention sender
#
aaronparecki.com
edited /Private-Webmention (+1239) "add FAQs with some answers"
(view diff)
#
aaronparecki.com
edited /Private-Webmention (+533) "how does the sender know if the receiver supports this"
(view diff)
#
aaronparecki.com
edited /Private-Webmention (+321) "is this direct messaging"
(view diff)
#
voxpelli
did you discuss the scope and lifetime of the bearer token? can a client expect it to live forever or should it typically only be valid for a single fetch?
#
aaronpk
i'm going to include this in the spec, but it's going to refer to OAuth 2.0 bearer tokens which include a lifetime in the token response
#
aaronpk
so it's entirely up to the server how long they want the token to last, but the server will indicate to the client how long it lasts
#
voxpelli
yeah, thought it would, but wonder what one should aim for – what works best with the expectation of a webmention endpoint
#
aaronpk
and that's what "realm" is for. If the webmention endpoint receives another webmention containing a previously seen "realm" for which it has a valid access token, the endpoint SHOULD skip the code exchange and use the existing token immediately to fetch the source URL and avoid generating a new access token.
#
aaronpk
the nice thing is if the receiver doesn't do that, it doesn't really hurt anything, so you can treat this as an optimization
#
voxpelli
back to the "public page upgrading" case – if one wants to have a post both publicly be shown and be notified to a site owner in it's upgraded shape – then I wonder how one would solve that?
#
voxpelli
I guess the sender should send two pings then – one with a code and one without one and the token would only be sent for the fetch caused by the ping including the code
loicm joined the channel
#
GWG
I need to figure out what to do about Webmentions.
#
GWG
Anyone have any forking experience?
#
aaronpk
voxpelli: it won't hurt anything to send two, but the sender could also optimize that and just send the private one
#
GWG
I wrote a combined webmention pingback fallback plugin and I am trying to decide what to do with it.
#
voxpelli
aaronpk: and the endpoint should then fetch public as well as private version?
#
aaronpk
why would it need to fetch the public version if it can fetch the private version?
ben_thatmust joined the channel
#
voxpelli
aaronpk: if the mention should be included in a public list
plindner joined the channel
#
aaronpk
then sure
cmal joined the channel
#
aaronpk
voxpelli: i just realized that HTTP requires sending a "WWW-Authenticate" header if you return 401, so that works out nicely
#
aaronpk
and is also described in bearer tokens: https://tools.ietf.org/html/rfc6750#section-3
#
voxpelli
one should probably document whether one is expected to fetch both through the code-ping or whether one should expect two pings to fetch both (+ also whether tokens should be used for none-code pings)
#
aaronpk
that kind of feels out of scope of webmention, and more along the lines of authenticated posts in general
#
voxpelli
well, it's webmention specific to know what it is that has actually been pinged – and up until now that has always been the public version
#
voxpelli
and since all privately fetched content won't be shown publicly then if a code is always to be used and a token with a very wide realm has been received, then that will basically exclude all content of that blog from being publicly shown by that receiver again
#
voxpelli
unless either the client is forced to do both code-less and code-pings and tokens are not used for code-less pings or endpoint is forced to always fetch both public and private versions of a url no matter the ping type
tantek joined the channel
#
aaronparecki.com
edited /Private-Webmention (+4508) "initial draft of spec"
(view diff)
#
aaronparecki.com
edited /Private-Webmention (+2924) "/* How To */ how to send"
(view diff)
#
aaronparecki.com
edited /Private-Webmention (+2801) "/* How to Receive Private Webmentions */"
(view diff)
KartikPrabhu joined the channel
#
tantek
is getting lost in property-specific storage semantics / behavior
#
GWG
aaronpk: I hope you said that like George Takei does.
#
tantek
puts aside created and updated to get dual file published working
#
loqi.me
edited /Wallabag (+112) "/* See Also */ new section"
(view diff)
dkm joined the channel
#
voxpelli
nice with more protocol handler work! as a side-note: indie-config could store indieauth domain in addition to everything else it stores
#
loqi.me
edited /sparkline (+62) "Zegnat added "http://kryogenix.org/days/2012/12/30/simple-svg-sparklines/" to "See Also""
(view diff)
#
GWG
aaronpk: When you get back....is that an update to php-comment?
#
aaronpk
what is private webmention?
#
Loqi
The Private Webmention protocol is an extension to Webmention that supports sending and verifying Webmentions for posts that require access control https://indieweb.org/private-webmention
#
loqi.me
edited /sparkline (+47) "KevinMarks_ added "http://www.kevinmarks.com/svgsparklines.html" to "See Also""
(view diff)
#
loqi.me
edited /sparkline (+45) "KevinMarks_ added "http://www.kevinmarks.com/joyofsparks.html" to "See Also""
(view diff)
#
ncollig.net
created /User:Ncollig.net (+1085) "Created page with "<div class="h-card">[https://ncollig.net/ <img src="https://ncollig.net/file/29fb5b71090d7a6f18e3941bd9d73b3d/thumb.jpg" style="width:128px;float:right;margin-left:1em"/>'''<span...""
(view diff)
#
ncollig.net
edited /IRC_People (+119) "/* Nicknames */"
(view diff)
#
cweiske.de
edited /Private-Webmention (+369) "/* FAQ */"
(view diff)
KevinMarks, loicm and KartikPrabhu joined the channel
#
bear
was the private webmention discussion recorded? i''m curious about the state diagram - some of the steps seem ordered oddly and some pieces seem missing
dkm joined the channel
#
bear
oh - assumes https
KartikPrabhu joined the channel
#
Zegnat
bear: there are notes from the session: https://indieweb.org/2016/Brighton/directmessage
#
bear
thanks
#
Zegnat
I think sknebel was there, which probably means the notes will be rewritten and made into a nice session page by him during the upcoming week. Those are the live notes.
#
bear
cool
#
bear
I am interested in getting that flow into my webmention handling code
#
sknebel
bear: yeah, I'll rewrite the session notes, but most of the technical stuff is in aarons spec start and technical "holes" in there probably should be issues on its page: http://indieweb.org/private-webmention
#
bear
some of what I thought were holes were answered in the FAQ about assuming https
#
bear
and the implicit trust of the sending webmention including the code
#
Zegnat
yeah, I am not yet sure how I am going to tackle the HTTPS part :/ Probably host the webmention end-point on a different server
#
bear
for my static site I have to run a daemon just to handle webmentions anyways, so this isn't any more onorous
#
Zegnat
The shared hosting my family domain is on does not let me set-up free (or even cheap) SSL, that’s my problem
#
bear
oh - ouch
#
Zegnat
It takes care of all of the personal email of close family members though, and I do not feel like trying to move all of that at the moment.
#
Zegnat
So I am in limbo.
#
aaronpk
bear: would love your feedback on the private webmention spec! I turned our notes from the discussion into the spec which it looks like you read already
#
aaronpk
definitely feel free to add more FAQ questions on the page
#
GWG
aaronpk, to get support for bookmarks did you update php-comments?
#
aaronpk
Nope the property was already making it to my site via webmention.io
#
GWG
Oh well
tantek joined the channel
#
tantek
evening #indieweb-dev