/srv/irclogs.ubuntu.com/2014/06/09/#juju-gui.txt

rogpeppemornin' all07:34
frankbanmorning rogpeppe: how are you doing? when you have time, could you please take a look at https://github.com/juju/juju/pull/48 ?09:08
frankbanrogpeppe1: hi, when you have time, could you please take a look at https://github.com/juju/juju/pull/48 ?10:18
rogpeppe1frankban: looking10:18
frankbanthanks10:18
rogpeppe1frankban: reviewed10:30
frankbanrogpeppe1: thanks10:31
frankbanrogpeppe1: so, the rule is to not rebase changes after the review, right?10:32
rogpeppe1frankban: i think so10:33
frankbanrogpeppe1: ok10:33
rogpeppe1frankban: i don't know what the rules are any more :-)10:33
frankbanrogpeppe1: yeah, I am also a bit confused10:33
frankbanrogpeppe1: I'll take a look at removing testing dependencies from store10:52
rogpeppe1frankban: cool10:52
frankbanrogpeppe1: didn't you have a branch for moving testing/charms.go to charm/testing?11:16
rogpeppe1frankban: yeah11:17
frankbanrogpeppe1: is it ready to be proposed?11:18
rogpeppe1frankban: it's already been LGTM'd11:18
rogpeppe1frankban: i thought it had landed11:19
frankbanrogpeppe1: it does not seem so11:19
rogpeppe1frankban: ah, tests failed11:19
frankbanrogpeppe1: could you please get that landed? store depends on testing.Charm right now, I'd like to change that11:19
rogpeppe1frankban: yeah, just looking now11:20
rogpeppe1frankban: one of those sporadic test failures. i'll re-merge and re-propose.11:20
frankbancool thanks11:21
rogpeppe1ok, trying to land again11:23
rick_h_morning11:25
frankbanmorning rick_h_11:49
frankbanrogpeppe1: it seems we have to move testing/mgo.go to github/juju/testing. The only internal dep is cert.ParseCert. we can either 1) move cert to its own repo (it does not depend on anything internal) or 2) dupe ParseCert in github.com/juju/testing11:51
rogpeppe1frankban: hmm, is that for the mongo that the store tests need?11:52
frankbanrogpeppe1: yes11:52
frankbanrogpeppe1: store_test.go11:53
frankbanrogpeppe1: perhaps cert can be moved into utils?11:53
frankbanrogpeppe1: it's just a single file and a test file11:53
rogpeppe1frankban: i'm a bit dubious about that11:54
rogpeppe1frankban: it's really very juju-specific11:54
frankbanrogpeppe1: so github.com/juju/cert?11:54
frankban(option 1)11:54
rogpeppe1frankban: i'm having to think quite hard abut whether mgo.go should go into github.com/juju/testing11:55
rogpeppe1frankban: there's quite a lot of logic in there that's there mostly because of the way we do things in juju11:55
frankbanrogpeppe1: uhm, is that logic still valid for the future store?11:59
rogpeppe1frankban: and at the moment, I can't quite see how it's working, given that store calls mgo.Dial directly. Ah, I see, it calls MgoTestPackagSsl with ssl=false11:59
rogpeppe1frankban: so the charm store doesn't actually use any of the cert stuff11:59
rogpeppe1frankban: my main concern is that the way mongo is configured in MgoSuite must be an exact mirror of how the state server sets up mongo12:00
rogpeppe1frankban: so keeping the two in sync, in the same repo, seems like a Good Thing12:01
* rogpeppe1 tries to think of a way of factoring out the juju-nonspecific pieces12:01
* frankban bbiab12:06
frankbanrogpeppe1: re juju logic: do you mean the ssl stuff? I am thinking about making MgoTestPackageSsl accept a pem string instead of a ssl bool. That way the ssl logic can still be placed in juju, while the suite itself can be moved12:51
frankbanrogpeppe1: istm that, even if we want to decouple MgoSuite from the juju certs, it is still interesting to have a generic MgoSuite that handles tls. in that case, even if, e.g. we change MgoTestPackage so that it receives the certs, we still need the cert stuff to be in an external repo.13:11
frankbanrogpeppe1: and I am not sure I fully understand why cert stuff should be considered so specific to core13:16
=== rogpeppe1 is now known as rogpeppe
rogpeppefrankban: the details of the generated certificates are very juju specific13:16
frankbanrogpeppe: ^^^13:16
rogpeppefrankban: for example, look at the CommonName in cert.NewCA13:17
rogpeppefrankban: and the Organisation, etc13:17
frankbanrogpeppe: IC, you pass the env name, etc...13:17
rogpeppefrankban: if we change MgoTestPackage so that it receives the certs, we don't necessarily need the cert stuff to be in an external repo13:18
rogpeppefrankban: because you'll generally only want that stuff if you're part of juju13:18
frankbanrogpeppe: that's true if we duplicate the code in cert.ParseCert13:18
rogpeppefrankban: ParseCert is a fairly trivial wrapper function13:18
rogpeppefrankban: I don't mind duplicating that code if we need to13:19
rogpeppefrankban: alternatively we might be able to make it take *x509.Certificate and *rsa.PrivateKey as args13:19
rogpeppefrankban: which would probably be just as easy to use13:21
frankbanrogpeppe: ok, that seems to work. So we need to decouple testing/mgo.go from the stuff in testing/cert.go, right? 13:23
rogpeppefrankban: yeah13:23
frankbanrogpeppe: and MgoTestPackage receives *x509.Certificate and *rsa.PrivateKey: if they are both nil tls is disabled13:25
rogpeppefrankban: if the cert is nil, tls is disabled, i think13:26
rogpeppefrankban: if there's a cert and no private key, i think we can panic13:26
frankbanrogpeppe: coo, and MgoTestPackageSsl is just a juju shortcut which takes nothing and uses stuff defined in testing/cert.go, right?13:27
rogpeppefrankban: sgtm13:27
bacfrankban: update: i got the python-websocket-client backported to precise and saucy in juju-quickstart-beta ppa.  doing the final QA on precise.  will get it moved to juju-stable ppa soon.  then do the release of 1.3.3.13:59
frankbanbac: sounds good, was it difficult to change the package name?14:00
bacfrankban: it required i do everything by hand.  couldn't use the backportpackage tools14:01
bacso, none of it hard, just requires figuring out the six incantations.14:01
frankbanbac: :-/ thanks a lot for that, do you have notes about the incantation process?14:03
bacfrankban: i do.  will clean them up and stick somewhere shortly14:03
frankbanbac: great thanks14:04
hatchmorning all14:10
hatchI have no internet....yay! 14:11
rick_h_wheee14:12
hatchrick_h_ want to take a look at the new cache stuff while I write the tests https://github.com/juju/juju-gui/pull/37214:17
rick_h_hatch: looking14:20
rick_h_hatch: feedback done14:35
hatchcool looking14:35
hatchI'm also calling around trying to get my internet fixed 14:35
hatchugh, apparently our area is subbed out to a contracting company to get fixed14:35
rick_h_some sort of community internet?14:36
hatchI think it's that the telco doesn't have enough staff14:41
hatchso they have to sub out jobs sometimes14:42
hatchbrb hopping on the phone again14:42
makyo_jujugui call in 1014:50
hatchrick_h_ replies made14:59
rick_h_jujugui call now rogpeppe jcsackett 15:01
rick_h_antdillon: ^15:01
jcsackettrick_h_: voice plugin crashing, be there soon.15:02
rick_h_jcsackett: rgr15:02
bacmakyo_: don't say PTO</rant>15:10
=== makyo_ is now known as Makyo
Makyo??15:10
bacPTO is a movement to steal your sick time and roll it in with vacation.15:11
bacrick_h_: stop saying PTO15:11
bac:)15:11
bacHR has agreed to change the wording15:11
hatchwhat's wrong with PTO?15:14
hatchtoo union for ya? lol15:14
rick_h_bac: oh, sorry. It's my old job everything was PTO15:14
hatchEDO's.....now that's what we need15:15
hatchEDO's15:15
hatchlol15:15
bacPTO means you can never really plan, as you must keep an allotment for the off chance you get sick.15:15
rick_h_bac: yea, always hated that, but also hated having XX sick days never not using them15:15
bacanyway, the PTO language on the HR site is inherited from salesforce and not a new company policy.15:15
bacrick_h_: but our current sick policy takes into account your previous use.  so if you never use it, then when you do have the need you are given allowance.15:17
hatchI actually had no idea there was such a issue with the naming15:17
Makyorick_h_, requests in15:17
bachatch: you wouldn't.  us of a specific silliness15:17
hatchbac I mean that I didn't know PTO had a certain definition where it specifically lumped things together like that15:18
rick_h_hatch: replied15:18
rick_h_hatch: overall seems like a good path. 15:19
hatchI STILL can't get a hold of anyone to come fix the internet....ugh15:19
hatchrick_h_ cool thx15:19
bacrick_h_: when i last looked at IPv6 interoperability testing the only tools were a mess of Perl written at a Japanese university.  it was terribly painful.15:21
bachopefully things are better now15:21
rogpeppefrankban: sorry, just saw my branch failed to land again (clashes with other branches which had been pushed in the meantime)15:27
rogpeppefrankban: am trying again15:27
frankbanrogpeppe: thanks, no worries15:29
hatchhmm I wish I could put the hotspot on my network....15:31
rick_h_hatch: <3 http://www.amazon.com/gp/product/B007GFYHPG/ref=wms_ohs_product?ie=UTF8&psc=115:31
rogpeppefrankban: oh, darn it, i think i forgot to commit the relevant changes before merging15:32
rick_h_hatch: I've used that to share out my mifi network, and think it can run the wifi network through the wired end15:32
hatchrick_h_ so this thing youd plug in place of the modem and connect it to your switch?15:32
rick_h_hatch: well the mifi would do wireless and you'd plug the wire end into your current router outside15:32
rick_h_so your existing router would this this thing is the internet15:32
rick_h_would think that is15:32
hatchahh yeah that's definitely what I need15:33
rick_h_I *think* it can work that way. Normally it's for taking a wired connection and sharing it out over wifi (hotel with wired but no wifi signal) or resharing/extending an existing wifi network (5 devices on my mifi my $#@$#@, I'll connect as many as I want)15:33
hatchlol15:34
hatchwhy does your mifi have a limit?15:34
rick_h_they do in the US here. Most do 5 or 10 devices15:35
rick_h_I share with my coffee house coders group so I use that to get aroudn the limits15:35
hatchI'm wondering what the thought is behind that15:36
hatch# of devices does not increase the bandwidth or anything heh15:36
rogpeppehatch: before i get totally lost in the git log help page again, do you know how to get git log to show the files that have changed in each commit?15:37
hatchgit log --name-only or something15:37
rick_h_rogpeppe: I use lf = log --stat15:37
rick_h_so git lf15:37
hatchmaybe git log --stat would be better15:38
rick_h_will give me file/diff info15:38
hatchheh you and your aliases :)15:38
rick_h_ld = log -p 15:38
lazyPowerrick_h_: do we know if juju-actions are going to be exposed in juju-gui15:38
rick_h_is good as well, for the diff15:38
rogpeppehatch: ah, that looks good thanks. line 1139 out of 1850 of the help page.15:39
rick_h_lazyPower: the hope is to. We've got a guy that's been waiting on stuff to implement it. He's not contract, so not sure how far he'll get 15:39
rogpeppehatch: not surprising i hadn't found it yet15:39
lazyPowerok ty15:39
hatchrogpeppe unlike bzr there is a HUGE amount of information online for "how do I do x" so you don't need to read the man pages15:39
rogpeppehatch: yeah, i guess. rtfm is a bad habit i need to get out of :-)15:39
hatchhaha - well, it's a good habit, but with big communities usually come faster ways to do things :D15:40
rogpeppehatch: once upon a time, man pages were simple :-)15:40
hatchrogpeppe haha I suppose thought git would have been 100 different commands back then too15:41
lazyPowerrick_h_: if that work starts can you ping me? Our big data efforts would benefit from this and asanjar is practically offering me money to give him information on it.15:41
rick_h_lazyPower: so I sent an email today to him about looking over the documentation that bodie sent out in irc 15:41
rogpeppehatch: it *is* 100 different commands :-)15:42
lazyPowerthats excellent.w e want to be early adopters :)15:42
rick_h_lazyPower: and I've asked him to start looking at the front end and meet in the middle with the back end as the api finalized15:42
hatchrogpeppe lol!!15:42
rick_h_lazyPower: so I guess it's "kind of" in progress15:42
lazyPowerexcellent. as soon as we have a branch / etc to look at I'm game to get my hands dirty15:42
rogpeppehatch: actually, 146 different commands...15:42
rick_h_lazyPower: definitely. Because he's not paid/contractor I'm not sure how it'll go, he has another job, but we're trying to enable him to be involved and move things forward from the GUI end. 15:43
rick_h_lazyPower: but we'll definitely be reaching out to you guys as things firm up because actions need to go through charm proof, we'll need to get those ingested/part of the charmworld api, etc15:43
lazyPowermarcoceppi: ^15:44
lazyPowerpinging you preemptively so you're aware of whats coming at us15:44
rick_h_lazyPower: marcoceppi make sure you see https://github.com/johnweldon/juju-docs/commit/cb7a4709e9a5fed5c885cd3e5e2ecc1cd34da181#commitcomment-6594689 and respond15:44
marcoceppilazyPower: cool, I told the core guys to let me know when it lands in trunk too so we can start playing with it15:45
* rick_h_ goes to get lunchables15:46
hatchrick_h_ I replied to one of your comments about the bundle/charm path id url stuffs15:54
rick_h_hatch: looking15:57
rick_h_hatch: why can we not use the permanent/url? 15:58
hatchrick_h_ the data I have is in the first paragraph the perm url requires that I parse the username out of the entityId to reconstruct it15:59
hatchso it's the least amount of work to do what I did16:00
hatchwe could maybe create a entityId > charmUrl method16:00
rick_h_hatch: call? I'm having a slow monday and not following16:00
hatchsure one sec just grabbing my coffee16:00
hatchbe in standup16:00
rick_h_rgr16:00
bachey frankban, my qa of 1.3.3 is good.  i'm going to copy the packages over to juju/stable now and do the pypi release after i eat lunch.  any objections?16:09
rick_h_woot!16:09
frankbanbac: please go ahead and thanks!16:09
bacnp16:10
frankbanrogpeppe: review done16:28
rogpeppefrankban: thanks!16:28
rick_h_rogpeppe: https://plus.google.com/hangouts/_/canonical.com/jaas-work?authuser=116:36
Makyorick_h_, hatch I figured out where the call stack is on the profiler.  Looks like it's all in YUI land on a few calls from the token widget (setHTML and _setBox, both of which parse the string they're given as HTML). Not sure of next steps - any ideas?16:54
hatchMakyo ok that's where I got too as well, glad we're in the same place :)16:55
hatchnow as far as ideas.....that's also as far as I got16:55
* hatch thinks16:55
MakyoBest I could think of is to deal with it only as strings until the last step and only parse it once, but I think that goes against the Widget Way™16:55
hatchMakyo yeah....but why didn't we have this problem before with the old code?16:56
Makyohatch, we did, but it was hidden by the long load times.16:56
hatchbut we don't on jujucharms.com16:56
MakyoChecked on an old checkout.16:56
hatchon jujucharms.com going from a search back to curated is instant16:57
MakyoI get exactly the same profile on jujucharms.com16:58
hatchreally....interesting16:59
hatchhmm ok then17:00
hatchthat settles that debate haha17:00
hatchMakyo what if....after each 'section' is rendered we append it to the dom17:00
hatchinstead of all at once17:00
hatchso add the append() into the loop isntead of out of it17:00
hatchmaybe we can start showing 'something' sooner17:00
MakyoHmm, let me play around with that.17:00
hatchthis of course being an alternative to re-writing it17:02
hatchI mean....17:02
hatch:)17:02
* Makyo gets out the squirt bottle.17:03
MakyoWorks on the dogs...17:03
hatchhaha17:03
* rick_h_ runs errand biab17:28
hatchalllright, I finally talked to someone who MAY be able to fix my internet17:28
hatchlol17:28
hatchso much fail today17:29
hatchyay! It's getting fixed this afternoon17:33
* rogpeppe has reached eod17:34
rogpeppefrankban: that branch finally landed, BTW17:34
frankbanrogpeppe: \o/ looking at your cp branch17:34
hatchI'm going to run grab a bite before the tech gets here to fix this net17:47
frankbanrogpeppe: done17:50
hatch__oh great the internet started working again before the tech got here....18:51
rick_h_lol18:51
rick_h_now you've done it18:51
hatch__yeah now this thing is never getting fixedx18:52
=== hatch__ is now known as hatch
Makyohatch, That change doubled the FPS (read: halved the amount of time blocking on render) from ~7fps to ~15fps.18:53
MakyoStill takes the same amount of time, ofc.18:53
MakyoWhich would help with the spinner.18:53
hatchMakyo ok so that's likely why we didn't notice it before18:53
hatchalright then18:54
rick_h_yea, with the spinner and less time18:54
rick_h_blocked up taht is18:54
rick_h_I did notice the spinner hang some, but not enough that it felt broken18:54
hatchMakyo with a spinner would it now be acceptable? 18:54
MakyoI think so18:54
MakyoIt would feel better, at least.18:54
rick_h_yay18:54
hatchand we can put off the conversion to a view for some time later18:55
rick_h_+118:55
Makyo+118:55
rick_h_thank you Makyo for chasing that down and testing it out18:56
hatchit's interesting just how much slower widgets truly are18:57
MakyoI wonder if the views would have much in the way of improvement, since the slowness shows up in some of the base node manip stuff, like setHTML.18:58
rick_h_yea, I guess I wonder how much is parents vs just widgets/etc18:58
MakyoBut yeah, I'm still learning the whole widget thing.18:58
hatchwell we dump considerably more dom nodes into tho dom with the inspector unit list on a big environment19:00
hatchthat uses append()19:00
hatchso I'm guessing that it has to do with some html parsing or something that's being done with the widgets19:00
hatchbecause there is some progressive enhancement stuff tha'ts built in19:00
hatchmaybe we are hitting that19:00
hatchthis is totally speculation though19:00
MakyoOkay, yeah, that makes sense. I think it's come to bite us more recently because of the addition of bundles, too, which have more elements in the dom (some of which are SVGs, which chrome is parsing) 19:01
hatchahhh19:02
hatchdarn svg's19:02
hatchI noticed that we request the same svg a lot19:02
hatcheven though it has the same request path19:02
MakyoThat is how img elements, work, yes :)19:03
MakyoDitto svg image elements.19:03
hatch__I never thought i'd be happy that the internet broke again....lol19:04
=== hatch__ is now known as hatch
bachey rick_h_, got a sec for a chat?19:27
rick_h_bac: 2min?19:28
bacsure19:28
rick_h_bac: k, standup hangout?19:29
back19:29
hatchtech is here, bbiab19:39
rick_h_good luck19:39
hatchheh it's not looking good19:48
hatchrick_h_ btw doing the id bits in the bundle model was pretty small loc's19:48
hatchso i'll leave it in19:48
rick_h_hatch: woot19:48
rick_h_had hoped so19:48
hatchrick_h_ so regarding the search caching.....I don't think it's going to be an issue because modellists don't add multiple models with the same id's20:14
hatchso the charm models won't grow exponentially, only linearly 20:14
rick_h_hatch: ok, but QA it with a bundle: and charm: and "" search20:15
hatchright now when I do a bundle: search I only get a single bundle20:15
rick_h_if it qa's ok and not deadly with the large basis then cool20:15
hatchis charmworld broken that it only returns 1?20:15
rick_h_hmm, maybe not20:15
hatchi'll try jujucharms20:16
hatchyeah only one....20:16
hatchodd...I was sure that returned a massive json 20:16
rick_h_ok, then yea oh well20:16
rick_h_we fixed a lot of that20:16
hatchbut broke bundle: ? :)20:16
rick_h_heh, well not sure that was supposed to work20:17
rick_h_bundle:apache should20:17
hatchchecking20:17
rick_h_hmm, yea bundle: was supposed to work for all bundles20:17
rick_h_how about just bundle20:17
rick_h_w/o the :20:17
hatchbundle:apache doesn't20:17
hatchtrying without the : for bundle20:17
hatchyeah it's hanging20:17
hatchthat must be it20:17
rick_h_heh there you go20:17
hatchhmm it only returned 52 bundles20:18
hatchbut took fo eva!20:18
rick_h_hah, well bundles take a while to build since htey include charm info20:18
hatchbut ok cool I'll check that out with the caching20:18
hatchohhhh right 20:18
hatchlooks good even with a big data set20:21
rick_h_woot20:21
hatchmemory footprint of course goes up according to the size of the huge dataset20:21
hatchso we should still see what we can do about reducing the data sent at some point20:21
rick_h_yep yep20:21
rick_h_but that's on the api end side to do 20:21
hatchright now our box for the gui should say "requires a minimum of 200MB of ram" ;)20:22
rick_h_:P20:22
Makyohatch, mind taking a look?  Trying to figure out how to test. https://github.com/juju/juju-gui/pull/37320:34
hatchsure 20:34
hatchheh hmm20:34
hatchMakyo maybe adding some comments around the render() call for future devs and for the tests make sure it's called with the proper string in the tests using a stub20:35
MakyoHmm, alright.20:36
hatchI'm also not sure container is used any longer20:36
MakyoThis is gonna be finnicky.20:36
MakyocharmList = container.one...20:36
hatchoh duh20:36
hatchheh20:36
MakyoIt's basically the same exact functionality, just in a slightly different order.20:36
rick_h_Makyo: yea, I think you can do that with a big QA and comments around that20:37
hatchwell render is being called with a different string20:37
hatcher elements20:37
hatchI know it's pretty basic but that's all I can see here without doing any selenium stuff20:38
rick_h_hatch: yea, true20:38
rick_h_but even selenium stuff is hard to catch20:38
hatchoh yeah for sure - I've been doing some research on performance testing in CI20:38
hatchwould be pretty cool if we could somehow get a more stable CI machine20:39
hatchstable being performance wise20:40
hatchuh oh internet is looking like it's going to be a bit20:53
hatchthe lines going into the house are bad20:55
hatchrick_h_ did you see someone picked up the a Review Board charm21:31
rick_h_hatch: yea, saw that. I can't seem to find a good way to work reviewboard into the workflow though to be honest21:36
rick_h_everything I find really doesn't even try to work with the pull request system in github. A lot of it is pre-pull request review style stuff21:36
rick_h_all diff based, which doesn't help our lander/etc systems21:36
hatchthat was my reviewing as well - I was hoping to get some time more time this week to dig in and see if we could write a hook or something21:37
hatchs/hook/plugin21:37
hatchalthough tbh I think that GH is working pretty well for us21:37
hatchit has some warts, but what doesn't heh21:37
rick_h_yea, but it definitely has some scale issues imo. The side by side review plugin is :( compared to a real side by side tool21:38
hatchright - but since I've been doing the inline stuff I miss side-by-side less and less21:38
hatchmaybe it's just the type of work I've been doing21:38
rick_h_yea, maybe it won't work out, but had high hopes for it21:39
hatchI think with GH not showing the whitespace changes like reitveld did, side-by-side isn't as important because diffs are typically less than 20 lines21:40
hatchper block21:40
hatchmore than enough that can fit on the screen21:40
hatchyes, side-by-side IS better, but inline isn't horrible imho21:40
rick_h_yea, I mean there's the email flood, the lack of diff's in rebased stuff, etc. 21:41
rick_h_more to it I guess, but yea, if it can't fit into the workflow in a sane way I don't want to write another app to do it21:41
hatchyeah the email is crazy but if you use the email threads or whatever you can easily delete the whole thread21:42
hatchthe lack of diffs in rebased kind-of sucks....but I can't think of once where I actually needed it since we switched over21:42
rick_h_"if you use" :P21:42
hatchwell use a real client :P21:42
rick_h_you're getting very much into your use vs the team as a whole tbh21:42
hatchwait, even mutt does threads21:43
rick_h_yes it does 21:43
rick_h_just mean that you're projecting "it's not an issue if you do XXX" is not the best argument for stuff like this21:44
rick_h_as  you fall deep into assumptions21:44
hatchoh right - well got to adapt to the tools sometimes unfortunately 21:45
hatchgood thing we all got into web dev, nothing ever changes here :P21:45
rick_h_:)21:47
hatchinstalling that tree file system plugin for GH has saved so much time21:48
hatchthat sort of stuff should be installed by default hah21:48
hatchwell looks like I might be going to pick up one of those things you mentioned rick_h_  because if they need to run a new line it might be a bit before I get internet again :/21:59
hatchsee everyone tomorrow 22:56
huwshimiMorning23:03

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!