[01:12] <rick_h_> dammit, the inspector isn't a real view and doesn't have YUI events available to it. It can't this.fire or inspector.on()
[02:22] <Makyo> I hate this test :T AssertionError: expected 300 to equal 298.552734375
[02:22] <rick_h_> hah, JS match...you're drunk 
[02:22] <rick_h_> math that is
[03:22] <hatch> evening
[03:22] <rick_h_> party
[03:25] <hatch> hows it going?
[03:25] <rick_h_> bed time, branch is pushed for the night
[13:08] <rick_h_> benji: pushed another update to that branch per hatch's comments. 
[13:08] <benji> rick_h_: cool, I'll take a look
[13:23] <benji> rick_h_: do you have any tips on diffing your branch and mine?  git diff auto-open-close..qa-auto-open-rick (with two or three dots) shows lots of things I wouldn't expect
[13:52] <rick_h_> benji: you should be able to diff hashes in line. Since I started with your branch
[13:52] <rick_h_> benji: git checkout qa-auto-open-rick
[13:52] <rick_h_> git log
[13:52] <rick_h_> find the merge point
[13:53] <rick_h_> and then diff $hash..HEAD?
[13:53] <benji> rick_h_: I'll give that a try.  I was hoping for something more direct.
[13:56] <rick_h_> benji: https://github.com/mitechie/juju-gui/compare/benji-york:auto-open-close...mitechie:auto-open-close
[13:56] <rick_h_> benji: hmm, crap we have different develop bases which is why things are there you don't expect
[13:57] <rick_h_> benji: so the key would be to get the common base point by updating develop and getting that into your branch
[14:40] <hatch> rick_h_ so is PR 91 still a WIP? I was looking at it last night and assumed so...
[14:40] <rick_h_> hatch: yea, it's got two failing tests still
[14:40] <rick_h_> hatch: but it was something to see if I could get the origin idea working based on benji's branch
[14:41] <rick_h_> original*
[14:41] <hatch> cool lemme know when she's ready 
[14:41] <rick_h_> hatch: will do, thanks for the pre-review. It made me clean up a little bit of what I should have
[14:45] <benji> rick_h_: I'm looking at the two test failures
[14:46] <rick_h_> benji: it should just be another round of bootstraping all the stuff required to create an Inspector instance. None of the current tests run createServiceInspector or whatever that func is
[14:46] <rick_h_> benji: so that has to be called before testing the events
[14:46] <benji> rick_h_: ok
[14:46] <rick_h_> benji: so that you have a this.inspector.viewletManager 
[14:46]  * rick_h_ thinks that's what it was thinking back to when he gave up last night
[14:55] <gary_poster> ubuntu mouse stopping work
[14:55] <gary_poster> that is, ubuntu mouse handling broke again and I had to log out/in
[14:56] <gary_poster> hey frankban, I spoke with jamespage about Ubuntu packaging and he requested that we put quickstart on PyPI so he has official releases to work with
[14:56] <gary_poster> is that something you could whip up quickly?
[14:56] <frankban> gary_poster: sounds good. I think so, what Pypi account am I supposed to use?
[14:57] <gary_poster> frankban: I suggest yours, and then add everyone else on GUI with a PyPI acct as admin
[14:57] <rick_h_> frankban: you can use yours but I think you can grant access to other pypi users
[14:57] <frankban> gary_poster, rick_h_ cool
[14:57] <rick_h_> frankban: mitechie is my username here
[15:00] <bac> frankban: i see that quickstart starts an ssh-agent whether one is running or not.  couldn't we check to see if one is alive and happy before clobbering the existing one?
[15:01] <gary_poster> frankban on PyPI I am "gary" and benji is "benji".  I don't see bac or Makyo on a quick glance.
[15:01] <gary_poster> actually maybe you don't need to add me :-P
[15:01] <frankban> bac: Makyo knows the details for SSH keys handling
[15:01] <bac> creating a new ssh-agent every run means i have to re-enter my passphase.
[15:02] <frankban> gary_poster: I'll add you! :-/
[15:02] <gary_poster> :-) k
[15:04] <bac> frankban: add bac please
[15:26] <hatch> the best part about OSX is coming across bugs, googling them, then seeing that people have had the same issue for 4 years
[15:27] <frankban> gary_poster: could you please take a quick look at https://codereview.appspot.com/51790045 ? (quickstart update for PyPI)
[15:27] <gary_poster> on it
[15:27] <frankban> thanks
[15:28] <gary_poster> frankban: LGTM'd :-)
[15:31] <frankban> gary_poster: thank you
[15:32] <gary_poster> np!
[15:43] <frankban> jujugui https://pypi.python.org/pypi/juju-quickstart
[15:43] <frankban> bac: no "bac" user found on PyPI
[15:44] <frankban> hatch, Makyo: what's your PyPI user name?
[15:44] <gary_poster> awesome thanks frankban
[15:44] <hatch> wtpi is pypi
[15:44] <hatch> :P
[15:45] <frankban> hatch: please go to https://pypi.python.org/pypi, register, give me your username and then enjoy the cheese
[15:46] <hatch> lol ok
[15:47] <hatch> sweet I got 'hatch' as a username
[15:47] <hatch> that never happens
[15:50] <gary_poster> jujugui call in10
[15:58] <gary_poster> jujgui call in 2
[15:58] <gary_poster> jujugui
[16:01] <gary_poster> Makyo: pingy
[16:02] <Makyo> Sorry, SSO.
[16:11] <bac> frankban: try bradcrittenden
[16:11] <bac> for pypi
[16:11] <frankban> bac: it worked
[16:11] <bac> \o/
[16:20] <hatch> frankban I'll ping you after my call :)
[16:20] <frankban> hatch: ok
[16:21] <rick_h_> gary_poster: can you invite me or link me to the meeting please? 
[16:24] <hatch> gary_poster do you know PostreSQL? Linkedin wants to know...lol
[16:24] <gary_poster> hatch: but of course! ;-)
[16:26] <hatch> annnnd signing out to log back into linked in in another year
[16:27] <frankban> hazmat: working on the feedback branch for the deployer, I should be able to propose it tomorrow morning
[16:32] <hazmat> frankban, cool, thanks
[16:32] <hazmat> hatch, pypi == npm
[16:32] <hazmat> registry
[16:32] <frankban> mp
[16:33] <hatch> not sure which website is worse pypi or npm though
[16:33] <hazmat> not to be confused with pypy
[16:33] <hazmat> or with pie pi 
[16:34] <hazmat> the later of which is yummy and mind expanding :-) http://upload.wikimedia.org/wikipedia/commons/d/d4/Pi_pie2.jpg
[16:38] <Makyo> <Obligatory Tau video> http://www.youtube.com/watch?v=jG7vhMMXagQ
[17:18] <hatch> frankban still around?
[17:18] <hatch> I have no idea when your EOD is :)
[17:19] <hatch> rick_h_ are you available to guide me through this testing business?
[17:19] <hatch> python testing that is
[17:19] <rick_h_> hatch: on a call but can in a bit
[17:19] <hatch> ok cool np, ping when ready
[17:19] <rick_h_> might trade some help
[17:20] <hatch> right now my help is selling at a 2:1 help unit ratio
[17:20] <hatch> market conditions...
[17:20] <hatch> :P
[17:22] <frankban> hatch: I am here, EOD in 40 mins
[17:22] <hatch> oh ok cool, do you have time to guide me through the testing now?
[17:22] <frankban> hatch: sure
[17:23] <hatch> https://plus.google.com/hangouts/_/7ecpjd60csb16idpl8krnvb4es?authuser=1&hl=en
[17:25] <hatch> ^ frankban 
[17:25] <frankban> hatch: joining
[17:43] <bac> frankban: i get the following while doing QA on my branch.  https://pastebin.canonical.com/103823/
[17:44] <frankban> bac: one minute, on call
[17:44] <bac> frankban: quickstart terminates with juju-quickstart: error: bad API server response: state watcher was stopped
[17:44] <bac> frankban: ok.  just curious if it looked familiar
[17:48] <rick_h_> bac: yes, that's supposed to be fixed in 0.17.1
[18:04] <frankban> yeah...
[18:12] <bac> jujugui: per frankban's message, anyone know if juju 0.17.1 is packaged anywhere or do i need to build by hand?
[18:12] <hatch> bac it's released already
[18:12] <gary_poster> yup
[18:12] <bac> i don't see it on trusty
[18:12] <hatch> hmm the email said it was available on trusty
[18:13] <rick_h_> bac: it's released today
[18:13] <hatch> at least I thought it did
[18:13] <hatch> juju-core 1.17.1 is available for trusty and backported to earlier
[18:13] <hatch> series in the following PPA:
[18:13] <hatch>   https://launchpad.net/~juju/+archive/devel
[18:13] <rick_h_> jujugui pita review, read the notes. Had to skip the notifier tests atm. It needs rework and adding as a new card. https://github.com/juju/juju-gui/pull/89
[18:13] <hatch> i'll take one
[18:14] <rick_h_> hatch: thanks
[18:14] <gary_poster> how many do you need rick_h_
[18:14] <rick_h_> gary_poster: 2 please. thought it's mostly mechanical so fine with just one
[18:14] <rick_h_> gary_poster: the main thing is the heads up on the notifier tests. 
[18:14] <gary_poster> rick_h_: ok, I'll leave it alone unless requested then :-)
[18:15] <bac> thanks hatch.  that ppa got disabled on upgrade to trusty and i failed to re-enable it
[18:16] <hatch> ahh
[18:25] <hatch> rick_h_ 44 files changed? lol
[18:25] <rick_h_> hatch: well, makeContainer is popular :)
[18:25] <bac> jujugui: i need to be afk for the rest of the day.  ttyl.
[18:25] <rick_h_> bac: c-ya
[18:26] <rick_h_> yay for the end of conference calls
[18:27] <hatch> rick_h_ you're gona hate me...
[18:28] <rick_h_> hatch: then stop
[18:28] <hatch> lol
[18:28] <rick_h_> hatch: I'm already very angry after chasing down the stupid notifier test bugs
[18:28] <rick_h_> :OP
[18:28] <rick_h_> :P
[18:29] <hatch> rick_h_ what's with the onboarding.js changes
[18:29] <rick_h_> hatch: it didn't clean up after itself
[18:29] <rick_h_> now it does
[18:29] <rick_h_> lots of tests are like this unfortunately. Creating objects that never die
[18:29] <hatch> well when it's container gets destroyed it would remove it's children
[18:29] <hatch> which is all you're doing there....no?
[18:30] <rick_h_> no, it's got events bound and the tests never call destory on the object
[18:30]  * rick_h_ pulls it back up
[18:31] <hatch> ohh nm empty removes the events too
[18:31] <rick_h_> hatch: oh sorry, so this is that the object doesn't have a destructor itself. see the test_onboarding file that goes with it
[18:31] <rick_h_> matching changes
[18:31]  * rick_h_ kicks self for missing this during review/helping getting onboarding landed. 
[18:34] <rick_h_> hatch: so what am I going to hate you for?
[18:35] <hatch> I am trying to figure out a way to avoid having to pass 'this' into makeContainer every time
[18:35] <rick_h_> hatch: good luck, it's stupid mocha scopes
[18:35] <rick_h_> hatch: everything has to be in the hook context to be visible unless I stick it on window. which I almost did...but that feels evil and wrong
[18:36] <hatch> that's irritating
[18:36] <rick_h_> and there's no way to globally rebind the makeContainer function from the juju test utils scope since each test has it's own Hook context
[18:36] <hatch> yeah I just noticed that
[18:36] <hatch> how fail is that :/
[18:36] <rick_h_> you'd have to loop throgh all the Suites, and down in there go through each Hook context of each, and they can nest and ...
[18:37] <rick_h_> I told you, I'm very cranky with Mocha, etc atm. This was a much bigger pita than it should be, but oh well. 
[18:37] <rick_h_> hatch: but trust me, I tried to make it not suck, if you find a better way I'll thank you for the insight and move alnog
[18:37] <hatch> lol
[18:37] <hatch> well their scoping is totally wako
[18:37] <rick_h_> yes...yes it is
[18:37] <hatch> it doesn't make any sense
[18:38] <rick_h_> sure it does, it's how the damn things works. It laods all the files, sticks all the tests in their own Hook contexts, and basically loops them
[18:38] <rick_h_> in a nested pita tree of SAuites
[18:38] <rick_h_> Suites
[18:38] <hatch> lol well ok it makes sense, it's just not very friendly 
[18:38] <rick_h_> but it makes it darn hard to monkey patch things 
[18:38] <rick_h_> or even trace/debug things
[18:39] <rick_h_> anyway, going to walk away and nuke some lunch. let me know if you have any ideas on improving. I'm definitely for it, but in the end I think that the api of needing to pass this isn't bad. I even catch/report an error that is hopefully clear 
[18:50] <rick_h_> hatch: the notifier stuff is noted in the pull request
[18:51] <hatch> yeah I replied again, guessing it didn't send another email for that :)
[18:51] <rick_h_> card added to fix it, but will be second card
[18:51] <rick_h_> ah, well email checks every so often so might not have it yet
[18:54] <hatch> rick_h_ what is the model of your laptop?
[18:54] <rick_h_> hatch: x240
[18:54] <rick_h_> rerr 230
[18:58] <hatch> cool
[18:58] <hatch> guy is just asking what people use for linux laptop hardware
[19:34] <rick_h_> Makyo: heads up, test branch landed so watch out for conflicts
[19:34] <Makyo> >:/
[19:34] <rick_h_> benji: ^ 
[19:34] <benji> thanks
[19:35] <rick_h_> russian roulette, touched 44 files and was one of them yours?! bwuhahaha
[19:36] <benji> rick_h_: I think I have the test setup right for those two failing tests, but... the event the tests fire doesn't exist anywhere else in the codebase
[19:36] <benji> rick_h_: oh!  it's a typo
[19:36] <rick_h_> benji: yay
[19:37] <benji> "inpsector"
[19:37] <rick_h_> doh
[19:37] <rick_h_> I kept mixing up the case last night
[19:37] <rick_h_> Takeover vs TakeOver
[19:37] <benji> tab completion
[19:37] <rick_h_> and such
[19:45] <rick_h_> nice, jcastro giving quickstart some <3 http://discourse.ubuntu.com/t/mangling-config-files-by-hand-pshawwww/1438
[19:45] <rick_h_> purdy screenshots
[19:45] <jcastro> I _love_ the "has errors" bit
[19:45] <jcastro> I totally didn't notice that the first time around
[19:47] <rick_h_> jcastro: yea, hopefully we can get it into main/universe https://launchpad.net/bugs/1273865 and make for an awesome getting started experience
[19:47] <rick_h_> I'd imagine it's gotta be cool for your on site classes
[19:47] <jcastro> oh hey, does the server team know about that bug?
[19:47] <rick_h_> jcastro: yea, we pinged james page on it and we're working on it
[19:48] <jcastro> they're handling juju but I think we should make clear that juju without quickstart will be kind of lame
[19:48] <jcastro> ok, nice!
[19:48] <jcastro> rick_h_, I showed it off at a class first actually
[20:13] <hatch> stupid power button
[20:28] <hatch> jujugui why is minor < 17 false when minor is 16 in python? 
[20:28] <hatch> does maths work in reverse in python? lol
[20:29] <rick_h_> hatch: code? maybe the types are off
[20:29] <rick_h_> is minor a string?
[20:29] <gary_poster> hatch
[20:29] <gary_poster> >>> "16" < 17
[20:29] <gary_poster> False
[20:29] <gary_poster> >>> 16 < 17
[20:29] <gary_poster> True
[20:29] <hatch> https://gist.github.com/hatched/8696341
[20:30] <rick_h_> hatch: right, a version might be 16a
[20:30] <rick_h_> so it's a string ootb
[20:30] <hazmat> strings to ints
[20:30] <gary_poster> one of imporvements in 3.3:
[20:30] <gary_poster> >>> "16" < 17
[20:30] <gary_poster> Traceback (most recent call last):
[20:30] <gary_poster>   File "<stdin>", line 1, in <module>
[20:30] <gary_poster> TypeError: unorderable types: str() < int()
[20:30] <gary_poster> yay
[20:30] <hatch> >>> "1" >= 1
[20:30] <hatch> True
[20:30] <hatch> I thought js was messed up lol
[20:31] <rick_h_> >>> ord("1")
[20:31] <rick_h_> 49
[20:31] <rick_h_> 49 > 1 :)
[20:32] <rick_h_> welcome to ascii or unicode as the python version you're using might be
[20:32] <hatch> 2.7.3
[20:32] <gary_poster> but yes, this is one of the warts that py 3 was made to fix
[20:32] <rick_h_> whoa, chrome update looks so much nicer yay!
[20:32] <hatch> ok so int(minor) should fix ?
[20:32] <hatch> sorry I mean
[20:33] <hatch> is using int() the 'proper' way
[20:34] <hazmat> yes
[20:34] <hatch> cool
[20:34] <hatch> and people rag on JS for having oddities haha
[20:34] <hazmat> error catching on conversion is also nice
[20:35] <rick_h_> hatch: yea, toss a test for a version with a character in it and make sure it's caught and handled ok. 
[20:35] <hatch> it should have thrown by this point so that won't be necessary 
[20:35] <rick_h_> hatch: heh, the issue is JS magically casts it for you using its own rules and that leads to wat videos
[20:35] <hatch> will do
[20:35] <hatch> hey THIS would have been a wat video too!
[20:35] <hatch> lol
[20:36] <hatch> well how resilient will I need to make this method? Is Juju switching form semver any time soon? haha
[20:44] <Makyo> gary_poster, retcon on the feature flag :( I forgot about the remove relation dialog modifications I made.
[20:44] <Makyo> Would be >15min
[20:45] <Makyo> We just have a pre-indicator now.
[20:48] <gary_poster> Makyo: ack, good 'nuff
[20:51]  * gary_poster has to go and work offline.  I will be on email.
[21:00] <hatch> I think the python linter is more picky than the js one
[21:04] <hatch> jujugui does anyone know if quickstart uses lbox to propose?
[21:04] <bac> hatch: yes.  you can tell by the .lbox files
[21:04] <benji> hatch: I believe it does.  If it has a .lbox file it almost certainly does
[21:06] <hatch> thanks, guess this vm is missing lbox and the gophers ppa heh
[21:07] <benji> may apt-get have mercy on your soul
[21:07] <Makyo> Shoot.
[21:07] <Makyo> This also affects bundle visualizations.
[21:07] <hatch> umm this vm doesn't have a GUI
[21:07] <hatch> lol
[21:08] <hatch> how do I auth with launchpad
[21:08] <Makyo> Uh, crap, I forgot.
[21:08] <hatch> Makyo didn't you run into this issue some time?
[21:08] <rick_h_> install links2 and update-alternatives?
[21:08] <hatch> the lbox w/o a gui?
[21:10] <hatch> rick_h_ that really the only way?
[21:11] <bac> hatch: doesn't it spit out a LP url for lplib auth?  if so, you could visit it in another browser. no?
[21:11] <hatch> bac it doesn't
[21:12] <bac> hmm
[21:12] <hatch> at least here it's not
[21:12] <bac> hatch: you can always just do a LP MP
[21:12] <bac> old skool
[21:12] <hatch> that will skip reitveld though no?
[21:12] <bac> yes
[21:12] <hatch> yeah I think i'd much prefer someone to comment on my first mostly-solo python branch hah
[21:13] <bac> hatch: still can do reviews on a launchpad merge proposal
[21:13] <bac> in fact, we insist
[21:13] <hatch> ohh I didn't know that
[21:13] <hatch> in that case...
[21:14] <bac> push your branch, go to it in the browser of your choice, select something that smells like "propose for merging"
[21:14] <hatch> yup typing it out now
[21:15] <hatch> jujugui lf quickstart review and qa https://code.launchpad.net/~hatch/juju-quickstart/no-more-sudo/+merge/203846 
[21:25] <hatch> http://shop.oreilly.com/product/0636920028154.do wow 1600 pages for learn python book hah
[21:46] <Makyo> Oh hush.
[21:47] <Makyo> You're nearing 'evangelism', but you work for a company that lists python as a core technology :P
[21:48] <Makyo> (Though juju in Node would certainly be interesting :D )
[21:49] <hatch> haha
[21:49] <hatch> everyone knows node is faster than python anyways 
[21:49]  * hatch ducks and runs
[21:50] <hatch> seriously though, 1600 pages is a lot for any book haha
[22:06] <huwshimi> Morning
[22:06] <hatch> hey huwshimi
[22:09] <hatch> Makyo definitely like the emoticon in your PR
[22:09] <hatch> are those fish?
[22:10] <Makyo> Ahahaha!
[22:10] <Makyo> They're pennants.
[22:10] <Makyo> Our feature flags are now actual flags.
[22:10] <Makyo> Boo, build failed.  Investigating.
[22:11] <hatch> lol
[22:11] <Makyo> DAMNIT.  I ran make prep >:/
[22:12] <Makyo> one commit ago.
[22:12] <hatch> hmm I am running juju 1.17.1 and it's requiring sudo for local
[22:17] <huwshimi> hatch: This is the correct way to check if the viewport has changed right? Y.on('windowresize', function(e) {...
[22:17] <hatch> just resize
[22:17] <hatch> Y.on('resize', function(e) { ...
[22:19] <hatch> huwshimi although there is a windowresize which normalizes the resize event across browsers
[22:19] <hatch> event-resize I think
[22:19] <huwshimi> hatch: Hmm.... neither seem to be firing
[22:19] <hatch> try Y.config.doc.on('resize' ..
[22:19] <hatch> or Y.config.win
[22:21] <hatch> sec looking
[22:22] <hatch> huwshimi you can probably just get away with Y.one('window').on('resize', ...
[22:22] <huwshimi> hatch: config.doc and config.win don't exist
[22:22] <hatch> Y.cfg? maybe
[22:22] <hatch> crap now I gota go look
[22:23] <hatch> yeah it's Y.config.doc 
[22:23] <hatch> and Y.config.wion
[22:23] <hatch> win*
[22:23] <huwshimi> Y.one('window').on('resize' works
[22:23] <hatch> so there really is nothing in Y.config.doc?
[22:23] <hatch> in jujucharms.com there is
[22:24] <hatch> but it's fine the Y.one('window') is ok, Y.one(Y.config.win) would be better though :)
[22:24] <hatch> if it actually exists
[22:25] <hatch> Y.config.win/doc are supposed to be referenced to the 'actual' cached doc and windowreference 
[22:25] <huwshimi> Ah, I mis-read the error: Uncaught TypeError: Object #<HTMLDocument> has no method 'on'
[22:25] <hatch> ohh ok
[22:25] <hatch> so they changed that
[22:25] <hatch> yeah Y.one('Y.config.win).on('resize', ...
[22:26] <huwshimi> yeah
[22:26] <hatch> it used to be a Y.Node, they must have changed that for perf
[22:26] <huwshimi> Ah ok
[22:27] <huwshimi> hatch: Strangely though that seems to fire twice on every resize.
[22:28] <hatch> put a debugger before you attach your event, it's likely that you are attaching it twice
[22:28] <hatch> resize also fires periodically as the user is resizing so you 'may' also be seeing that
[22:30] <huwshimi> hatch: It looks like the attachment only happens once, but the event fires twice
[22:30] <hatch> hmm
[22:31] <hatch> and the event objects passed into the callbacks are the same?
[22:32] <huwshimi> hatch: I wonder if we only want to show this message once in a session?
[22:33] <huwshimi> hatch: zooming in the browser fires a viewport resize event so it'll pop up a lot of messages while you're zooming
[22:35] <hatch> ok load in the event-resize module (add it to the requires) and then listen on windowresize
[22:35] <hatch> that debounces the resize events
[22:36] <huwshimi> hatch: What does that do?
[22:36] <hatch> sorry debouncing means that every time something is fired it resets a time
[22:36] <hatch> r
[22:36] <hatch> once that timer runs out it fires the event
[22:37] <huwshimi> hatch: Do you happen to know what that time is?
[22:37] <huwshimi> Actually we might not want a timer here
[22:38] <hatch> 100ms http://yuilibrary.com/yui/docs/api/files/event_js_resize-window.js.html#l27
[22:38] <huwshimi> For example if you're zooming back in after a few minutes you probably don't want to see the message again
[22:38] <hatch> ohh right, I don't actually know what you're working on :)
[22:39] <huwshimi> :)