/srv/irclogs.ubuntu.com/2014/11/19/#juju-gui.txt

hatchhuwshimi: i believe same 00:20
rick_h_huwshimi: yes, comingsoon is just raw gui which demo is behind apache2 and on prodstack00:34
rick_h_huwshimi: one is deployed via the charm and one is via just make devel basically00:34
=== kadams54-away is now known as kadams54
huwshimirick_h_, hatch: can either of you reproduce this on anything but chromium?01:53
=== kadams54 is now known as kadams54-away
=== kadams54-away is now known as kadams54
rick_h_huwshimi: if it's not something you can fix up in a day then backlog it. 02:12
rick_h_huwshimi: I've not tried to repro to be fair and when it was filed and you had hatch had thuoght about it thought it'd be a quick fix. 02:12
rick_h_huwshimi: but if it's not something that's common/an issue then I'd suggest we move onto bigger things02:12
=== kadams54 is now known as kadams54-away
huwshimirick_h_: Well now I've dug into it a bit more I've found that I can only reproduce it in chromium and it doesn't appear to be any of the obvious things that I thought it was, but it's a bit hard to tell some of them when I can't make changes to production :)02:25
rick_h_huwshimi: ok02:29
huwshimirick_h_: And that's chromium, not even chrome02:29
rick_h_huwshimi: rgr02:31
huwshimirick_h_: What I don't understand is why we only hit it in production, I suspect it might be how we serve gui (Apache2), but I'm not sure which bit of config is causing the issue02:33
rick_h_huwshimi: ok, we can come back and revisit it when we figure things out better. Still trying to get the dippy mojo spec to run02:34
huwshimi:(02:35
=== kadams54-away is now known as kadams54
=== kadams54 is now known as kadams54-away
=== kadams54 is now known as kadams54-away
hatchrick_h_: hey you make it in yet?15:28
rick_h_hatch: yes, how goes?15:28
hatchgood good - I'm thinking that I'll continue on the apiv4 stuff by building branches on branches 15:28
hatchthat way they are still easy to review15:28
hatchbut I won't be blocked by the release15:28
rick_h_hatch: ok15:29
hatch(they will just need to land in order)15:29
hatchI can push them up to PR as well if you like15:29
rick_h_hatch: let's do this. Let's get one up for review and hash on it. While that goes on jump to another bug/issue? 15:29
rick_h_hatch: that export 'null' thing came up in a bug yesterday 15:29
rick_h_hatch: and something we should look into15:29
hatchahh ok sounds good15:30
rick_h_kadams54: what are you up to? Did you grab a new card?15:30
hatchi'm just running the tests locally I'll have it pushed shortly15:30
rick_h_kadams54: so we don't overlap work15:30
rick_h_hatch: cool 15:30
kadams54rick_h_: I'm working on getting juju alpha, setting up a new user in the env, etc.15:30
kadams54I guess I should move that card over, but was unsure since it also had Makyo on it.15:31
rick_h_kadams54: ah ok. I figured we'd start those next week and do some maint. clean out the rest of this week if that's ok15:31
rick_h_the ecs entries, the changing a service name (/me pulls Makyo's head from it), the export/'null' issue would all be good high priority stuff to get updated15:32
kadams54Got it15:35
hatchrick_h_: ok it's up as a PR15:36
kadams54I also have some work from yesterday that I just need to get in a card/PR and land - restoring the CSS animations now that service/relation visibility is CSS.15:36
hatchswitching to the null issue15:36
rick_h_kadams54: ah ok cool15:36
rick_h_kadams54: yea thanks, just catching up so reading the ouija board...I mean kanban board15:37
kadams54lol15:37
hatchhaha sometimes it sure acts like it moves on its own15:38
kadams54I was talking with a family member yesterday who's a paralegal with a large company.15:38
kadams54He was talking about juggling 30-40 smaller tasks + 3-4 large projects and how the large projects tend to languish because he likes the sense of accomplishment of working on things that can actually get done.15:38
kadams54And I was thinking "yeah, we (programmers) actually figured out a way to systematize that approach and use it to break down the larger projects"15:39
rick_h_<315:39
rick_h_though we all know when that project lane gets into our heads as well still15:40
rick_h_but a lot better15:40
hatchthere needs to be a 'feel better' mode in the board lol15:41
hatchwhich makes it look like there are less cards15:41
rick_h_hatch: heh, well I was using the filter the other day15:42
rick_h_hatch: and filtering by the type tag, so only gui, or only storefront15:42
rick_h_hatch: so turn that onto your project once in a while and the boards a lot lighter15:42
hatchoh that's cool if we have all the cards done properly :)15:43
rick_h_I try to15:43
rick_h_if you catch them not let me know15:43
rick_h_or update them15:43
rick_h_but yea, every card should have some 'class of service' on them by project type15:43
hatchI wonder if we can make it a required field15:43
hatchkadams54: this weekend you need to go through and delete some of your remote branches :P15:47
rick_h_lol15:47
kadams54Why?15:47
hatch30 is too many!15:47
hatchI had to remove your remote because it was wrecking my autocomplete15:47
hatchlol15:47
kadams54uiteam: https://github.com/juju/juju-gui/pull/663 for reviews and QA15:48
kadams54hatch, rick_h_: So 663 restores animations, but TBH I don't like them.15:49
rick_h_kadams54: hah, blame luca__ 15:49
kadams54The relations and services transition at slightly different times15:49
rick_h_kadams54: hmm ok. We'll let's review and get it up on comingsoon and then send an email to peeps and poke luca__ for feedback15:50
kadams54I think to do transitions right would require some pretty complex code and the bang/questionable usability just isn't worth the improvement.15:50
rick_h_and make sure if we don't like it we revert before next release15:50
rick_h_kadams54: agreed, having not tried it15:50
rick_h_kadams54: maybe create a follow up card for it so we make sure to check it out and see what feedback we can get15:50
kadams54rick_h_: sounds like a good idea to keep visibility of it.15:51
kadams54visibility on it15:51
hatchthanks i'll look at it15:51
hatchkadams54: AS is broken now lol15:52
hatchhighlight no longer works15:52
hatchwait nm,15:53
hatchbad cache15:53
hatch:P15:53
kadams54Um… yeah.15:53
rick_h_uiteam call in 8 kanban please15:53
kadams54Works For Me (TM)15:53
kadams54;-)15:53
hatchkadams54: I think you missed the styles on the service icons15:54
hatchI only see 3 here and they are in the relation class15:54
kadams54Oops, you are likely right.15:54
hatch:) 15:54
kadams54Which would make the timing issue even worse ;-)15:54
hatchlol right15:55
kadams54Transitions added to services.15:57
jrwrenI recall some kind of changelog or history on charm pages? Where is it? https://jujucharms.com/mongodb/trusty/815:57
hatchkadams54: One small issue before I'll +116:00
kadams54hatch: Unclear what you mean by "hiding" in your comments - do you mean you're clicking on the eyeball icon?16:17
hatchkadams54: so when you highlight a service the others which get hidden don't appear to fade out16:17
hatchbut they do fade back in16:17
kadams54Ah16:18
hatchdo you see that too?16:18
kadams54Yes, though I'm not sure why.16:19
hatchmy guess is that some d3 thing is setting a style16:19
hatchbut that's just a twag16:19
kadams54I think it's more to do with display: none16:20
kadams54So we apply two different styles to make it completely hidden: opacity 0, display none.16:21
kadams54opacity transitions, display does not. If the browser chooses to apply the display property before opacity finishes transitioning, you get what we see.16:21
kadams54Unfortunately display is not animatable. You can't specify a transition for it.16:22
kadams54I'm checking to see if there's a workaround16:23
hatchahh16:23
hatchthat makes sense16:23
hatchkadams54: why do we need display none? So that we can't interact with it probably? 16:23
kadams54Yeah.16:23
kadams54Otherwise it's still there, gobbling up events.16:24
hatchthe only way I know is with js - maybe we can add pointer events none?16:24
hatchor something along those lines16:24
kadams54You'd could in theory drag the invisible service block around. Clicking on it would open the inspector. So on and so forth.16:24
hatchright but with pointer events none it shouldn't do anything16:25
hatchessentially acting as if it was display none16:26
hatchkadams54: maybe we set its height and width to 0s?16:27
hatchjust throwing out ideas16:27
hatchhaha16:27
hatchI suppose that would have the same issue as display none16:28
kadams54Yeah, I actually just tried that. Doesn't work because we'd have to repeat height/width 0 for all contained elements.16:28
hatchdid pointer events work?16:28
kadams54Just setting it for the container doesn't work because the icons and whatnot inside still have height/width16:29
kadams54Yeah, I think pointer-events might work16:29
kadams54So the bad thing about pointer-events is that it only works in IE 1116:32
kadams54What's our supported browser grid :-) ?16:32
rick_h_IE10 because we know we don't work in 11 yret16:33
rick_h_there was a long standing maint card to move to IE11 but we didn't get to it16:33
hatchyou can emulate it in i16:33
hatche 16:33
hatchone sec16:33
kadams54Sorry, just realized that could be taken multiple ways… the only IE version that supports pointer-events is 11.16:33
kadams54All the rest of the browsers (except Opera Mini) have good support16:33
hatchI think this works in IE16:34
hatchfilter:alpha(opacity=0);16:34
hatchhttp://fromanegg.com/post/47412363539/transparent-links-not-clickable-in-internet-explorer16:34
hatchI wrote about this a while ago16:34
kadams54They're already transparent due to opacity: 016:35
kadams54Is the filter really necessary?16:35
hatchI don't know - I wrote this forever ago lol16:35
kadams54*sigh*16:35
hatchfire up an ie vm :)16:35
kadams54I have a feeling I'm going to have to fire up a VM16:35
kadams54Normally I'd say "great minds" but not sure I want to apply that to this case16:36
hatchhaha16:36
hatchyou should pick up parallels you'd have had IE up by now :)16:36
hatchhttps://github.com/kmewhort/pointer_events_polyfill/blob/master/pointer_events_polyfill.js16:37
hatchunfortunately it uses jquery16:37
hatchahh here we go16:38
hatchhttp://blogs.msdn.com/b/eternalcoding/archive/2013/01/16/hand-js-a-polyfill-for-supporting-pointer-events-on-every-browser.aspx16:38
hatchsays it's supported in IE10 16:38
hatchkadams54: ^16:38
hatchyou sure it requires IE11?16:38
hatchkadams54_: lemme know if you need any help with qa - I have a few IE vm's with various versions of IE16:58
=== kadams54_ is now known as kadams54-away
=== kadams54-away is now known as kadams54_
luca__rick_h_: kadams54_ did you need something from me about animations?17:19
kadams54_luca__: Yeah… how badly do you want them? :-)17:20
luca__kadams54_: which animations are we specifically talking about?17:20
hatchoh he is just being melodramatic17:20
hatch:P17:20
kadams54_The fading that happens when a service block is faded/hidden/shown on the canvas?17:21
kadams54_Hmm, that was not a question. Stupid muscle memory.17:21
hatchhaha17:21
luca__kadams54_: I would like those animations17:23
kadams54_One of the issues is that we can't guarantee that the service block and its relation lines will transition at the same time.17:23
hatchkadams54_: when I was qa'ing they were identical17:25
hatchare they not on your machine?17:25
kadams54_I've seen some stutter under heavy load17:25
hatchyeah?17:25
hatchsmooth as butta here17:25
kadams54_There's nothing that ensures they'll happen at the same time - we're really just counting on everything happening so fast that it appears to be one giant fade.17:25
hatchhow do you make it under load?17:26
kadams54_Run a VM :-)17:27
hatchI am always in a vm17:28
hatchI could try and load it up by running boinc or something I guess17:29
hatchbut yeah you're right there is the possibility that they could get out of sync17:29
hatchnot sure how likely that is though17:29
hatchnothing we can do about the fading stutter if it's under load - I'd imagine then the user would be used to that type of experience :)17:30
hatchas long as it's not our app causing the load17:30
hatchkadams54_: I actually wonder if there is any way we could guarantee the fade at the same time - I think the only way would be to wrap the elements in the same container then fade the container17:31
hatchwhich isn't going to happen :)17:31
kadams54_We could change the implementation to ensure that the class is set on the relations and service at the same time, or at least as close as possible.17:31
hatchwell doesn't that happen now?17:33
hatchwell I suppose one or the other will happen first17:33
hatchyeah that architecture change also isn't going to happen haha17:34
hatchthat would still only get us closer to correct - it's still possible that they would stutter during the animation17:34
kadams54_TBH, I don't really know. It happens in very different sections of code: topology/service.js and topology/relation.js17:36
kadams54_I'm guessing both are triggered by the show/fade/hide events17:36
hatchyeah I can explain it sometime17:36
hatchbut essentially those modules are mixed into the topology master class17:37
kadams54_So you could move things around so the class gets set on both the relations and the service element in the same portion of code.17:37
hatchthen update methods are called in sequence17:37
hatchit's done that way because how d3 works on elements and datasets17:37
hatchessentially each dataset which corresponds to a ui element is in a new module17:37
hatchit makes it much easier to reason about once you see how it works. But if I were to redo this (this was done before I started) I would probably do it via some virtual dom like react17:39
hatchbut that's essentially how d3 works for the smaller sections17:39
hatchuiteam does anyone know what will happen if a config value is "" but the GUI sets the config to null? Will juju-core set it to null or keep it as empty string?17:48
rick_h_hatch: honestly, let's bring up a real env and start testing combos?17:50
rick_h_hatch: maybe look at a series of 'app.db.services.item(0).... set the config to '', null, undefined, etc and see what juju says in each case17:50
hatchyeah that sounds like a plan17:51
hatchthe level of fix required is highly dependent on the answer of that question haha 17:52
rick_h_ty, know it's a pita but I think it's the only way to get a good fix in17:52
rick_h_and it'll help QA a lot17:52
=== kadams54_ is now known as kadams54-away
=== kadams54-away is now known as kadams54_
kadams54_uiteam: the LESS mixin for dealing with CSS3 transition browser prefixes is broken. Browser support for the prefix-less version seems solid (you have to go back four versions on Safari and a couple for Android Browser). Any objections to me dropping browser prefixes and just using it straight up?18:44
rick_h_kadams54_: not here no18:44
rick_h_I think browsers have dropped them by now18:45
rick_h_at least the ones we support have18:45
kadams54_Yeah, I verified at caniuse.com18:49
hatchkadams54_: were you able to come up with a solution to the display: none issue?18:53
kadams54_Yes18:54
kadams54_I use visibility, which is animatable18:54
kadams54_And then I put the transition on a delay so it happens after the opacity finishes.18:54
hatchahh nice18:55
hatchand visibility makes the events not trigger?18:55
kadams54_Yes18:55
hatchI did not know that.. I thought it was the opposite18:55
kadams54_Visibility: hidden means the element still takes up space in the document flow18:56
kadams54_But it will not respond to mouse events18:56
hatchnice18:58
hatchtil18:58
kadams54_hatch: pushed my fix - give it a whirl and let me know19:05
hatchwill do19:05
hatchthx19:05
hatchkadams54_: +119:25
kadams54_Suh-weet19:31
kadams54_uiteam: I need a second +1 on https://github.com/juju/juju-gui/pull/66319:35
Makyo+119:37
hatch+219:38
=== kadams54_ is now known as kadams54-away
=== kadams54-away is now known as kadams54_
=== kadams54_ is now known as kadams54-away
hatchapparently I've had a 5 machine juju env running in the background on my laptop this week and I didn't notice20:48
jrwrenlxc or kvm?20:51
hatchlxc's20:53
hatchbut that was within another parallels vm20:53
hatchvmception20:53
huwshimiMorning22:07
hatchhey huwshimi22:09

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