/srv/irclogs.ubuntu.com/2014/07/09/#ubuntu-unity.txt

=== salem_ is now known as _salem
=== _salem is now known as salem_
=== salem_ is now known as _salem
=== _salem is now known as salem_
=== salem_ is now known as _salem
Saviqmzanetti, did Germany explode yesterday?07:21
mzanettiSaviq: http://www.youtube.com/watch?v=IynteMtSBxo&app=desktop07:32
mzanettiSaviq: it was raining quite heavily. so it wasn't too bad07:34
Saviqmzanetti, yup, that one's gone viral ;)07:36
Saviqmzanetti, pushed a commit or two to https://code.launchpad.net/~saviq/unity8/refactor-scopeitem/+merge/22574507:45
Mirvmzanetti: hehe :)07:48
mzanettiMirv: oh hi! welcome back07:49
Mirvmzanetti: o hai! thanks!07:49
Saviqmzanetti, in lieu of Cimi, could you have a look at the last commits in https://code.launchpad.net/~saviq/unity8/refactor-carousel-activation/+merge/225743, too? 1029+07:50
mzanettiok07:50
Saviqthanks07:50
mzanettiSaviq: but I thought Cimi would be around for today still?08:01
Saviqmzanetti, yeah I'm not actually clear on when he's away...08:01
mzanettithere's still 4 unreviewed launcher branches :/08:03
* Saviq needs to reboot the modem...08:04
Saviqmzanetti, thanks, btw, I talked to John yesterday, filed a design bug: https://bugs.launchpad.net/ubuntu-ux/+bug/133941308:13
ubot5Ubuntu bug 1339413 in unity8 (Ubuntu) "Emblems for apps that are not pinned to launcher don't show up" [Undecided,New]08:13
Saviqmzanetti, wdyt?08:14
mzanettineed to test08:14
mhr3Saviq, confirming that my yesterday's issues in 018 are fixed08:14
mzanettioh... right08:14
mzanettiSaviq: well... yeah... if there is no such icon in the launcher, yes08:14
Saviqmzanetti, that's why I said it's a design bug08:14
mzanettiSaviq: and what is the question?08:15
Saviqmzanetti, what do you think, is all :)08:15
mzanettiI think it makes sense... do I need to do that this week still (before freeze etc)08:15
mzanetti?08:15
Saviqmzanetti, not at all08:15
mzanettiok...08:15
Saviqmzanetti, it's a design question first08:15
mzanettiso yeah... imo it makes sense to add such things to the launcher08:16
Saviqmzanetti, I wasn't even asking what do you think about impl it ;)08:16
Saviqmhr3, great08:16
Saviqmhr3, running through the test plan now08:16
mzanettiSaviq: btw... yesterday I noticed that we have 250 open bugs in unity8 where at least 50 them are either fixed or not valid any more...08:17
Saviqmzanetti, yeah, if only we had time to triage08:17
mzanettitried to collect the ones that will be fixed by QtComp at least08:17
Saviqmzanetti, it'll probably be a (pre-)London exercise to clear it up08:18
mzanettiyeah, that seems sensible... well, I'll put some clean up of that on my low prio todo list too08:18
mzanettimaybe I can help a bit with it08:18
Saviqmzanetti, sure, I didn't say necessarily *I* was gonna do it ;)08:18
mzanetti:D08:18
mzanettime neither08:19
Saviqmzanetti, we just need someone who pisses me off :D08:19
Saviqany takers?08:19
* mzanetti hides08:19
tsdgeosSaviq: sorry man, i'm busy with the dash overview ;)08:19
Saviq;)08:20
tsdgeoswe don't have the paper folded background anymore or never had it?08:31
* tsdgeos is fuzzy08:31
Saviqtsdgeos, we still do :)08:31
tsdgeosjust not on the desktop?08:31
tsdgeosdon't see it there08:31
Saviqtsdgeos, yes, there too08:31
tsdgeoslol08:32
tsdgeosi was running tryDash *_*08:32
Saviqtsdgeos, yeah thought so ;)08:32
Saviqmzanetti, oh noes, there's autopilot tests relying on the search indicator08:50
mzanettiSaviq: hmm... ok. let me fix that08:51
mzanettiSaviq: btw. I'd say temp scopes are missing a busy indicator for the time where data isn't fetched yet08:51
mzanettiSaviq: same when changing a department08:52
Saviqmzanetti, they always did08:52
Saviqmzanetti, except on landscape08:52
mzanettiyeah, I know... but it wasn't that much of a problem until now08:52
Saviqmzanetti, but agreed, we should find a better place for it than the search entry08:52
mzanettishould I file a bug about it?08:52
Saviqmzanetti, yeah, do, unity8 + ubuntu-ux08:53
mzanettiack08:53
Saviqmzanetti, other ap tests fail because they expect a single PageHeader08:53
Saviqmzanetti, 5 failures in total08:53
mzanettiok... 5 is ok. will fix08:54
Saviqmzanetti, I'll kick ci on new-header to get a baseline08:54
mzanettiok08:54
mzanettihttps://bugs.launchpad.net/ubuntu-ux/+bug/133959508:56
ubot5Ubuntu bug 1339595 in Unity 8 "scopes are missing an ActivityIndicator while they fetch data from the network" [Undecided,New]08:56
tsdgeosSaviq: are we supporting search in dash overview?10:20
tsdgeosfor RTM i mean10:20
Saviqtsdgeos, we said yes10:20
tsdgeosok10:20
tsdgeosand suddenly there's a back button in search10:21
tsdgeoswe don't have that in dash do we?10:22
tsdgeosmaybe in new dash?10:22
tsdgeosi mean new header10:23
Saviqtsdgeos, yeah we do now10:23
tsdgeosah nice10:23
Saviqtsdgeos, it'll land soonish10:24
Saviqtsdgeos, but you should have it already if you based off of scope-customs10:24
tsdgeosyep10:24
tsdgeoscool10:24
tsdgeosSaviq: hmmmm10:28
tsdgeosSaviq: we have something called scopeStyle in qml/Components10:28
tsdgeosdoesn't really seem "abstracted"10:28
Saviqtsdgeos, where?10:32
tsdgeosPageHeader.qml10:32
tsdgeosproperty var scopeStyle: null10:32
Saviqtsdgeos, well, yeah, I just added it10:33
tsdgeossure10:33
tsdgeosi mean i realized10:33
Saviqtsdgeos, PageHeader is scope-specific in any case, probably should just move to Dash//10:33
tsdgeoshaving something with scope in the name in there is a bit weird10:33
tsdgeosor that :D10:33
Saviqtsdgeos, or we might abstract it again and then wrap it in ScopePageHeader or something10:33
Saviqtsdgeos, but agreed, needs resolving10:34
Saviqtsdgeos, since we use it in HUD as well...10:34
tsdgeosjust call it style10:35
tsdgeosand be done with it :D10:35
davmor2Hey guys.  I have a device that is currently locked up on the welcome screen.  I've got 3 crashes in var/crash one of which is Qt5 the other 2 are indicators.  Is there anything of use I can get for you that might lower down the issue some?10:37
tsdgeosmzanetti: ping10:43
mzanettitsdgeos: pong10:48
tsdgeosmzanetti: the newheader seems to have a gray line on the top10:49
tsdgeosis that on purpose or by mistake?10:49
* mzanetti looks10:49
tsdgeosmzanetti: http://i.imgur.com/WrMJOfz.png this is a header with y: 1010:50
mzanettitsdgeos: hmm, no, its not on purpose10:51
tsdgeosit's harder to notice on the dash10:51
tsdgeossince it's there all the time10:51
tsdgeosand similar in color to the background10:51
mzanettiyeah10:51
Saviqtsdgeos, your "Done" button is outside the window, kudos!10:51
Saviq;)10:51
tsdgeosbut in the overview it shows10:51
tsdgeosSaviq: lol10:52
mzanettitsdgeos: can you press the search button in here?10:53
tsdgeosmzanetti: yes, why?10:53
mzanettitsdgeos: to see if the search header has the grey line on top too, or if the one we see in here is attached at the bottom of the search header10:53
tsdgeosah10:53
tsdgeosit "travels" down10:53
mzanettiis there a new one coming in at the top?10:54
tsdgeosnope10:57
mzanettitsdgeos: hmm... ok... I did tell the PageHeadStyle to no paint a separator11:00
mzanettitsdgeos: currently investigating in AP tests. I can investigate in this after that11:00
tsdgeosmzanetti: sure, no hurry, it's just a minor visual thing11:00
mzanettiack11:01
=== MacSlow is now known as MacSlow|lunch
=== pete-woods is now known as pete-woods-lunch
=== alan_g is now known as alan_g|lunch
=== MacSlow|lunch is now known as MacSlow
Saviqmzanetti, t'is me again, how's autopilot?12:38
greybackdamn, ran out of disk space, now my user account corrupted12:46
mhr3Saviq, something missing in 018?12:46
Saviqmhr3, mzanetti's fixing ap tests12:46
Saviqmhr3, should land real soon12:46
mzanettidoing the final run12:46
Saviqgreyback, uh oh12:46
mzanettiindividually all the failing ones are passing now12:46
=== alan_g|lunch is now known as alan_g
mhr3k, thx12:50
Saviqmhr3, do we support opening scopes through departments?12:53
mhr3Saviq, no12:53
Saviqmhr3, and it was never discussed was it?12:53
mhr3someone did have the idea, we didn't like it12:54
mhr3one's certain, UX for it would suck12:54
Saviqindeed12:54
SaviqI'd get so confused when this would happen12:54
karniSaviq: Would there be a chance to get this in the work pipeline sooner than later :)? https://bugs.launchpad.net/unity8/+bug/1326470 (notably, I'm interested in the "default uncollapsed state when there is only one category" really)12:55
ubot5Ubuntu bug 1326470 in unity8 (Ubuntu) "Scope author should be able to set the number of collapsed results to show" [Undecided,Confirmed]12:55
cwayneSaviq: we got that from here btw: https://docs.google.com/a/canonical.com/document/d/1engc5TPtQC9iI8zziMxx9DLVY74b4bvsnPvGBVb95YI/edit12:55
Saviqdudes, one at a time12:55
mhr3Saviq, oh and can we get also [another random item] ;P12:56
cwaynei wasn't asking for something this time though :)12:56
Saviq;)12:57
* karni stands in the queue12:57
karniha!12:57
Saviqmhr3, are you sanitizing collapsed-rows?12:59
mhr3Saviq, you mean clamping to 1-2?13:02
mhr3no13:02
mhr3Saviq, i was actually looking at that piece of code when doing the see more, there's an issue - if the scope sets it to 0, shell will consider it unset and use 213:03
Saviqmhr3, that's fine, I'll fix shell13:09
mhr3Saviq, you probably want to fix that in the grid-see-more branch13:10
Saviqmhr3, nice bump ;)13:10
mhr3Saviq, and maybe fix the other issues with it? :)13:10
=== pete-woods-lunch is now known as pete-woods
mzanettiSaviq: I've fixed the 5 ap tests that were failing13:22
mzanettihowever, now I had others fail (unrelated to the pageheader change)13:22
Saviqmzanetti, which ones?13:30
mzanettiSaviq: lifecycle13:30
Saviqmzanetti, one it's flaky13:31
mzanettiSaviq: Assert(Greeter.created, True)13:31
Saviqmzanetti, btw, testing speed-up:13:31
Saviqwhile true; do sleep 1; status unity8 | grep -q killed && pkill unity8; done13:31
Saviqon the device13:31
mzanettihuh?13:31
Saviqmzanetti, it will convince unity8 to exit when upstart's asked it13:32
Saviqmzanetti, so it doesn't take a full minute to go away...13:32
=== _salem is now known as salem_
Saviqmzanetti, just push your fixes to the branch please13:35
mzanettiwhich ones?13:37
Saviqmzanetti, you did already13:42
Saviqmzanetti, I meant the ap ones13:42
mzanettiyeah, for the PageHeader13:43
mzanettididn't really investigate in the lifecycle ones13:43
=== larsu_ is now known as larsu
=== Zhenech_ is now known as Zhenech
Saviqmzanetti, you really need to prefix my name if you want a response from me, won't notice otherwise ;)14:00
mzanettiI know :P14:05
Saviqmzanetti, so... clip corners... did you consider putting the icon in the clipper, rotate the clipper and unrotate the icon?14:19
Saviqmzanetti, also, wonder if the clipping should happen when dragging a clipped icon, too?14:21
mzanettiSaviq: not sure I understand the first question14:22
mzanettivesar: your opinion on Saviq's second question? ^^14:22
Saviqmzanetti, instead of the mask, you could put the icon in an Item { clip: true; rotate: 45 } or so14:23
mzanettiah.... yeah, that'd probably work too14:23
Saviqmzanetti, should be faster than another texture lookup14:23
mzanettithik so?14:23
mzanettiSaviq: think so?14:24
mzanettiI don't know tbh14:24
Saviqmzanetti, yeah, texture lookup you need one per pixel, whereas with clipping you just clip away with geometry14:24
Saviqmzanetti, obviously depends on how it's really implemented, but if you think about it...14:25
mzanettihmm, well, can change it if you think its better...14:25
Saviqmzanetti, I was told texture lookups are quite expensive (hence blur is difficult)14:25
Saviqmzanetti, would be a bit easier to understand IMO, too14:25
mzanettiSaviq: not sure why blur would do a texture lookup14:25
Saviqmzanetti, huh?14:26
mzanettioh right..14:26
Saviqmzanetti, it needs to consider $however_many pixels around the current one14:26
mzanettiyeah, but... that's like evaluating 1024 pixels per pixel14:26
mzanettiSaviq: this one is just 1:!14:26
mzanetti1:114:26
Saviqmzanetti, still14:27
mzanettibut sure, I don't mind changing it... Not sure why I didn't have the simple idea myself :D14:27
mzanettiprobably because I wanted to learn how to do it with a shader14:27
Saviqmzanetti, it's not actually that bad, when blurring you're only doing horizontal and vertical, not around14:27
Saviqmzanetti, so it's like a dozen lookups or so14:28
mzanettimhm... makes sense14:28
Saviqdepending on the blur size14:28
mzanettiand the blur mode too14:28
Saviqmzanetti, sure14:28
Saviqmzanetti, http://sunsetlakesoftware.com/2013/10/21/optimizing-gaussian-blurs-mobile-gpu is a good read14:29
mzanetticool. thats interesting14:29
mzanettiok... will change it to just do a regular clip then14:29
mzanettiSaviq: I'll track down vesar on the other question14:30
vesarmzanetti,about the second question. yeah I noticed that when testing the branch and asked Esti (who created the visual) because I felt is should clip also when moved around. But her opinion was that it's ok like that. So not clipping when dragging. This because the the metaphor with the clipping corner is launcher background material covering the icon. Those two to be united. So when it's dragged away it's ok not to clip.14:30
vesarmzanetti, sorry for the messy lengthy answer. But basically it's been noted and run through with visual guys and can be left as it is. cool with that?14:31
Saviqvesar, yeah, when dragged away... problem is it happens as you long-press, too :|14:31
mzanettivesar: it wasn't messy.14:31
Saviqvesar, so when just getting to the quicklist, the corner goes "blink"14:32
mzanettibut that's kinda ok looking at it from Esti's view14:32
mzanettias you basically start the drag, that would indicate you got it out of the launcher14:32
mzanettiif you then release it, it'll go back in14:33
vesarSaviq, mzanetti. Oh ok I see. No we don't want any blinking when longpressed.14:33
Saviqmzanetti, well, you should have to drag it "out" from under the material then ;)14:33
vesarbut when icon detaches from the background then it's ok not to clip anymore14:33
Saviqmzanetti, so we'd need a dragging threshold probably14:33
mzanettivesar: we'll lose any indication of "you can drag now"14:34
Saviqmzanetti, so you only move the icon away when you pass a 1GU or something14:34
mzanettithat's what's happening already14:34
Saviqhmm, that14:34
Saviqmzanetti, not with the corner it's not?14:34
vesardetaching from it's original position is the key. So when ever the drag to organize threshold is exceeded and the quicklist hides and item starts to move with your finger.14:34
vesarmzanetti, Savic, just checked  the  current implementation and it's actually not as I remembered it.14:36
mzanettivesar: what I mean is: if you longpress, the quicklist pops up. That indicates: "You triggered the longpress action. Now use the quicklist or not"14:36
mzanettivesar: but it doesn't indicate in any way that "Oh, and btw, you can also drag it now"14:36
vesarmzanetti, well we don't really have any indication that you can drag it now. But I see where you're coming from. That by unclipping the corner we would indicate that you can drag it now too. right?14:38
mzanettivesar: it had one with the old highlight14:38
mzanettivesar: but we removed that. so the clipping corner would somewhat do that14:38
mzanettivesar: removing that we don't have anything left in that regard14:38
vesarmzanetti, to be honest now that I'm testing it with the latest build I cannot see any highlight indication.14:40
mzanettivesar: no. we dropped that with the new border glow/shadow14:41
vesarmzanetti, ok I do see it. But anyone not knowing its existence doesnät14:41
vesardoesn't14:41
mzanettiyeah well..14:41
vesarmzanetti, but I don't have the new highlight in this build do I14:42
mzanettithat should be landed already, yes14:42
Saviqmzanetti, should it?14:43
vesarmzanetti, I'm having the old version then. dark highlight at the top of the icon and bright at the bottom14:43
Saviqmzanetti, the first launcher things are only in silo now14:43
Saviqmzanetti, and I was reviewing the rest today14:43
mzanettiOh, I thought 2 or sow where already through14:43
vesarSaviq, mzanetti: at least the icon spacing change has landed14:44
Saviqmzanetti, hmm maybe, there were so many!14:44
mzanettiright, the new item glow didn't land yet14:44
Saviqnope, I just reviewed it today14:45
Saviqspacing's the only thing that landed14:45
mzanettiwell anyways. vesar when should the clipping of the corner happen?14:45
mzanettion longpress or on drag start (when the space where it was shrinks)14:46
mzanettierr. go away14:46
vesarmzanetti, Saviq: the shrinking seems to happen only later. Just a sec I formulate it properly14:47
mzanettiyes, the shrinking happens when you dragged more than 1 grid unit14:48
vesarmzanetti, no. try it.14:48
mzanettivesar: oh right... that's when the quicklist hides again14:49
mzanettiI meant that14:49
vesarmzanetti, yes and that's the time when the icon becomes whole again.14:49
mzanettiok14:50
vesarmzanetti, other icons desaturate, quicklist disappears, icon unclips (user enters organizing mode)14:50
vesarmzanetti, And don't worry about the highlight we used to have. I don't think we need that anyway.14:50
mzanettiok14:51
kgunnSaviq: asking here as it might help others, so i need to use "send" on apport-cli when i experience crashing to process the crash files & it'll give me a url to folow to complete the lp bug14:54
Saviqkgunn, yup14:54
kgunnbut does apport "know" if the files are related ?14:54
kgunnor do you have to clean out the old ones ?14:55
Saviqkgunn, no, separate bug per .crash14:55
kgunnand does it just pick the most recent...14:55
kgunnah14:55
Saviqkgunn, you can only have a single .crash file per process14:55
Saviqkgunn, and it will only get replaced after you uploaded them (apport puts a .uploaded file next to it)14:55
kgunnSaviq: yeah, but sometimes they're related14:55
Saviqkgunn, or remove it, of course14:56
Saviqkgunn, yeah, just cross-mention the other bugs, nothing better than that at the moment14:56
kgunngot it14:56
Saviqin the description or comments14:56
mzanettiSaviq: meh... no, the clipping with an item doesn't work14:57
mzanettiSaviq: because it clips after the rotation tranformation14:57
Saviqmzanetti, well, not if you add the rotation transformation on the clipper?14:58
Saviqinstead of on the icon?14:58
Saviqmzanetti, I'm not saying, just asking, really14:58
mzanettiSaviq: yeah. but then I need to counter-correct the values everywhere14:59
mzanettiunless I wrap it once again I guess14:59
Saviqright14:59
Saviqthat might be best still...14:59
mzanettiSaviq: this freaks me out... if I move and rotate, I can't just invert that again, it'll be somewhere else15:18
mzanettiI could probably make it work stil, but then there's the 180 degree rotation of the whole launcher coming15:19
Saviqmzanetti, lol, ok, leave it be15:19
elopioping mzanetti: do you have some time to talk about your comments on https://code.launchpad.net/~om26er/unity8/launcher_integration_test/+merge/226087 ?15:19
mzanettielopio: sure15:19
cwayneSaviq: heya, is favoriting scopes planned soon? I imagine it was likely waiting on the new-header stuff?15:20
=== gatox is now known as gatox_lunch
tsdgeosmhr3: Saviq: where do i get the backgrounds for the scopes in the scopes overview from?15:21
elopiomzanetti: all your comments are on the prerequisite of that branch, that's mine: https://code.launchpad.net/~elopio/unity8/test_open_app_from_launcher/+merge/22511215:22
tsdgeosmhr3: Saviq: it has to be part of the scope, but a new role?15:22
tsdgeosor what?15:22
mzanettielopio: ah ok... I just came by this omer's branch today and missed the prerequisite15:23
mhr3tsdgeos, in customizations?15:23
mzanettielopio: so still, I don't think we should add all those launcher tests this way15:23
elopiomzanetti: yes, the diff is weird showing all the things he didn't add them. So don't worry about that.15:23
mzanettielopio: I do understand we want a test that checks if the emulator can find the launcher15:23
mzanettielopio: but I don't agree with having 6 tests just dragging the launcher in and out15:23
mzanettielopio: after all we have about 20 qmltests that verify that15:23
elopiomzanetti: so, the tests are there not to check the functionality. The check the functionality too, but we need them because otherwise you can break the helpers that we will be using on the UX tests.15:24
mzanettielopio: and one AP test adds > 30 seconds to unity's test suite15:24
tsdgeosmhr3: ok, suggested name for the thing?15:24
Saviqtsdgeos, wait15:24
Saviqtsdgeos, you need to hardcode the background in the overview15:25
elopiomzanetti: I know, and I understand. You have those features already covered. But I see no other way to keep the autopilot helperes always working.15:25
tsdgeosmhr3: Saviq: and we probably also need a way for people to override the font color in dash overview?15:25
tsdgeosSaviq: ?¿15:25
mzanettielopio: well, if you really think you need to test all the functions, then please add 1 test that tests the launcher functions, not 2 tests for each function15:25
Saviqtsdgeos, we won't support images as backgrounds, just plain color15:25
Saviqtsdgeos, no, why font color override in dash overview?15:25
mzanettielopio: its enough if one test fails saying "Launcher emulators broken"15:25
elopiomzanetti: I do the helpers test driven, so I have a teset for every code path.15:25
tsdgeosSaviq: so color + logo + font color override15:25
tsdgeosSaviq: we use exactly the same ones we use for the regular scope?15:26
tsdgeoslogo is going to be weird15:26
tsdgeossince in scope is horizontal and in here is vertical15:26
mzanettielopio: well, I guess that's one of the places where theory and practice differ15:26
Saviqtsdgeos, waaait15:26
* tsdgeos is waiting :D15:26
mzanettielopio: in terms of usefulness I mean15:26
Saviqtsdgeos, where do you want to put that logo?15:26
tsdgeosSaviq: in the middle of the card like stuff shows15:26
Saviqtsdgeos, that's just art from the scope15:26
Saviqtsdgeos, nothing special15:27
Saviqtsdgeos, it's the scopes scope that will submit you that15:27
tsdgeoshmmmmm15:27
elopiomzanetti: well, it's useful for you when you don't have to wait one extra minute while running your autopilot suite.15:27
Saviqdaamit :|15:27
tsdgeosoh right15:27
elopiomzanetti: but it's more useful for us when we can pinpoint directly what's the cause of a failed autopilot test15:27
tsdgeosSaviq: what?15:27
mzanettielopio: can you?15:28
mzanettiI don't think so15:28
elopiowe can just reach that point making small tests, each one for a single code path.15:28
mzanettielopio: well... let me put it that way. It took me 6 hours today to debug 5 AP tests15:28
mzanettielopio: And while I understand we need some of them, I don't agree with having 6 that just drag the launcher in and out15:29
elopiomzanetti: that's bad. Tell me which autopilot tests are so hard to debug, and I can try to improve them.15:29
mzanettielopio: all of them. it takes 32 minutes to find out which ones don't work15:29
mzanettibefore you can even start working15:29
elopiomzanetti: that's a necessary evil. We can improve that with paralellization and improving the CI lab, but a high level suite will not take less than 10 minutes, ever.15:30
elopioThat's a long time to get feedback. But if you were to run those same tests manually, it would take you 1 hour and you will miss many details.15:31
elopiomzanetti: so, don't get me wrong. I understand you here, you invested a lot on a suite with a fast feedback15:31
Saviqtsdgeos, nothing related, ap still not passing here15:32
elopiomzanetti: that's really cool. But unity also needs to get testability helperes to let us check the quality of the image without doing it manually.15:32
Saviqmy fault15:32
Saviq:|15:32
elopiowith this three branches I'm proposing, we will be able to check that all the apps pined on the launcher work.15:33
mzanettielopio: yeah, but still not adding 5 minutes to our test suite just to test the helpers (note: this is not even the high level test you're talking about yet). there must be another way15:33
elopioand that all the apps preinstalled on the phone can be launched through the click scope. That will save us a lot of time of manual testing.15:33
alesagehi I'm able to swipe to open and open launcher but tapping on anything (launcher, apps icons) doesn't launch, wonder how I can help to debug15:34
elopiomzanetti: I'm open to try a different way.15:34
alesagetop not showing anything unusual15:34
mzanettielopio: I still think there should be just one test for the launcher helpers...15:34
elopiomzanetti: but with the scope changes, the only thing that let us keep running the click scopes tests was that I added tests for the helpers.15:34
mzanettielopio: sure... its ok to have some helpers... but the very best example is the last test:15:35
elopiotsdgeos probably hates me because of this :) but without the tests you would have changed all the code without noticing that you broke the testability helpers.15:35
mzanettielopio: you don't need to check if cklicking outside the screen does not work15:35
mzanettithat's 34 seconds wasted every time one of us runs the suite15:36
elopiomzanetti: what test are you talking about15:36
elopio?15:36
mzanettielopio: test_click_dash_icon_with_launcher_closed_must_raise_exception(self):15:36
elopiomzanetti: well, that's precisely the king of things we have learned to do not to spend 5 hours debugging a test.15:37
elopiomany many times we try to click something that is not there, just to find a weird autopilot low level exception saying: not found.15:37
elopiothat's an important feature of the helpers. When you try to do something and your preconditions are not met, it must tell you that.15:38
elopioadding a test for that is the only way to make sure that the exception will always be raised for that case.15:38
elopioI could use mocks for that one, making it a test that doesn't start unity if you prefer a less cleaner but faster test.15:39
elopioit will live on your code base, so it's your decision what kind of test do you prefer to maintain.15:40
mzanettielopio: why are you even exporting low level stuff like drag_launcher, etc? shouldn't a higher level test suite just call open_app_from_launcher(index) and that's it?15:40
elopiobut completely removing a test for one code path of the helpers is bad for us. We will not be able to rely on that helper.15:40
mzanettiso basically you just export that one function, have 2 test for that and that's it... if the launcher fails to drag in, our qmltests will catch that before15:41
elopiomzanetti: for that suite of tests launches all the apps from the launcher, yes, only click dash icon is necessary.15:42
elopiobut rick asked for an additional test to make sure that the launcher will be usable always, and for that we need to do things like open the dash, open the keyboar, open the indicators page15:43
elopiomzanetti: you qml test will not catch errors on the autopilot helpers, like not swiping long enough, or swiping more than what you needed15:44
mzanettielopio: I think what rick asked for in that particular case should be done as a qmltest in tst_Shell.qml15:44
elopiomzanetti: it won't catch when the assumptions of the autopilot helpers are not met15:44
mzanettielopio: but your one test that does launch_app_from_launcher() would catch that15:44
mzanettiand that's enough, we don't need 3 that catch that15:44
elopioand it won't catch when you change all the underlying code and update the qml tests, as happened with the scopes changes.15:44
elopiomzanetti: if you put a test for the integration of the launcher with the osk, you would be pulling an additional dependecy to u8.15:46
mzanettielopio: yes, it would catch that15:46
elopiomzanetti: lets put an example. There's an open_launcher autopilot helper, that swipes from x1 to x2.15:46
mzanettielopio: not really15:46
elopiolets say that launcher doesn't have a test15:46
elopioand designers tell you you have to do the launcher twice as fat.15:47
elopioyou update the qml code, you get qml test failures, you update the qml tests, and you are back to green.15:47
mzanettielopio: I never said you shouldn't have any tests for you r helpers15:47
elopiohow are you going to notice that there's an autopilot test that needs to be updated?15:47
mzanettielopio: but I think your helpers are too low level, and hence you require too many tests15:47
Saviqalesage, it's something going haywire with Qt's event propagation, suddenly only touch events work (and not touch-converted-to-mouse)15:48
Saviqalesage, not really easy to get info, other than steps to reproduce...15:48
Saviqalesage, I don't think there's a bug for that yet, either15:48
elopiomzanetti: ok, the one that is urgent for me now is the one that clicks a launcher icon.15:48
elopioI can keep the open and close private15:49
Saviqalesage, so please file one15:49
mzanettielopio: yeah. so IMO we should have a helper: launcher_app_from_launcher and a teste (ONE) that verifies if this works15:49
alesageSaviq, hmm ok--so long as you're aware, ok I'll file a bug although I'm not sure how to reproduce it15:49
elopiomzanetti: but in one week or two I will be automating the experiences when you turn on the phone for the first time.15:49
elopiofor that I need to follow the wizard, and I need to open the dash.15:49
mzanettiok. well, open_dash makes a second valid use case15:50
elopionow, I can't agree with having one single test that checks that you can open the launcher and click the icon.15:51
kgunnSaviq: wow...so apport-cli and lp integration so good...it figures if you're crash has already been reported ?15:52
elopiomzanetti: that's too big. That's what I've learned through months of checking poorly written tests and trying to understand their errors.15:52
Saviqkgunn, well, if the crash sig is good enough15:52
kgunnthat's pretty damn cool15:52
elopiomzanetti: I need one test that makes sure that the launcher can be opened.15:52
Saviqelopio, we're testing that in QML15:52
elopioonce I'm sure that test is passing, I can use the tested helper, and go one more step.15:52
mzanettiSaviq: yeah, that's the beginning of the discussion :)15:53
Saviqmzanetti, I know, just wanted to restate15:53
elopioSaviq: yes, I know. What I'm trying to explain is that these are not tests for the features.15:53
elopiothese are tests for the helpers.15:53
Saviqelopio, yes, but why is it a problem when we are maintaining the helpers?15:53
elopioif the feature is not working, the test helper will fail, of course.15:53
mzanettielopio: I agree. but you write them like tests for the features15:53
elopiomzanetti: I wrote the code test-driven. It just excercises all the code paths of the helpers.15:54
mzanettielopio: that's the ideal world, but for that we'd need an ideal test tool15:54
mzanettiand AP really isn't15:54
elopiomzanetti: the ideal tool simulates a real user. Autopilot does that pretty well.15:55
elopioit's slow, of course, users are slow.15:55
elopioit would be faster if we could boot unity faster15:55
elopioit would be faster if we could reflash the phone faster15:56
elopiobut if you do autopilot too fast, that's not simulating a real user.15:56
mzanettielopio: but really, what do you want to test in your high level test? You want to know if launching an app from the launcher actually starts the app, right?15:57
mzanettiah.. I'm repeating myself15:57
elopiomzanetti: that's step 1, yes.15:58
elopioonce that works, step 2 is to check that the launched app can interact with other apps.15:58
mzanettiyeah ok... but that doesn't affect the launcher any more...15:58
elopiomzanetti: if the call to open_launcher breaks at some point, all the UX suite will be read.15:58
elopiowell, half, because some other applications will be opened from the scope.15:59
mzanettielopio: no it won't. you still have the one test that makes sure launch_app_from_launcher() still works15:59
mzanettiand if we mess up in unity, your high level test suite should say: Error opening app from launcher.16:00
mzanettiit doesn't need to say launcher counldn't be dragged from here to there16:00
elopiomzanetti: ok, it's your code base. I can just warn you that it's a bad idea to have a test called launch_app_from_launcher, without a smaller test called open_launcher.16:00
elopiothat's what has caused all the headaches that we are daily reducing on the apps test suites.16:01
mzanettielopio: I'll take that risk... given that I have a whole other test suite that makes sure the launcher can be dragged...16:01
mzanettiand if its really abug in the helper, I'd rather have one to fix, not 6 of them16:01
Saviqelopio, I agree with mzanetti, our "unit" tests are in QML16:03
Saviqelopio, what you need from the acceptance tests are helpers, which we will maintain16:04
Saviqelopio, there's no need for replicating all the individual tests we have in QML with AP ones16:04
elopiomzanetti: that's the real reason for long debug sessions, holes in the code path test coverage. But I can't seem to convince you.16:04
elopioit's your choice. I'll make the changes.16:04
Saviqelopio, that's fine, we need to plug those holes in QML tests, not in AP ones16:04
Saviqmzanetti, hmm, unity8.shell.tests.test_emulators.MainWindowTestCase.test_search fails on my desktop in new-header16:06
mzanettihumm.... still... ok, will check again16:06
Saviqmzanetti, Object not found with name '*' and properties {'objectName': 'searchTextField'}.16:07
mzanettielopio: so if you really think you want to have each helper's code path, which I'd agree would make sense, then please still do it in one test.16:07
mzanettielopio: it doesn't make a difference for me if I debug 6*3 lines or 1*24 lines (given they only test one thing after another anyways)16:07
mzanettielopio: but it makes a huge difference to me if the AP test suite grows by 5 minutes a month16:08
mzanettielopio: and if we wouldn't have the issue that unity8 + AP would take 30 secs to just start a test, I would also agree it would make more sense to keep them split16:08
mzanettibut that's unfortunately not what it is16:09
elopiomzanetti: for me, it's the other way around. I have to review, refactor and fix like one autopilot test per day, coming from a different project.16:09
mzanettiyeah.. but that's different. you're testing features there, not helpers16:09
elopiomzanetti: no, I'm testing both. Each project is the same as this one. It has tests for their high level features, and helpers for testing them in combination with other projects.16:10
elopiothe toolkit is the biggest example. It takes 40 minutes to run everything, but it's a pleasure to find an error on the autopilot code.16:11
elopioI will do it as you want, but I won't spend hours debuging the problems that might arise on the autopilot code, or adjusting them when a big design change is needed.16:12
elopioyou will have to take care of that part.16:12
elopiooh, I have an idea.16:14
elopiomzanetti: what if I start unity just once. You said you agree that we should cover all the code path. Starting unity just once, there will be no time difference between putting all the small tests in a big one, or having them split16:15
mzanettielopio: I guess I'd be fine with that, not knowing yet about other ramifications it might bring. but sounds reasonable atm16:18
SaviqLOL16:20
Saviqautopilot can't cross the screen boundary16:20
SaviqSTOOPID, you need to press against the screen edge!16:21
=== gatox_lunch is now known as gatox
mzanettielopio: hm... thinking about it... I'd probably prefer if you still don't add tests for all the code paths...16:22
mzanettielopio: for example today I updated the tests for the emulators that trigger search on dash... I already have tested everything that can go wrong in the qml test suites. so I only need to make sure the high level function search_in_dash() works again16:23
mzanettiand not that autopilot can figure everything that can go wrong once again16:24
elopiomzanetti: you are thinking only for your code base. You are not thinking how autopilot raising a proper exception will help tests in the click scope.16:25
elopiofunny example you choose, because thanks to that we found that the search textfield was not getting the focus, and that caused the errors. A look at the screenshot showed that the focus was on the keyring dialog.16:25
elopioso 30 seconds to diagnose the error. No need to rerun anything, just take a look at jenkins.16:26
elopiobut I will comply.16:26
mzanettielopio: I'm not exactly sure what the click scope tests are. But I assume they are testing something that isn't related to the search, but just need the search to get to the actual test. is that correct?16:29
Saviqelopio, also, your example is flawed as it doesn't need any coverage to notice this once you see the video16:30
Saviqelopio, you could blindly tap on known x/y coordinates and still in the video you'd see that there's a password prompt16:30
mzanettiso why would they care what inside unity has gone wrong? they just need the info: Searching failed. But for that we have the test for the emulator that makes sure the search actually works by the time it gets to the click scope16:30
elopiomzanetti: correct. We have a fake server that puts a specific app on the dash, and we need to search for it.16:30
mzanettiand if it doesn't work, I'd rather debug it in unity with the qmltests and mke the emulator work again16:31
elopioSaviq: the hard part is how know what's the right video to look at.16:31
Saviqelopio, you get one per failed test, no?16:31
elopioin this case, there was one failure that provided no information, the one that opened the dialog.16:32
elopioand one that provided a clear clue of where to look, with a clear message of what was going wrong.16:32
Saviqelopio, btw, any idea why suddenly my autopilot tests would require double taps to trigger clicks in the UI?16:32
elopioSaviq: no, if we split the launch test in two, and the open fails, we will have two failures. But if we have written the open helper properly, the failure will be easy to understand in the two, and will be a one line fix.16:34
elopioSaviq: what are you testing? We have seen that on the header when the popup was stealing the focus16:34
Saviqelopio, lockscreen here, and only on desktop16:34
elopioand on the address book forms, when swiping over a focused textfield didn't work.16:34
Saviqelopio, but really, we have those low-level tests in QML, and that's where we want to keep our coverage16:35
elopioSaviq: hard to tell. If you can reproduce it manually, is probably the focus. If you can't, there must be something wrong on autopilot, but it hasn't changed for a while.16:35
Saviqelopio, I can actually reproduce with my mouse, so it's rather weird indeed16:37
elopioSaviq: if you push it, I can give it a try.16:37
Saviqelopio, nah, it must be something local anyway, is fine on device (and in jenkins)16:38
elopiook.16:38
Saviqmterry, hey, I noticed one thing in u-s-c, if I stop unity8, it will only get off screen when I launch it back, rings a bell?17:08
greybackconfirmed17:09
mterrySaviq, you mean the last frame of unity8 stays on screen?17:09
Saviqmterry, yes17:09
mterrySaviq, interesting.  If unity8 crashes on my phone, I see the spinner.  Do you see that, and are saying this only happens on 'stop' or does this happen for you when it crashes too?17:10
=== alan_g is now known as alan_g|EOD
Saviqmterry, well, if it crashes, it gets restarted straight away17:10
Saviqmterry, and yeah, the spinner shows up for 2 seconds or so17:11
Saviqon unity8 startup17:11
mterrySaviq, sure...  But starting unity8 doesn't cause the spinner.  Having no registered Mir session causes the spinner to appear.  So it's odd that there is a difference between stop and restart17:12
Saviqmterry, I'll try and see again in a mo, running ap now17:12
elopiomzanetti: on the unity code base, you will never get an error because the search was not focused because you don't interact with external things.17:13
elopiobut on the helper we have code for that case, and we make sure that it shows the right error every time by having a test that will break if your assumptions change.17:13
elopiosorry, I went to a meeting and forgot to press enter :)17:13
elopioI'll work on the branches. I'll be back when they are ready.17:14
Saviqelopio, sure, verify the field is focused, and interrupt the test if it's not17:14
Saviqelopio, but don't interrupt it if it is17:14
Saviqelopio, I think that was what mzanetti wanted - not a step-by-step "incremental" test, but one that runs the whole needed set of steps in one test17:15
mzanettiSaviq: elopio: yes. (was having dinner)17:25
elopioSaviq, mzanetti: please review the branch: https://code.launchpad.net/~elopio/unity8/test_open_dash/+merge/22455317:36
elopioif you like the style and the types of tests I'm adding, I'll do the same for the rest.17:36
elopioif not, let me know and I'll make the changes.17:36
Saviqmterry, well, yeah, confirmed, I didn't even have the unity8 process any more, while still looking at the greeter17:45
Saviqmterry, only as I went "start unity8" did the spinner come up17:45
mterrySaviq, fascinating...  either Mir is holding on to the session somehow or the USC spinner logic isn't 100%.  File a bug against USC17:47
Saviqmzanetti, if around... http://paste.ubuntu.com/7771402/ fixes ap for me on new-header18:16
mzanettiSaviq: oh cool, thanks18:17
mzanettiI wonder how that got lost...18:19
karni_mhr3: candy :D https://bugs.launchpad.net/savilerow/+bug/133983918:26
ubot5Ubuntu bug 1339839 in unity-scopes-api "Search in scope resets the selected department" [Undecided,New]18:26
karni_mhr3: got it confirmed by Kyle (he'll mark it confirmed momentarily)18:26
=== karni_ is now known as karni
=== karni is now known as Guest85816
=== Guest85816 is now known as karni
Saviqmterry, bug #133984318:39
ubot5bug 1339843 in unity-system-compositor (Ubuntu) "Last user session frame visible until restarted" [Undecided,New] https://launchpad.net/bugs/133984318:39
mterrycool18:40
Saviqmzanetti, :| there's a conflict between two of your branches, unless you're around and can fix, I'll land without19:26
Saviqhttps://ci-train.ubuntu.com/job/landing-018-1-build/110/console19:26
mzanettiSaviq: fixing19:26
Saviqmzanetti, thanks19:26
mzanettiSaviq: does it make things more complicate if I resubmit the MP?19:29
mzanettiwith the prereq branch19:29
Saviqmzanetti, no, just found out it's required, really19:30
mzanettiSaviq: well, you could drop one of them19:30
Saviqmzanetti, train reorders branches based on prereq19:30
mzanettiwhatever is easiest for you19:30
Saviqmzanetti, resubmit's fine19:30
mzanettiok19:30
mzanettiSaviq: https://code.launchpad.net/~mzanetti/unity8/launcher-update-home-button-design/+merge/22620019:31
mzanettiSaviq: strangely it didn't conflict here though19:31
Saviqmzanetti, ok let's see what train says, to reproduce conflicts I sometimes had to do exactly the merges the train did19:33
Saviqmzanetti, in the same order (well, those that touch the conflicting file)19:33
mzanettiyeah... but now the prereq branch should change that hopefully19:34
Saviqmzanetti, yeah, merged fine here19:35
mzanettiok, great19:36
Saviqoof, it merged...19:46
mzanettiSaviq: thanks19:48
Saviqmzanetti, U219:52
mzanettiSaviq: oh, btw... I have my dogfooding phone in the locked up state atm. anything useful I could get out of it?19:55
Saviqmzanetti, ideally connect to it with gdb19:55
Saviqgdb -p `pidof unity8`19:55
mzanettiyeah19:55
Saviqmzanetti, and start installing symbols to get as much out of it as possible19:55
mzanettiattached, but obviously no symbols around yet19:56
Saviqyup19:56
Saviqmzanetti, do you have your df phone rw?19:56
mzanettiSaviq: yep, but otherwise still pristine19:56
mzanettiwell, upgraded since half a year with OTA19:56
Saviqmzanetti, well, now's the time when it will stop ;)19:57
mzanettiI figured, yeah :D19:57
Saviqmzanetti, but it's easy to just get a pristine image19:57
Saviqmzanetti, system-image-cli -b019:57
Saviqit will dl a full image and replace the one you have19:58
mzanettiyeah. I'm not so worried about it... the address book is messed up anyways still19:58
mzanettiso I might even take the chance to start from scratch after half a year19:58
mzanettiSaviq: I still have a bit more space for dbgsyms before I'll trash it. If you see anything suspicious here's what I have so far http://paste.ubuntu.com/7771851/20:11
=== salem_ is now known as _salem
Saviqmzanetti, as dednick mentioned, QWaitCondition in thread 32 looks interesting20:16
Saviqand 31, for that matter20:16
Saviqoh huh20:16
SaviqrequestAuth is not something I'd expect20:17
mzanettioh yeah... that's interesting indeed20:17
Saviqmir::frontend::Surface::swap_buffers_blocking20:17
Saviqwonder if it didn't resume rendering after resuming from suspend...20:18
mzanettihere's one with moar symbols in that areas: http://paste.ubuntu.com/777189820:20
mzanettiSaviq: clock is still at 13:3120:20
Saviqmzanetti, well, yeah, that just means it hung ~that time20:20
Saviqand snapshotting...20:21
mzanettiSaviq: snapshotting?20:22
mzanettiSaviq: ah... so, think I should install any other dbgsyms?20:22
Saviq__invoke<mir::scene::SnapshottingFunctor>20:22
Saviqmzanetti, you got qtdeclarative5-dbg yet?20:23
Saviqkgunn, we might need to escalate bug #133970020:28
ubot5bug 1339700 in unity8 (Ubuntu) "Device locks randomly on welcome screen" [Critical,Confirmed] https://launchpad.net/bugs/133970020:28
kgunnyeah...i was just wondering20:28
kgunnSaviq: is mterry on it already ?20:29
Saviqkgunn, it reached blocker status today, not easy to reproduce20:29
kgunnor are you saying we need some outside help ?20:29
Saviqkgunn, I'd like Mir folk to have a look at the symbols at least20:29
kgunnno problem...20:29
mzanettistill downloading qtdeclarative-dbg here20:29
mzanettiwill post the updated ones to the bug20:29
Saviqmzanetti, thanks20:30
Saviqkgunn, I posted a few things looked suspicious to me20:30
kgunnSaviq: ok, i'll get someone....i gotta reboot my machine is being hateful20:30
mzanettithat didn't help much20:38
kgunnSaviq: so i actually have a N4 stuck in the state of locked screen freeze..is there anything you need or i can do ?20:40
Saviqkgunn, nothing special, no20:42
Saviqkgunn, I think we have enough data that now someone just has to sit down and get into a gdb session with a locked-up phone20:44
mzanettistill installing qtbase, as one of the QWaitcondition threads starts in there...20:45
mzanettimaybe I can get a little more out. but for sure not much20:46
mzanettiSaviq: unless you see something else I would reboot the phone then to have it usable again20:46
kgunnSaviq: so AlbertA is gonna take a look...20:51
Saviqmzanetti, yeah, nothing else20:53
Saviqkgunn, thanks20:53
=== _salem is now known as salem_
Saviqmzanetti, we'll need a little more work on the draggable launcher icon, I get a frame or so of the old icon when dragging different icons21:10
=== ajmitch_ is now known as ajmitch
=== salem_ is now known as _salem

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