[08:49] <ccard> If I want to use the ca-certs module (as here: https://cloudinit.readthedocs.io/en/latest/topics/examples.html#configure-an-instances-trusted-ca-certificates), what do I need to add to /etc/cloud/cloud.cfg?
[08:52] <ccard> I can see /usr/lib/python2.7/site-packages/cloudinit/config/cc_ca_certs.py, so do I add "ca_certs" to cloud_config_modules? Or "ca-certs"? Is the difference between "-" and "_" significant?
[09:27] <cpaelzer> ccard: the config value should be behind ca-certs:
[09:27] <cpaelzer> ccard: ca_cert_cfg = cfg['ca-certs'] - that line gets the "section" (if you want to call it that way - behind ca-cert
[09:28] <cpaelzer> ccard: all following uses ca_cert_cfg to read subelements
[09:31] <cpaelzer> ccard: http://cloudinit.readthedocs.io/en/latest/topics/examples.html#configure-an-instances-trusted-ca-certificates
[09:32] <ccard> cpaelzer: thanks. What do I need in /etc/cloud/cloud.cfg in the cloud_config_modules section? "ca-certs" or "ca_certs"?
[09:33] <cpaelzer> the former, as listed in the example link
[09:33] <cpaelzer> ccard: ^^
[09:34] <ccard> cpaelzer: I don't see anything in that link about /etc/cloud/cloud.cfg
[09:34] <cpaelzer> ccard: right I just found the config syntax for it - not a particular statement about cloud.cfg
[09:37] <cpaelzer> ccard: usually you put that as a submodule and include it from cloud.cfg
[09:37] <cpaelzer> ccard: but IIRC you could add it directly there as well if you want
[09:37] <cpaelzer> let me take a look
[09:39] <ccard> Currently, the /etc/cloud/cloud.cfg I get by default doesn't have ca-certs module listed (similarly for the resolv_conf module). I have cloud-init-0.7.5-10.el7.centos.1.x86_64 on CentOS 7 which lays down /etc/cloud/cloud.cfg. The ca-certs module exists, but is not configured into cloud-init as far as I can see.
[09:40] <cpaelzer> ccard: ah - now I get you what you want to put into cloud.cfg
[09:40] <cpaelzer> ccard: looking at my 0.7.7~bzr1212-0ubuntu1 I see it listed in modules
[09:40] <cpaelzer> ccard: http://paste.ubuntu.com/16373639/
[09:41] <cpaelzer> ccard: I don't know if this is not yet fully exploited on your version or just disabled by default - sorry
[09:42] <ccard> cpaelzer: so it should be "ca-certs" in the cloud_init_modules (not cloud_config_modules)?
[09:43] <cpaelzer> ccard: that is what is in my more recent version, but it leaves my comfort zone to hard-confirm it for your case
[09:44] <ccard> cpaelzer: ok, thanks for your help
[09:44] <cpaelzer> ccard: I'll look in the repo and check when it was added there
[09:44] <cpaelzer> ccard: maybe it sheds some more light
[09:44] <ccard> cpaelzer: thanks
[09:48] <cpaelzer> ccard: it was just adding it there (no moving) back in 2012 with the comment "Add ca-certs into the main config to run just before rsyslog."
[09:49] <cpaelzer> ccard: but then the code handling that got merged along that - so I'd find it quite weird if you had the code but not this change in the config
[09:50] <ccard> cpaelzer: probably a RedHat thing
[09:51] <cpaelzer> ccard: you can find a bit of the devl history n just this in https://bugs.launchpad.net/cloud-init/+bug/915232
[09:52] <ccard> cpaelzer: thanks
[11:00] <cpaelzer> smoser: for the testing with mock I wonder if/how to access files usually deployed by the package itself
[11:00] <cpaelzer> smoser: I think I got the concept of self.patchUtils and such to rewrite the basic file access methods
[11:00] <cpaelzer> smoser: and that works fine for stuff that I write to stay in e.g. a tmp dir
[11:01] <cpaelzer> smoser: but my tests now pass code that e.g. checks for /etc/cloud/templates/sources.list.ubuntu.tmpl
[11:01] <cpaelzer> smoser: and this is not "there" in the test environment - no matter if I rewrite access or not
[11:01] <cpaelzer> smoser: I wonder how those files - that would be provided by the package install - would get into the test environment
[11:02] <cpaelzer> smoser: I didn't find a test that cared about that yet - is there one which I could use to learn from how to get those files in the test environment?
[11:03] <cpaelzer> smoser: I might just mock around the clock to get it for the unittests, but I wonder if it could be done
[12:02] <cpaelzer> smoser: would you expect urlparse to return for hostname on 'ftp.us.debian.org'?
[12:02] <cpaelzer> I need to read more of the specs or write a small test app ...
[13:08] <cpaelzer> smoser: it is so sad, I added all kind of nice stuff like self.patchOS(self.new_root) once I understood what it did
[13:08] <cpaelzer> smoser: but later I understood it even more and removed oh so much
[13:09] <cpaelzer> smoser: final changes look silly when I think how much I wrote to get there :-)
[13:09] <cpaelzer> smoser: at least - nice learning experience
[13:33] <smoser> cpaelzer, did you get all you needed ?
[13:37] <cpaelzer> smoser: other than the theoretical question about /etc/cloud/templates/sources.list.ubuntu.tmpl above yes
[13:37] <cpaelzer> smoser: and even that I got working via mocking, but I was eager to find out if it would be possible at all
[15:19] <cpaelzer> smoser: I've sent you a MP for the cloud init part what you asked for
[15:19] <cpaelzer> smoser: currently down in calls and soon in the same as you :-)
[15:19] <cpaelzer> smoser: after that is family handling time, but in like 3 hours I'd be back
[15:20] <cpaelzer> smoser: if you have any complex feedback til then we coudl discuss it - otherwise I'd go on on the curtin part of it tomorrow
[15:38] <smoser> cpaelzer, just hit 'reply'
[15:38] <smoser> or whateer that button was labeleed
[15:38] <smoser> https://code.launchpad.net/~paelzer/cloud-init/test-apt-source/+merge/294521
[15:39] <cpaelzer> smoser: thanks *reading*
[15:40] <cpaelzer> smoser: ack to all, with some vague yes to the style things
[15:41] <cpaelzer> smoser: I'll modify once everybody around is sleeping
[15:41] <cpaelzer> smoser: I'm sitll on 50% Austin tz anyway
[15:41] <cpaelzer> smoser: so you should have a new MP to look at over my night later on
[15:43] <smoser> k.
[17:15] <harlowja> smoser i'm also going to go through and fix up a bunch of flake8 issues
[17:15] <harlowja> https://gist.github.com/harlowja/3ba219c41f1e5dd3cd596b4795f8abe8
[17:15] <harlowja> nothing major, just some minor stuff
[17:16] <harlowja> https://gist.github.com/harlowja/3ba219c41f1e5dd3cd596b4795f8abe8#file-gistfile1-txt-L119 is sorta major i guess though, lol
[17:16] <harlowja> probably won't work in py3
[17:17] <smoser> hmm
[17:19] <smoser> harlowja,
[17:19] <smoser> flake8	2.5.4-2
[17:19] <smoser> that does not complain about it
[17:20] <harlowja> odd
[17:20] <smoser> what version do you have ?
[17:20] <harlowja> 2.2.4
[17:20] <harlowja> still shows it for me if i upgrade
[17:21] <harlowja> cloudinit/sources/helpers/openstack.py:149:5: H236  Python 3.x incompatible __metaclass__, use six.add_metaclass()
[17:21] <harlowja> cloudinit/sources/__init__.py:50:5: H236  Python 3.x incompatible __metaclass__, use six.add_metaclass()
[17:21] <harlowja> that one also
[17:21] <harlowja> i'll fix it up sir
[17:22] <smoser> http://paste.ubuntu.com/16378958/
[17:23] <harlowja> ya, i'm pretty sure u are just weird
[17:23] <harlowja> lol
[17:25] <harlowja> $ pip freeze | grep   "pep8\|pyflakes\|flake8\|pylint"
[17:25] <harlowja> flake8==2.5.4
[17:25] <harlowja> pep8==1.7.0
[17:25] <harlowja> pyflakes==1.0.0
[17:25] <harlowja> pylint==1.5.5
[17:25] <harlowja> thats my stuffs
[17:27] <harlowja> then
[17:27] <harlowja> flake8 cloudinit/sources/helpers/openstack.py
[17:27] <harlowja> cloudinit/sources/helpers/openstack.py:149:5: H236  Python 3.x incompatible __metaclass__, use six.add_metaclass()
[17:27] <harlowja> cloudinit/sources/helpers/openstack.py:487:1: H401  docstring should not start with a space
[17:31] <smoser> harlowja, that warning comes from pyflakes, right ?
[17:31] <smoser> and mine is newer than yours
[17:31] <smoser> and newer is always better
[17:31] <smoser> always
[17:31] <harlowja> lol
[18:00] <smoser> rharper, (or harlowja ) there is no way to go from ENI to network-config, right ?
[18:00] <smoser> i see parse_deb_config() but that returns some other 'ifaces' dictionary
[18:00] <harlowja> i didn't see anything that does that parsing
[18:00] <harlowja> just network-config -> network-state -> eni
[18:01] <smoser> http://paste.ubuntu.com/16379781/
[18:01] <smoser> so my current path of attack for all this network config stuff is to drop 'dsmode'
[18:01] <harlowja> ya, i think thats this other thing
[18:01] <harlowja> there are a few formats at play here in the net stuff :-P
[18:02] <harlowja> network-config isn't the internally used format
[18:02] <harlowja> its converted into something else
[18:02] <harlowja> (for some reason)
[18:03] <smoser> hm.. ok.
[18:03] <harlowja> ya
[18:04] <harlowja> https://code.launchpad.net/~harlowja/cloud-init/cloud-init-net-refactor has some examples/tests that i added for this
[18:04] <harlowja> http://bazaar.launchpad.net/~harlowja/cloud-init/cloud-init-net-refactor/revision/1227 (one test)
[18:05] <harlowja> but ya, smoser there is a internal format that i'm not sure why it was created :-P
[18:06] <smoser> well, rharper did that. and i dont really care if theres an internal format as long as you can got fmt1 <-> Internal <-> fmt2
[18:06] <smoser> and ideally losslessly
[18:06] <harlowja> ya, i'm not sure its loseless
[18:06] <smoser> right. well, /etc/network/interfaces as a format is lossy in and of itself.
[18:07] <smoser> because it does not declare the mac or of the nic. just its name.
[18:07] <smoser> so at least you have to read from the /sys and hope for the best state :)
[18:07] <harlowja> http://bazaar.launchpad.net/~cloud-init-dev/cloud-init/trunk/view/head:/cloudinit/sources/DataSourceConfigDrive.py#L309
[18:07] <harlowja> the converter ^
[18:08] <harlowja> bazaar.launchpad.net/~harlowja/cloud-init/cloud-init-net-refactor/  i think helps here, so ya, merge it, lol
[18:09] <harlowja> https://code.launchpad.net/~harlowja/cloud-init/cloud-init-flake8-fixups/+merge/294548 also
[18:15] <smoser> harlowja, i'm generally ok with fixing up lint things (and pyflakes things)
[18:15] <smoser> but its obnoxious when that is a never ending task, and you end up chasing your tail to work in all different versions
[18:16] <smoser> for example, pyflakes for me is perfectly happy.
[18:16] <smoser> but for you it is not
[18:18] <harlowja> well some of these are somewhat basic issues
[18:18] <smoser> yeah, but why does my pyflakes not care
[18:18] <harlowja> __metaclass__ afaik is gone in py3 :-/
[18:18] <smoser> when mine is >= to yours for all of pep8, flake8 and pyflakes
[18:18] <harlowja> and stuff like class A: is different on py3 vs p2 where u need to do class A(object)
[18:19] <smoser> well, sure. and that is all ok.
[18:19] <smoser> but why does my system think its ok.
[18:19] <smoser> and yours not
[18:20] <smoser> i'm not ok randomly fixing crap like that
[18:21] <harlowja> https://gist.github.com/harlowja/fb8a1c2c27ecf433daf71524f150bc18
[18:21] <harlowja> i just installed all the same versions :-P
[18:21] <harlowja> your system is weird, lol
[18:21] <harlowja> ohhh i think i know
[18:22] <harlowja> can u install hacking==0.10.2
[18:24] <smoser> i'm using this thing called a distribution
[18:24] <smoser> i get stuff from it.
[18:24] <harlowja> :-P
[18:25] <harlowja> ya, it should be packaged under some name
[18:25] <harlowja> https://github.com/openstack-dev/hacking is the project
[18:27] <smoser> wow
[18:27] <smoser> that is quite helpful (/sarcasm)
[18:27] <smoser> apt-get install python3-hacking and all of a sudden flake8 decides to act differently.
[18:27] <harlowja> ya....
[18:28] <harlowja> action at a distance :-P
[18:28] <smoser> neither of these packages indicate interaction with one another.
[18:28] <harlowja> ya, i know, i forgot about it
[18:28] <harlowja> but they do :-/
[18:29] <smoser> see the 'chasing your tail' comment above ?
[18:29] <harlowja> but the issues its raising are still useful ;)
[18:29] <smoser> so what do you do about this sort of thing.
[18:29] <harlowja> https://code.launchpad.net/~harlowja/cloud-init/cloud-init-flake8-fixups/+merge/294548 (imho fixes a bunch that i think are useful)
[18:30] <smoser> i really dont like it when random dude on the internet uploads a new python-<foo> package
[18:30] <harlowja> lol
[18:30] <smoser> and then my c-i (which is not present for cloud-init, but should be) starts to fail
[18:30] <smoser> i dont find that terribly useful.
[18:30] <harlowja> yes sir, u are from a distro company, i can tell :-P
[18:30] <harlowja> u must work at canonical
[18:30] <harlowja> lol
[18:30] <smoser> if everything always got better, that'd be one thing.
[18:31] <smoser> but i have evidence otherwise.
[18:31] <smoser> https://bugs.launchpad.net/pyflakes/+bug/1560134
[18:31] <smoser> on your python packages, what do you do ? do you pin versions of stuff in tox ?
[18:31] <harlowja> yup
[18:31] <smoser> or do you just love the daily activity of changing source code so you can fit joe-random-dude's daily gut feeling on what is the best way to write code.
[18:32] <harlowja> as long as joe random dude == josh random dude
[18:32] <harlowja> where josh random dude == me
[18:32] <harlowja> lol
[18:32] <smoser> alright. so lets pin versions then.
[18:33] <harlowja> k
[18:33] <smoser> for curtin i added a 'trusty' tox target
[18:33] <smoser> as you can write code that is happy on today's version of "good" but not april 2014's version of good.
[18:34] <harlowja> i trusty u
[18:34] <harlowja> lol
[18:35] <harlowja> ok in https://code.launchpad.net/~harlowja/cloud-init/cloud-init-flake8-fixups/+merge/294548  i froze the lint requirements
[18:38] <smoser> i do like the alphabetical order on imports
[18:47] <smoser> harlowja, i'll merge that if you read and offer thoughts on http://paste.ubuntu.com/16380605/
[18:50] <harlowja> yes boss
[19:01] <harlowja> smoser looks ok, i think i'd want each datasource to provide a setup_network (that most can just not implement) and cloud-init will call this on first boot (if there are multiple datasources that impl this that are active, we can i guess pick the first)
[19:02] <harlowja> that will get rid of some of the weird networking crap in config drive
[19:03] <smoser> harlowja, well, as it is right nwo in trunk the datasource may provide a network_config
[19:04] <smoser> and if it does, then cloud-init (in stages.py) will aply networkign as described there.
[19:04] <cpaelzer> smoser: did you know that long key fingerprints where broken?
[19:04] <harlowja> oh ya, right
[19:05] <cpaelzer> smoser: next MP will contain a fix but that was a good idea to test the long fingerprints
[19:05] <harlowja> smoser  http://bazaar.launchpad.net/~cloud-init-dev/cloud-init/trunk/view/head:/cloudinit/sources/DataSourceConfigDrive.py#L114 still exists though :-
[19:05] <cpaelzer> smoser: the embedded shell script lackes a few " and due to that it was broken for long fingerprints with spaces
[19:05] <harlowja> :-/
[19:06] <smoser> cpaelzer, :). how are they broken ?
[19:06] <smoser> harlowja, yeah, that is yucky.
[19:06] <smoser> thats why i was asking about converting network-interfaces into network-config
[19:06] <smoser> as ideally if there was an interfaces style file there, then we'd just convert it to a network-config and use it there.
[19:07] <cpaelzer> smoser: it is well hidden and just appears to not work, but at the root cause changing gpg --keyserver ${ks} --recv $k to use "${k}" does the job
[19:07] <harlowja> smoser hmmmm
[19:07] <harlowja> i mean, i can make a shitty converter
[19:07] <smoser> :)
[19:07] <harlowja> one already exists (but it doens't go to network-config)
[19:07] <cpaelzer> smoser: I reorganized the code a bit to allow testing down to the last level so it is not only fixed but should be catched next time
[19:08] <harlowja> smoser http://bazaar.launchpad.net/~cloud-init-dev/cloud-init/trunk/view/head:/cloudinit/distros/net_util.py
[19:08] <harlowja> ^ shitty converter
[19:08] <harlowja> u can just take the output format of that and turn it into network-config
[19:09] <harlowja> or whatever format u want, (of the 3+ that exist in cloud-init to represent network stuff, lol)
[19:09] <smoser> yeah :-(
[19:09] <smoser> we really need to have one internal representation
[19:09] <harlowja> yup
[19:09] <smoser> i guess i'm ok with that being 'network state'
[19:09] <harlowja> ya, that format isn't to well defined
[19:10] <harlowja> i tried deciphering it, lol
[19:11] <harlowja>  cause network state is really just a object with a version and a dict (the dict is the actual info)
[19:12] <harlowja> http://bazaar.launchpad.net/~cloud-init-dev/cloud-init/trunk/view/head:/cloudinit/sources/DataSourceConfigDrive.py#L308 (network_config there seems to be the actual format)
[19:12] <harlowja> and i sorta tried to figure out what network_config is, lol
[19:12] <harlowja> because network_config seems to be the dict that network state actually uses
[19:12] <harlowja> so ya, it'd be nice to well have that more well ummmm, defined, lol
[19:14] <harlowja> cause http://bazaar.launchpad.net/~cloud-init-dev/cloud-init/trunk/view/head:/cloudinit/net/network_state.py#L72 sorta just sets some random attributes, hard to tell what the real format is :-P
[19:14] <smoser> harlowja, curtin has the best examples of it.
[19:14] <smoser> we do need some much more formal documentation on that.
[19:14] <harlowja> def
[19:15] <smoser> http://bazaar.launchpad.net/~curtin-dev/curtin/trunk/files/head:/examples/
[19:15] <harlowja> yup yup
[19:15] <harlowja> sooo i'd be ok with that being the internal cloud-init format
[19:15] <harlowja> and then adjusting other places
[19:15] <harlowja> and having a loseless(?) openstack -> that format converter
[19:16]  * harlowja won't ask why the openstack format wasn't just used :-P
[19:16] <harlowja> bb, food
[19:19] <smoser> cpaelzer, hm.
[19:19] <smoser> i'm looking at that export key thing. and it is crap.
[19:19] <smoser> which is probably not a surprise to you :)
[19:20] <smoser> but it does seem to work for long fingerprint also
[19:22] <cpaelzer> with " it works for long
[19:22] <cpaelzer> without bash might break it
[19:22] <cpaelzer> and the gpg tool considers it a list of short id's
[19:23] <smoser> http://paste.ubuntu.com/16381150/
[19:23] <smoser> it works for me for long and short as is.
[19:23] <cpaelzer> haha
[19:23] <cpaelzer> smoser: wait for my example
[19:24] <cpaelzer> smoser: use this as the long key
[19:24] <cpaelzer> smoser: "B59D 5F15 97A5 04B7 E230  6DCA 0620 BBCF 0368 3F77"
[19:24] <cpaelzer> smoser: which is how it is listed by some tools, so people filling the config file might copy and paste it with spaces
[19:25] <cpaelzer> smoser: dpending on how things are connected it wither selects 5F15 as keyserver or tries to fetch 10 shortkeys with their ids
[19:25] <cpaelzer> smoser: both wrong
[19:26] <smoser> ah. yeah.
[19:26] <smoser> so yeah, that shoudl be quoted for sure.
[19:27] <smoser> its really crap that it has to recieve them
[19:27] <smoser> it tries to clean up after itself, and delete the thing (and not delete it if it found it locally already).
[19:27] <cpaelzer> smoser: I saw it
[19:27] <cpaelzer> smoser: all kind of messy if things get interrupted
[19:28] <cpaelzer> smoser: yet I didn't want to fix the whole world in one day
[19:28] <cpaelzer> smoser: I updated the MP and the commit message
[19:28] <smoser> well, its not really *too* messy.
[19:28] <smoser> root's local .gpg will just know of that fingerprint
[19:28] <smoser> its not really the end of the world
[19:28] <cpaelzer> ah is that local - yeah it is just gpg and not apt-key
[19:29] <cpaelzer> I'll call it EOD then
[19:29] <harlowja> smoser what about extracting the curtin and net stuff into a curtin_net or something package?
[19:29] <cpaelzer> smoser: is there a good way of running curtin e.g. vmtests bundled with that experimental cloud-init?
[19:29] <harlowja> this would just have the format, the converters and renderers and that's about it
[19:29] <cpaelzer> smoser: if there is please drop me a mail, so I can use it tomorrow
[19:29] <harlowja> instead of being in cloudinit or being in curtin
[19:30] <harlowja> (or make other fancy name besides curtin_net)
[19:30] <harlowja> lol
[19:30] <smoser> originally i intended to have curtin's net and block modules move externally to something else.
[19:31] <smoser> but then rharper and i kind of decided that we would like for it to be in cloudd-init.
[19:33] <harlowja> hmmm
[19:50] <dcrouch> Is it possible to read mdata from smartos within cloud-init?
[19:51] <smoser> dcrouch, what is mdata ?
[19:52] <smoser> ah. i see.
[19:52] <smoser> dcrouch, http://bazaar.launchpad.net/~smoser/cloud-init/trunk.joyent-cleanup/revision/1216
[19:53] <dcrouch> smoser, Basically I can provide metadata to the server from smartos.  mdata is that metadata, for example.  https://dpaste.de/sDKS
[19:53] <smoser> i started a re-work of the smartos datasource that has a much simpler to use client
[19:55] <smoser> http://paste.ubuntu.com/16381487/
[19:55] <dcrouch> I'm thinking maybe I can write a python module, pull that data, and have it loaded on firstboot for items such as root password.
[19:56] <smoser> oh. well, the answer then is yes
[19:56] <smoser> and cloud-init already has a datasource for smartos
[19:56] <smoser> and it reads that stuff.
[19:56] <smoser> you give cloud-init config and it does what you tell it
[19:57] <dcrouch> I understand that, but when we create our images in SmartOS, I need a way to send data to the vms  for firstboot, so was looking how to get this for ubuntu.
[19:58] <dcrouch> https://dpaste.de/TFYr
[19:58] <smoser> dcrouch, that client is only in the branch i pointed you too above.
[19:59] <smoser> dcrouch, you're the cloud ?
[19:59] <smoser> ie, you're smartos ?
[20:00] <dcrouch> Correct smoser!
[20:00] <smoser> vendor-data
[20:00] <smoser> thats what you want.
[20:01] <smoser> thats what it was designed for basically.  vendor-data is user-data for the vendor
[20:01] <smoser> look at DataSourceSmartOS and read the comments around 'vendor-data' there :)
[20:02] <smoser> harlowja, you added 'igmore' of all those flake8 stuff
[20:02] <smoser> H404,H405
[20:02] <dcrouch> smoser, I've been looking up cloud-init for the last few hours and a few topics around there, I thought I recognized your name!    https://github.com/number5/cloud-init
[20:02] <smoser> but why ?
[20:02] <harlowja> smoser less things for me to fix in 1 merge, lol
[20:03] <smoser> but they're all fixed
[20:03] <harlowja> u can fix all the 404 and 405 ;)
[20:03] <harlowja> oh
[20:03] <harlowja> welllll then (makes up other reason)
[20:03] <smoser> at least i just comment that line out
[20:03] <smoser> and type 'tox -e pyflakes'
[20:03] <smoser> and ENOERROR
[20:04] <harlowja> hmmm, run flake8 not pyflakes
[20:04]  * smoser shames fist at his feeble brain
[20:04] <smoser> i confuse those two things all the time
[20:04] <harlowja> https://gist.github.com/harlowja/32845acbd0301fc2132fbd9255bddd1d
[20:04] <harlowja> 405 and 404
[20:04] <harlowja> and i'm like screw that, its a dumb warning, lol
[20:04] <smoser> i assumed you had added a tox
[20:05] <harlowja> nah, i didn't want to do everything, gotta leave u some work to
[20:05] <smoser> yeah. thanks.
[20:05] <harlowja> i'm nice like that
[20:09] <smoser> harlowja, so i'm gonna change pyflakes to flake8
[20:09] <smoser> which i think is a strict superset of pyflakes
[20:09] <smoser> right?
[20:09] <smoser> and then i'm going to fix all the tests/ so that it wont complain about those either
[20:10] <harlowja> cool
[20:11] <harlowja> sound good to me
[20:11] <harlowja> (yes afaik its a superset of)
[20:48] <dcrouch> Thanks for your help smoser I think I'll be back still confused but need to take off for a bit.