Logs for #nikola for 2017-12-05

00:39:01 -travis-ci:#nikola- getnikola/nikola#9568 (fix-2906 - 1d2e20a : Roberto Alsina): The build is still failing.
00:39:02 -travis-ci:#nikola- Change view: https://github.com/getnikola/nikola/compare/285c12b7f889...1d2e20a5194a
00:39:02 -travis-ci:#nikola- Build details: https://travis-ci.org/getnikola/nikola/builds/311587915
15:33:53 <ralsina> Hey ChrisWarrick... since both of us have failed to maintain a proper CMS-like thing for Nikola ... how do you feel about supporting something like  https://docs.datocms.com
15:41:29 <ChrisWarrick> ralsina: Sure. There’s also Netlify CMS that does a similar thing.
15:44:38 -GitHub[nikola]:#nikola- [nikola] Kwpolska pushed 1 new commit to fix-2906: https://git.io/vbZTY
15:44:38 -GitHub[nikola]:#nikola- nikola/fix-2906 16c7e50 Chris Warrick: fname is unused
15:44:45 -GitHub[nikola]:#nikola- [nikola] Kwpolska pushed 1 new commit to master: https://git.io/vbZTs
15:44:45 -GitHub[nikola]:#nikola- nikola/master 60e9861 Chris Warrick: Merge pull request #2928 from getnikola/fix-2906...
15:44:55 -GitHub[nikola]:#nikola- [nikola] Kwpolska deleted fix-2906 at 16c7e50: https://git.io/vbZTn
15:57:11 <ralsina> Cool, Dato seems very easy to support
15:57:20 <ChrisWarrick> netlify’s even easier
15:57:27 <ChrisWarrick> you don’t need node on your machine
15:57:30 <ChrisWarrick> (netlify CMS is)
15:57:51 <ralsina> Neat
15:57:59 <ralsina> Hell, let's do both
15:58:13 <ralsina> I think I can do both in one day
15:58:21 <ralsina> Now just need to find a whole day :-)
15:58:42 <ChrisWarrick> https://www.netlifycms.org/docs/quick-start/
15:59:58 <ChrisWarrick> I’m going to look into Netlify
16:04:53 <ralsina> Cool, I'll look into dato
16:44:04 <KwBot> [nikola] max-arnold opened issue #2930: Unicode exception while compiling template-based shortcode https://github.com/getnikola/nikola/issues/2930
16:50:58 <anderbubble> I've recently made some changes to my postcast plugin, but I'm not confident that I'm doing things the right way. Would anyone be willing to look it over and give me feedback on the plugin? (It's only 282 lines in a single file.)
16:51:27 <anderbubble> (It works for me right now, but I get the sense it's fragile, especially around optionally-translatable configuration options.)
16:51:41 <anderbubble> I also don't know if my new configuration directives are appropriately idiomatic.
16:54:17 <ChrisWarrick> anderbubble: go ahead, post a link
16:54:55 <anderbubble> https://github.com/anderbubble/nikola-postcast
16:55:24 <anderbubble> I haven't updated the sample conf.py to match my changes yet
16:56:24 <anderbubble> But here's a snippet of how I have it configured on my site: https://gist.github.com/anderbubble/41942463b8876838d22f6538aa227c6e
16:59:59 <ChrisWarrick> anderbubble: podcast_explicit should be a list of tags IMO (included → True).  Very bad: lines 59-61.  You should not modify self.site.config like that, instead only change the values you work with (loop over defaults, check site config)
17:02:55 <anderbubble> Oh, weird. I don't remember doing that at all. U must have gotten it from somewhere else.
17:03:02 <anderbubble> *I* must have gotten it from somewhere else.
17:03:04 <ChrisWarrick> anderbubble: TranslatableSettings don’t expose the `.get` API, are you sure it really works?
17:03:12 <ChrisWarrick> The rest looks reasonable to me.
17:04:03 <anderbubble> It definitely works right now, but that was a point of fragility for me earlier. If the value didn't actually have a translaction dict in the config, it was crashing on not having .get(). That's actually a big part of why I was asking. :)
17:04:08 <anderbubble> So I'm glad to hear it called out.
17:04:25 <anderbubble> What should I be doing there in stead?
17:04:38 <anderbubble> (I really appreciate the feedback, by the way.)
17:06:46 <ChrisWarrick> First; what nikola version are you running, and is 'POSTS_SECTION_TITLE' in site.TRANSLATABLE_SETTINGS? (check in `nikola console`, not the source)
17:17:42 <anderbubble> Nikola==7.8.10
17:18:53 <anderbubble> >>> 'POSTS_SECTION_TITLE' in site.TRANSLATABLE_SETTINGS
17:18:54 <anderbubble> True
17:19:12 * anderbubble just now learns about `nikola console`
17:19:19 <anderbubble> That's fantastic.
17:20:46 <ChrisWarrick> type(site.config['POSTS_SECTION_TITLE'])
17:35:43 <anderbubble> >>> type(site.config['POSTS_SECTION_TITLE'])
17:35:43 <anderbubble> <class 'nikola.utils.TranslatableSetting'>
17:36:05 <ChrisWarrick> And it’s a dict from within your plugin?
17:36:57 -GitHub[plugins]:#nikola- [plugins] ralsina pushed 1 new commit to master: https://git.io/vbZWq
17:36:57 -GitHub[plugins]:#nikola- plugins/master 168a5d1 Roberto Alsina: DatoCMS plugin
17:41:21 <ralsina> There, finished with the Dato plugin. Was astonishingly easy
17:41:59 <ralsina> They want to publish it in their newsletter if we write the guide :-)
17:42:09 <ralsina> I think the README would be enough, actually
17:42:30 -travis-ci:#nikola- [PLUGINS] getnikola/plugins#1369 (master - 168a5d1 : Roberto Alsina): The build is still failing.
17:42:31 -travis-ci:#nikola- [PLUGINS] Change view: https://github.com/getnikola/plugins/compare/7f948e6407e1...168a5d1018a3
17:42:31 -travis-ci:#nikola- [PLUGINS] Build details: https://travis-ci.org/getnikola/plugins/builds/311983753
17:43:35 <anderbubble> @ChrisWarrick, self.site.config['POSTS_SECTION_TITLE'].get(lang, {}) is returning an empty {}, presumably the default value of the get() call.
17:43:57 <ChrisWarrick> anderbubble: But what type is the thing you call .get() on?
17:44:15 <anderbubble> Oh, that's a TranslatableSetting
17:44:21 <anderbubble> I think, anyway.
17:44:23 <anderbubble> One sec
17:44:41 <ChrisWarrick> ralsina: got netlify working, pretty neato
17:45:10 <anderbubble> <TranslatableSetting: 'POSTS_SECTION_TITLE'>
17:45:36 <ChrisWarrick> From the plugin? Strange.
17:46:04 <anderbubble> To be clear, that .get() isn't working as I thought it was either, though. I've got values for DEFAULT_LANG in conf.py, so I don't know why they aren't reaching the plugin.
17:46:27 <anderbubble> Maybe it has something to do with me permuting self.site.config?
17:46:35 <anderbubble> I'll fix that tonight and check back?
17:46:36 <ChrisWarrick> No, but I see what I didn’t notice
17:46:59 <ChrisWarrick> Yes, you can access .get() because we expose all attributes of the underlying data structure.  But you shouldn’t.
17:47:16 <ChrisWarrick> self.site.config['POSTS_SECTION_TITLE'](lang) will do the right thing.
17:52:51 <anderbubble> aha
17:53:07 <anderbubble> and I know I've used that idiom before, so I wonder why I started getting it wrong.
17:53:42 <anderbubble> I'll go ahead and do that real quick in my working copy, and try it out tonight
17:54:14 <anderbubble> again, I really appreciate the feedback, @ChrisWarrick.
17:54:37 <ChrisWarrick> you’re welcome.
18:17:51 <ChrisWarrick> For fans of CMSes: https://github.com/getnikola/plugins/tree/master/v8/datocms || https://github.com/getnikola/nikola-netlify-cms
18:29:16 <ralsina> It's surprising how different the two things are and how much alike they end up working :-)
18:29:30 <ralsina> I could probably do a generate-the-travis.yml thing
18:29:50 <ChrisWarrick> Do what?
18:30:08 <ChrisWarrick> The tutorial is easy enough to follow
18:30:16 <ChrisWarrick> Also, micro-blog-post coming up about the adventures
18:33:44 -travis-ci:#nikola- getnikola/nikola#9571 (master - 60e9861 : Chris Warrick): The build passed.
18:33:45 -travis-ci:#nikola- Change view: https://github.com/getnikola/nikola/compare/02510a81933a...60e9861269cf
18:33:45 -travis-ci:#nikola- Build details: https://travis-ci.org/getnikola/nikola/builds/311924705
18:33:48 <ralsina> Yeah
18:34:02 <ralsina> In fact, dato recomments using netlify to build :-)
18:38:37 <ChrisWarrick> got any demo of Dato? (doesn’t have to be public)
18:42:50 <ChrisWarrick> ralsina:18:56:09 -travis-ci:#nikola- getnikola/nikola#9569 (fix-2906 - 16c7e50 : Chris Warrick): The build has errored.
18:56:10 -travis-ci:#nikola- Change view: https://github.com/getnikola/nikola/compare/1d2e20a5194a...16c7e501dfe5
18:56:10 -travis-ci:#nikola- Build details: https://travis-ci.org/getnikola/nikola/builds/311924636
18:57:08 -GitHub[plugins]:#nikola- [plugins] Kwpolska pushed 1 new commit to master: https://git.io/vbZzt
18:57:08 -GitHub[plugins]:#nikola- plugins/master 4abe7e3 Chris Warrick: Minor README fixes...
19:01:49 <ralsina> ChrisWarrick: hmmm
19:01:58 <ralsina> ChrisWarrick: you can't really see much
19:02:13 <ralsina> ChrisWarrick: I could take a couple of screenshots
19:02:52 -travis-ci:#nikola- [PLUGINS] getnikola/plugins#1370 (master - 4abe7e3 : Chris Warrick): The build is still failing.
19:02:53 -travis-ci:#nikola- [PLUGINS] Change view: https://github.com/getnikola/plugins/compare/168a5d1018a3...4abe7e31d56f
19:02:53 -travis-ci:#nikola- [PLUGINS] Build details: https://travis-ci.org/getnikola/plugins/builds/312018813
19:02:54 <ChrisWarrick> Does Dato run locally?
19:02:55 <ralsina> Or just click on the link in the README, it will take you to a new just-configured site even if you don'thave an account
19:03:10 <ralsina> No, just a client script that fetches all the data
19:03:18 <ralsina> everything else is hosted at datocms.com
19:04:34 <ChrisWarrick> does it have a nice markdown editor?
19:04:57 <ralsina> It has a reasonable HTML one 
19:05:09 <ralsina> Must admit I have not really tried it all that much :-)
19:17:46 <ChrisWarrick> Blog post about Dato and Netlify: https://getnikola.com/blog/a-cms-or-two-for-nikola-dato-cms-and-netlify-cms-integration.html  (cc ralsina)
19:18:16 -GitHub[site]:#nikola- [nikola-site] Kwpolska pushed 1 new commit to master: https://git.io/vbZaq
19:18:16 -GitHub[site]:#nikola- nikola-site/master bf887d9 Chris Warrick: Dato/Netlify CMS blog post...
19:18:58 <ralsina> ChrisWarrick: awesome work as always
19:20:10 <ralsina> ChrisWarrick: maybe you can change the URL for the dato plugin to https://plugins.getnikola.com/v8/datocms/
19:23:29 <ChrisWarrick> ralsina: What’s the change?
19:59:58 <ralsina> ChrisWarrick: the post has a link to the github page for the readme instead of to the plugins.getnikola.com link
20:00:18 <ralsina> Ah, it's ok now? Or was it ok all along?
20:00:23 <ralsina> Anyway it's ok :-)
20:02:46 -GitHub[site]:#nikola- [nikola-site] Kwpolska pushed 1 new commit to master: https://git.io/vbZKw
20:02:46 -GitHub[site]:#nikola- nikola-site/master 20932c3 Chris Warrick: test commit please ignore...
22:31:12 <anderbubble> @ChrisWarrick, btw, the reason POSTCAST_EXPLICIT can't just be a list is because iTunes differentiates between undefined and false.
22:31:28 <ChrisWarrick> What is the meaning of undefined to iTunes?
22:31:31 <anderbubble> A podcast can be designated as explicit, designated as clean, or undefined.
22:31:43 <anderbubble> Itunes will actually list something as clean if it has explicit=False
22:32:05 <ChrisWarrick> Oh.
22:32:20 <anderbubble> Just saying because I realized it as I started to implemented your recommendation .:)
22:32:25 <ChrisWarrick> (My experience with iTunes as podcatcher: how do people use this and like it?!)
22:32:56 <anderbubble> It puts the podcast in the ipod or else it gets the hose again.
22:37:05 <KwBot> [nikola] Kwpolska closed issue #2930: Unicode exception while compiling template-based shortcode https://github.com/getnikola/nikola/issues/2930
22:37:16 -GitHub[nikola]:#nikola- [nikola] Kwpolska pushed 1 new commit to master: https://git.io/vbZx3
22:37:16 -GitHub[nikola]:#nikola- nikola/master a7ede10 Chris Warrick: Fix #2930 -- specify utf-8 as default encoding for Mako...
22:41:31 -GitHub[nikola]:#nikola- [nikola] Kwpolska pushed 1 new commit to master: https://git.io/vbZxM
22:41:31 -GitHub[nikola]:#nikola- nikola/master 287d079 Chris Warrick: Really fix #2930 (change also needed for Lexer)...
23:06:51 -GitHub[nikola]:#nikola- [nikola] felixfontein created fix-exceptions (+1 new commit): https://git.io/vbZj5
23:06:51 -GitHub[nikola]:#nikola- nikola/fix-exceptions a6ac1b3 Felix Fontein: When classification is None, a TypeError is raised.
23:09:06 -GitHub[nikola]:#nikola- [nikola] felixfontein opened pull request #2931: Exception when using `_link("index", None)` in template (master...fix-exceptions) https://git.io/vbne3
23:37:04 -travis-ci:#nikola- getnikola/nikola#9573 (master - 287d079 : Chris Warrick): The build passed.
23:37:05 -travis-ci:#nikola- Change view: https://github.com/getnikola/nikola/compare/a7ede101e4f0...287d0795bc73
23:37:05 -travis-ci:#nikola- Build details: https://travis-ci.org/getnikola/nikola/builds/312117421
23:37:19 -travis-ci:#nikola- getnikola/nikola#9572 (master - a7ede10 : Chris Warrick): The build passed.
23:37:20 -travis-ci:#nikola- Change view: https://github.com/getnikola/nikola/compare/60e9861269cf...a7ede101e4f0
23:37:20 -travis-ci:#nikola- Build details: https://travis-ci.org/getnikola/nikola/builds/312115733
23:57:42 <anderbubble> And now I've managed to change my plugin such that my doit tasks aren't being executed.
23:58:10 <anderbubble> It's like I'm back in college where "it compiles" is the metric for success.
23:58:30 <anderbubble> (No nock against nikola; I'm just frustrated at feeling ignorant)
23:58:32 <anderbubble> *knock