2014-08-09 UTC
# 00:00 aaronpk so this is actually a great example of the first problem we'll encounter
# 00:00 aaronpk when editing a mediawiki, you don't submit HTML, you submit mediawiki syntax
# 00:00 aaronpk which means the thing you're reading is not the same as the format you have to submit edits in
# 00:01 tantek that's right, you have to publish e-content of the raw syntax of the thing you're editing.
# 00:01 aaronpk which also means you need a way to retrieve the raw syntax
# 00:01 tantek aaronpk - those aformentioned edit buttons on wikipedia :)
# 00:01 aaronpk yep, and now this is starting to sound a lot more like micropub :)
# 00:02 tantek *how* you get that raw mediawiki syntax into your publishing system is orthogonal
# 00:02 aaronpk so I think the same mechanism could work for both
# 00:02 aaronpk for micropub edits we'll also need a way to retrieve the raw post content
# 00:02 tantek I can click the "edit" link on indiewebcamp, or even "view source" to get a textarea with the source
# 00:02 aaronpk isn't there already a rel=edit link on all the MW pages?
# 00:03 tantek and edit it as I would have edited the textarea on wikipedia
# 00:03 tantek except this time when I save to my server it publishes an *edit* post on *my* site
# 00:04 aaronpk shouldn't you also publish the date of the thing you're editing? so that someone looking at your post has a way to know what changes you're making?
# 00:04 aaronpk since you're not publishing a diff, you're publishing the full new version
# 00:05 tantek the "the date of the thing you're editing" is part of the permalink on wikipedia to a version
# 00:05 tantek so you have to do a u-edit-of *of* *that* permalink
# 00:05 aaronpk hm so your "u-edit-of" would be a version permalink?
# 00:06 tantek because you don't care abou the date of the thing you're editing, you care about the *version* of the thing
# 00:06 aaronpk that means if I wanted to support edits of my posts, I would need to create version permalinks for my own posts
# 00:06 tantek KevinMarks: the source already depends on that - see above, Wikipedia form UI submits the entire page/section
# 00:07 tantek KevinMarks: no - don't get confused with the native HTTP verbs
# 00:07 tantek the only thing submitted over HTTP is the webmention POST to endpoint and two URLs (source, target)
# 00:07 aaronpk we don't need different HTTP verbs for it since mediawiki already does it with GET/POST via HTML
manny__ joined the channel
# 00:08 tantek aaronpk - and before wikipedia supports receiving webmentions, we could add support to Bridgy Publish to accept the webmention of an edit, and then perform a form submission to Wikipedia on behalf of us
# 00:08 tantek it's all in the e-content of the actual HTML post permalink
# 00:08 aaronpk KevinMarks_: webmention doesn't ever include any content, just URLs
# 00:09 KevinMarks_ right, thats why I was confused. The source is the replacement content?
# 00:09 tantek so we could a) get this to work on indiewebcamp mediawiki, and then b) build a webmention->mediawiki proxy
# 00:10 tantek KevinMarks: no the source is a URL to an edit post
# 00:10 tantek that /edit post has an e-content which has the new raw syntax replacement
# 00:11 tantek aaronpk - this is why I want to try this with the mediawiki use-case first before trying to make it happen for editing our own posts
# 00:12 tantek KevinMarks: example of a post permalink on your site with versions?
# 00:13 tantek what's an example post on your site like that?
# 00:14 tantek I mean whats the actual post URL on kevinmarks.com
paulcp joined the channel
# 00:16 tantek KevinMarks: then that page should have a hyperlink in the footer like:
# 00:16 tantek <a href="https://github.com/kevinmarks/kevin-marks.com/commits/dfd796bb0ccefbe02ec7cafcc670a9edb108ffec/web/fragmentions.html">History</a>
# 00:17 tantek and here you go for even more fun, put a link like this next to that one:
# 00:17 tantek <a href="https://github.com/kevinmarks/kevin-marks.com/blob/db004403ae6fcb9dfdb1b6cc316fae98422bb35b/web/fragmentions.html">Edit</a>
# 00:18 tantek then all your blog posts will have transparent history, and the ability for anyone to go from reading your blog post, to making and suggesting an edit all through the web UI!
# 00:19 tantek you've already done the hard part of setting up git as your backend
# 00:19 tantek might as well put the little bit of UI of a "History" and an "Edit" link on there
# 00:20 KevinMarks_ I was thinking about moving off git, but this is a reason to stay
KevinMarks2 joined the channel
# 00:22 tantek aaronpk - this edit "protocol" is only "simple" because MediaWiki already has a notion of versions of pages with their own permalinks built in
# 00:23 tantek while that may also be a good approach for any random post on any indieweb site - I'm not sure of tying a general edit protocol to requiring permalinks of versions - though maybe that's the easiest path?
# 00:24 tantek enjoy lunch KevinMarks! Looking forward to seeing you implement the "Read Fork Write Merge Web" on your own site ;)
tilgovi joined the channel
# 00:29 aaronpk oh right... my site is backed by git as well, so I inherently have versioned posts if I expose a way to retrieve them by git hashes
# 00:38 tantek (might have to use p-content with any markup escaped instead of e-content so the edit post doesn't look weird on your own site)
# 00:42 kylewm tantek: how about including both the diff and the full, edited version? suspect diffs would be more useful for the implementation/plumbing
# 00:43 tantek kylewm: by virtue of the fact that the *working* MediaWiki form submission edit "protocol" sends the full version, I say no, the full version is what is useful for implementation, as that's what's currently implemented! (and not the diff)
# 00:44 tantek so the minimum viable edit post is *just* the full edited version
paulcp joined the channel
# 00:46 kylewm hmm, ok. if you are including the u-edit-of the specific version of the page (as it says in your spec), then i guess the diff is redundant anyway
# 00:47 tantek well, they're hypothetically isomorphic (diff vs. full), however I'm preferring the quickest path to implementation, following what's already been implemented (editing / accepting full versions)
# 00:52 tantek I'm assuming it's straightforward to code the transform of parsing an h-entry with p-content of the full version into the same result as a receiving and handling a form submission with the full version
# 00:54 tantek so I could post one of these edits as a "note" reply to a version of a page on indiewebcamp like *now*, and send a webmention, except it wouldn't do anything
# 00:55 tantek I wonder if that would be useful as a test case?
# 00:55 tantek I suppose it would depend on level of interest in anyone here adding the code to IndieWebCamp.com's webmention handler to process a mention from an edit post
# 00:55 tantek aaronpk - how interested in this would you be?
# 01:09 kylewm getting a header with Content-Type: "text/html" and a <meta charset="utf-8"> in the actual contents
# 01:10 KartikPrabhu kylewm: that little piece of code has turned out to be quite useful! I put it in ronkyuu as well :) maybe it should be its own thing
# 01:10 tantek which site is this header vs. meta happening?
chrissaad joined the channel
# 01:11 KartikPrabhu tantek: it seems to be a thing that the python requests library gets messes up on
# 01:11 kylewm but curl and the browser both seem to be able to figure it out
chrissaad joined the channel
# 01:11 tantek so my server got sloppier likely when they switched it over
# 01:11 kylewm so seems like a functional deficiency of python
# 01:13 tantek hmm - just verified that my home page returns Content-Type: text/html
# 01:13 tantek oh snap but a permalink only returns text/html. oops.
# 01:14 tantek sooo - should I fix this now? or leave it as a test case for you to fix your code on yourside too?
# 01:14 tantek (it is part of the HTML5 spec - that is, what I'm doing is ok)
# 01:15 tantek (though I'd rather serve it consistently header vs. meta)
# 01:15 KartikPrabhu it seems requests does not read the meta tag... and so default guess is ISO...., if header has no charset. But then BS4 reads the meta tag anyway ;)
# 01:16 kylewm i can still fake this behavior for a test case
KevinMarks2 joined the channel
# 01:20 kylewm "Many web servers supply incorrect Content-Type header fields with their HTTP responses. ... must consider the content of HTTP responses as well ..."
# 01:20 kylewm wondering if we should file an issue on python-requests
# 01:21 KartikPrabhu kylewm: I think requests does its best without sniffing the content... which they give ample warning about on their "quickstart" page
chrissaad joined the channel
# 01:39 kylewm KartikPrabhu++ agree with your analysis, and thank you for pointing me to this issue...
snarfed joined the channel
# 01:45 kylewm looks like since May 15, though i lost them for a while when i changed styles
# 01:47 tantek.com edited /repost (+174) "/* Kyle Mahan */ note repost of an indieweb post as well as POSSE native retweet of the respective POSSE tweet" (
view diff )
# 01:47 tantek nicely done with your (presumably automatic) POSSE native retweet of a POSSE tewet!
# 01:49 kylewm tantek: thanks!! that is one of my favorite things, feels like magic. we just added a similar feature to bridgy
# 01:49 tantek yeah! whenever any of this stuff just "clicks" with existing systems it definitely feels like magic
# 01:50 tantek hence if/when we get federated editing of MediaWiki working, that's going to look surreal to folks
# 01:50 tantek nevermind if we actually get Wikipedia to accept federated edits!
scor, krendil, Acidnerd, brianloveswords, mdik, snarfed, paulcp, jacus and tantek joined the channel
# 05:06 tantek !tell kylewm,KartikPrabhu fixed tantek.com post permalinks to return Content-Type: text/html
# 05:06 Loqi Ok, I'll tell them that when I see them next
bret joined the channel
# 05:15 Loqi KartikPrabhu: tantek left you a message 9 minutes ago: fixed tantek.com post permalinks to return Content-Type: text/html
KevinMarks2, alanpearce, alanpear_ and wolftune joined the channel
squeakytoy, petermolnar and eschnou joined the channel
Pierre-O, scor, eschnou, Acidnerd and ShaneHudson joined the channel
jschweinsberg joined the channel
Pierre-O, eschnou, chrissaad, ShaneHudson, wolftune, brianloveswords, alanpearce, irdan, pauloppenheim1, paulcp, scor and indie-visitor joined the channel
# 18:07 Loqi Welcome, indie-visitor! Set your nickname by typing /nick yourname
bnvk and eschnou joined the channel
# 18:28 bnvk mine should be up at some point- I was later in the day and he seems to be posting linearly
# 18:34 bnvk I have no idea what sort of "emoji only" username to pick
# 18:50 bnvk oh being trolled by non dogfooding dencetralization fascists… the joys
alanpearce, wolftune and squeakytoy joined the channel
snarfed, alanpearce and Kopfstein joined the channel
KevinMarks2, snarfed, grantmacken and scor joined the channel
# 21:06 Loqi kylewm: tantek left you a message on 8/8 at 10:06pm: fixed tantek.com post permalinks to return Content-Type: text/html
alanpearce, techlifeweb, paulcp, brianloveswords, snarfed, alanpear_ and scor joined the channel
# 22:38 snarfed bnvk: re the trolling, were they on their own domain? or a tumblr.com subdomain?
Acidnerd, fourtonfish, paulcp and techlifeweb joined the channel
# 23:29 techlifeweb snarfed: dose bridgy pick up if my tweet containging a link is retweeted? Original tweet was posted by jetpack Publish.
wolftune and paulcp joined the channel
# 23:52 techlifeweb ah ha! sorry, figured it out. The one is didn''t see looks like it was reposted by a private account.
# 23:54 techlifeweb snarfed: tried favoriting, retweeting and replying via a different accout and it's all good.