/srv/irclogs.ubuntu.com/2011/03/21/#launchpad-yellow.txt

=== Ursinha is now known as Ursinha-afk
danilosgmb, hi, do you happen to know if we are using ~yellow/lp/accordionoverlay branch for both feature work 1 and 2, or should I branch off something else for 2?09:09
danilos(i.e. devel :)09:09
gmbdanilos: I can't wholly certain, but I *think* that that's the canonical branch to work from.09:29
danilosgmb, k, thanks09:30
gmbdanilos: It was last touched ~2 hours ago by Brad, which seems like a good sign.09:30
danilosgmb, heh, not for Brad though :)09:31
gmb:)09:31
danilosgmb, do you happen to have any idea how to best test error handling in JS?09:58
gmbdanilos: Not really. You could maybe force an error and then check that the right error message is displayed, but I don't know how error handling is set up for the accordion overlay, so I can't be of much help there.09:59
danilosgmb, well, it's not set up at all yet, but I generally want to test it works properly with things like XHR failures09:59
danilosgmb, (and I am trying to implement it, but I want to do TDD :)10:00
gmbdanilos: Best of luck :). But yeah, if you're checking that the overlay handles the error correctly then what you're basically checking is that it displays something sane to the user. So using the mock IO features to trigger the error and then checking the contents of the overlay should work reasonably well.10:01
danilosgmb, thanks for the suggestion, it sounds good, got any example of using mock IO features to that purpose? :)10:02
gmbdanilos: Let me see if I can find one in the tree. I remember writing something, but that may have been deleted. Gimme a sec.10:03
danilosgmb, cheers10:03
* gmb digs out an old branch10:06
gmbdanilos: So, this is a (now removed) test of the (now removed) bug subscription widget. http://pastebin.ubuntu.com/583265. See the use of Y.lazr.testing.MockIo.makeXhrSuccessResponse() (I assume there's a corresponding makeXhrFailureResponse()) and simulateXhr() functions.10:09
danilosgmb, great stuff, thanks a bunch!10:10
gmbnp10:11
danilosgmb, btw, you probably have found this out already, other than shutting down LP before getting the JS executed, any other suggestions for simulating this on a running instance?10:12
gmbdanilos: Well, you could probably use MockIO in your code (though that seems a bit nasty). Usually I just kill LP though, like you say.10:13
gmbdanilos: deryck might have a better answer for you.10:13
danilosgmb, k10:13
gary_posterhey gmb.  mute button has no more bugs?  If so, (1) yay! (2) I'll move it along to track the last bug (737648) and close the lane12:31
gmbgary_poster: Yep. Final branch is landing now.12:32
gary_posterawesome, congrats12:32
gmb:)12:34
bachi gary_poster -- i'm going to work now on putting the subscribe link on the bugs page12:46
gary_posterbac, great.12:47
gary_posterdanilo, +1 on X-Launchpad-Subscription12:48
gary_postersorry, danilos ^^^12:49
gary_posterhelp text: will get you file name...12:49
danilosgary_poster, cool, it's reviewed already, and the ec2 test is almost complete :)12:49
danilosgary_poster, excellent, I tried grepping but nothing turned up in the entire tree12:49
gary_posterdanilos, lib/lp/registry/help/structural-subscription-name.html in the ~yellow accordionoverlay branch12:50
danilosgary_poster, aaah :)12:50
gary_posterdanilos, reviewed/ec2 test: awesome :-)12:50
danilosgary_poster, I did this thing against "devel" branch, that's not a problem?12:51
danilosgary_poster, I can land it on both, or just on accordionoverlay if you think that's better12:51
gary_posterdanilos, no.  We should just merge devel once what you have done has landed12:51
danilosgary_poster, ack12:51
gary_poster"no" as in no problem to be clear :-)12:51
danilosyeah12:51
danilosgary_poster, btw, should I update the LEP as well? (just to avoid confusion)12:54
gary_posterdanilos +1 thank you12:54
=== Ursinha-afk is now known as Ursinha
gary_posterdanilos, did you ever file a bug for the make jsbuild problem?  I don't even remember what it was any more :-P13:02
danilosgary_poster, heh, I didn't, I haven't been able to reproduce it lately, but I want to try another thing (create a new .js file and see if that one gets included in the generated launchpad.js) before I consider it 'resolved/obsolete'13:03
gary_posterack danilos.  I'll leave it as an action until you do.13:04
danilosgary_poster, the problem was that I had to run "make" for some changes since 'make jsbuild' wouldn't pick them up13:04
gary_posterah ok13:04
danilosgary_poster, it's likely not to be a problem, but I'll try to get to checking it out later today13:04
gary_postercool danilos thanks13:04
danilosgary_poster, re help text, should we add anything about the text in the body of the email?13:07
gary_posterdanilos, yeah +1 thanks13:07
gary_posterbac, btw I looked at the Cancel button styling over the weekend.  The issue is that some of the LP CSS sets padding to 0 for buttons, but not for input[type="submit"].  Therefore cancel has 0 padding, and submit has browser-native padding (6 3 2 or something like that on Chrome).13:20
gary_posterThe way to fix is to set padding to both explicitly.  There is no "auto" for padding so we can't tell the button to get the same browser-native styling.  We could turn off the padding directive in LP, or add input[type="submit"] to the same list as the button directive; or we could set something explicitly just for our form overlay.13:21
gary_posterSince I have a complete absence of a feeling of authority over our launchpad CSS, I lean towards the last approach.13:21
gary_posterBut anyway, that's the story.  Maybe you knew it already.13:21
bacgary_poster: interesting.  i did not know as i only noted the problem but hadn't investigated13:21
gary_postercool13:21
gary_posterbac, I tried to think about the tag validation problem this weekend too.  I'm inclined to figure out a good solution for our overlay first, and contemplate refactoring it for the general tag packer later, maybe on bug rotation if it is marjed as critical (ha ha?).  I'd rather not pay for the time right now.13:26
gary_posterBut as to options for our overlay, I came up with showing an error indicator; normalizing after the field loses focus and telling the user what you did (my preference ATM); and disallowing characters as they type.  I suspect there are many other options too.13:26
gary_posterWould you like to be my pre-imp for this, or should I approach someone else (Graham being an obvious option)?13:26
bacgary_poster: i'd like to talk about it13:27
gary_postercool13:27
gary_postermaybe after the call13:27
gary_posterthough feel free to write on IRC any thoughts now13:27
gary_posterbac benji danilos gmb, kanban/mumble in 213:28
gmbYup13:28
gary_posterdanilos yoo hoo13:30
gary_posterbenji, irc or mumble?13:43
benjigary_poster: mumble would be good; you can either wait for me to review what I was doing or we can do it real time, performance art style13:43
gary_poster:-) k 1 sec13:44
gary_posterbenji, which would you prefer?  I can run do someting else for a sec if you like, or I can talk now.13:45
benjigary_poster: I'm up to date now, lets go.13:46
gary_posterk13:46
gmbgary_poster, bac: Is there any reason not to style the submit and cancel buttons as they're styled on all the other FormOverlays? (i.e. Green tick for OK, Red cross for cancel)?14:01
* benji reboots.14:04
bacgmb: sounds good tome14:06
bacto me14:06
gmbCool.14:07
gary_postergmb +1 fwiw14:13
gmbRIghto.14:13
gmbgary_poster, bac: How should I go about getting this into the ~yellow/accordionoverlay branch? Should I just push it up there?14:16
bacthat's what i've done but it seems now we need to be more coordinated.  how do we handle splitting off the 'server' changes?14:17
gmbbac: I don't know the answer to that, TBH.14:22
gmbI'll merge and push for now. It's a smallish change.14:22
gary_posterbac, gmb: don't worry about the server changes. I'll split those out when I get to it.  If I discover that coordination would help then, I'll mention it then.  For landing, actually having a local checkout to which we merge would probably make the most sense, but as long as you don't --overwrite, I don't think it's a huge deal.14:34
gary_posterI've been doing something similar but a bit different.14:34
gmbgary_poster: Does the card go in the review lane or somehwere else?14:46
gmb(How I love using two different apps to track development)14:47
gary_postergmb, review, but let me clean outthe ones we talked about today one sec14:47
gary_postereh, sorry, I was just afraid you didn't have enough room, gmb.  You can put it in review now14:48
gmbCool14:48
* gmb does some more Kanban gardening.14:48
gary_postergmb, bac, danilo, 9 JS tests in ~yellow accordionoverlay branch fail.  I get several alerts that say '"Subscribe to bug mail" link not found'.15:17
gary_posterIf that doesn't ring a bell for anyone I'm happy to dig in15:17
gary_posterbut I want to check first15:17
bacgary_poster: i'll look.  sounds like my handiwork15:17
gary_posterthanks bac15:17
gary_posterbac, please lemme know when it is resolved, or if you want me to take over.  I have something to land that is waiting.15:18
bacgary_poster: are the failures all in test_structuralsubscription.html?15:18
gary_posteryes bac15:18
* gary_poster didn't notice the other one15:18
gary_posteror, barely did15:18
gmbgary_poster: That might be to do with my update just now.15:19
gmbLet me check.15:19
gary_posteroh ok15:19
gmbOh.15:20
gmbHmm.15:20
gmbNo, I don't think it is.15:20
* gmb digs some more15:20
gary_posterbac, benji, gmb, danilos, I'm going to start figuring out a server side branch from ~yellow...accordionoverlay, so please let me know from here on out if you have a server-side bugfix (or otherwise important change) going in to that branch.15:21
benjiok15:22
gmbRight15:22
gmbgary_poster: So, that alert is because there's no link in hte test HTML page for the setup code to bind events to. Easy to fix. It doesn't acutally make all the tests pass though.15:26
gary_postergmb, ok, one step at a time, I guess15:26
gmbgary_poster: Right. Anyway, I've fixed the initial problem and pushed it. Do you want me ot take a look at the test failures themselves too?15:26
gary_posterbac said he was looking at those, so let's check with him.  bac?15:27
bacgary_poster, gmb: when i changed the code to generate a hidden menuu link (rather than just looking for the global actions portlet) i failed to update the tests15:28
bacso i just need to create the expected element in the fake test html page15:28
gmbbac: I fixed the tests by just bunging a link into the page HTML.15:28
gmbI've pushed that, FWIW.15:28
bacoh, ok15:28
bacyou added a menu-link-subscribe_to_bug_mail?15:28
gary_posteron another topic, here's my plan for the server side branch.  Please object/counsel sanity if necessary.15:28
gary_posterI'm going to branch devel, then bzr merge accordionoverlay, then bzr revert --forget-merges, then take out the changes that are not pertinent to the server side, and then commit.  Then I'll merge the new branch into accordionoverlay, and resolve any conflicts.  IME bzr is usually pretty good at handling identical changes.15:29
gary_posterAt that point we should be in pretty good shape for merging accordionoverlay itself as the clientside branch15:29
bacgmb: ^^ ?15:29
gary_poster(sorry for mixing topics :-/ )15:29
gmbbac: Yes.15:29
bacgmb: what other test failures are you referring to?15:29
gmbgary_poster: I'm going to just nod vacantly at this point about your plan. It sounds fine - I didn't know about --forget-merges - and I trust bzr to DTRT 9 times out of 10.15:30
bacwe should probably throw an error when the link isn't found rather than an alert15:30
gary_postergmb :-) ok15:30
gmbbac: Yes, I think so.15:30
gmbbac: Let me paste the test log for you.15:31
bacgmb: thanks15:31
gmbbac: Anything that is using simulateMouseEvent(), it seems. I'm guessing it's trying to do things to elements that don't exist in the test html.15:32
gary_posterdiff in our branch in test_milestone_table.js:15:43
gary_poster+    filter: 'raw', combine: false, fetchCSS: true // Do not check in15:43
gary_poster:-P15:43
gary_posterI'll fix later if no one else does (in the middle of something else)15:43
gary_posterbenji, I can't decide whether to include expose_user_administered_teams_to_js, expose_enum_to_js, expose_user_subscription_status_to_js, and any other similar friends from lp.bugs.browser.structuralsubscription in the server-side branch.15:46
gary_posterI'm inclined to include them, because right now the server-side changes are <1200 lines and the client-side changes are >1800 lines, so favoring the server-side doesn't sound too bad.  Any thoughts?15:46
benjiif it doesn't make the branch too large, I would be include them15:47
bacgmb: i fixed the tests and am about to push.  ok with you?15:48
benjihmm, 1200 is a bit big, but I guess Graham asked for it ;)15:48
bacgary_poster: i'll fix the test_milestone15:48
gmbheh15:48
gary_posterbenji, cool, thanks.  Well, my point was that 1200 < 1800 :-)15:49
bacgmb:  you ok with me pushing those fixes?15:49
gmbbac: Sure.15:57
bacdone15:57
gmbSorry, was OTP.15:57
bacnp, just didn't want to duplicate effort15:57
gmbRight.15:58
=== Ursinha is now known as Ursinha-lunch
benjigary_poster: which card would you like for me to work on between reviews?  "Hook up filter-display subpage into a page for bug targets." is non-low priority.16:23
* gmb -> afk for a short while16:38
gary_posterbenji sorry was otp16:53
* gary_poster looks16:54
benjinp16:54
gary_posterbenji that's a good one.  Let me do a pre-imp with you, because it touches on notes from conversation with Jono16:55
gary_posterbenji, do you want to talk now?  If not, I might get some lunch 'cause I am hungry16:57
benjigary_poster: I could use some lunch too; we'll do it afterward16:57
gary_postercool benji16:58
=== Ursinha-lunch is now known as Ursinha
* gmb returns17:14
* gmb returns17:14
gmbbac, gary_poster: Is there any tasks you'd particularly like me to pick up?17:32
* gmb winces at "Is" before a plural form, commits ritual suicide.17:32
bacgmb:  i'm in the middle of trying to figure out where to put the link on the bugtarget page.  if you want to pick up the feature-flagging you could do that.17:33
gmbbac: Won't those two collide?17:34
gmbbac: Oh, sorry17:34
gmbYou're working on the BugTarget:+index page. I'm thinking about the Pillar+index page.17:35
gmbbac: Sure, I'll take that on.17:35
bacok17:35
gmbI assume we want a separate feature flag from malone.advanced-subscriptions.enabled, since this work isn't ready to go live yet and most of that is.17:35
gmbbac, gary_poster ^^17:36
bacgmb: i'd assume so, though tied to that team17:37
gmbRight.17:37
bacif that makes sense17:37
gmbYep.17:37
gmbI agree.17:37
* gmb goes, does17:37
benjiok gary, ready when you are17:54
gary_posterbenji, ok.  Actually, on reflection over lunch, I think that one should wait on bac finishing what he is working on.  So...what should you do.17:59
* benji looks.18:00
gary_poster(the reason why it should wait is that AFAIK you will want to follow the pattern he has started18:00
gary_poster)18:00
gary_postergmb, sounds reasonable.18:00
benjigary_poster: how about "If an error occurs while patching a newly created filter, remove the filter."18:01
gary_posterbenji +118:01
benjik18:01
bacgary_poster: what task are you talking about waiting for me18:01
bac?18:01
gary_posterI have some notes from the call with jml.  I'm kind of in the mood to get some coding done, so I'll wait to get that out, but will make myself do it soon. :-P18:01
gary_posterbac, benji was going to look at adding edit links (e.g. links to https://bugs.launchpad.dev/firefox/+subscriptions) whereever you are adding add links18:02
bacgary_poster: ah, ok18:03
gary_posterpushed to ~yellow18:09
gary_postermerged devel, merged my initial server bits, pushed to ~yellow again18:24
gary_posterbenji, is there a reason why BugSubscriptionListView initializes the request in __init__ rather than initialize?  I think "initialize" is more typically where we put view initialization.  If this was any kind of considered choice, even in a very small way, I'll leave it as is and see what the reviewer says.  If it was not a considered choice, I'll switch it to initialize.18:29
benjigary_poster: nope, no good reason at all; I am only vaugly aware of initialize and it didn't cross my mind at the time18:30
gary_postercool thanks benji.18:30
benjiwhat is the gestalt of initialize?18:31
gary_posterit is formlib initialize/render (literally--we use formlib)18:31
gary_posterbenji, make sense, or would you like more detail?18:32
benjiyeah, makes sense18:32
gary_postercool18:33
bachi gary_poster, question on scope.18:47
gary_posterbac, hi18:47
bacare we enabling structural subscriptions on any bug target?  i.e. product, project group, distro, etc?18:48
bacthus far we've concentrated on product only18:48
gary_posterbac, yes18:48
bacok, that actually makes some things easier18:48
gary_posterthey are already enabled for all of those18:48
gary_postergood18:48
gary_poster(I mean, structural subscriptions are, not our work)18:48
bacbut means more page templates will need tweaking18:49
gary_posterok18:49
bacbut the existing links to +subscribe will be removed, right?18:49
bacsuch as seen on bugs.lp.dev/firefox18:49
* gary_poster looks18:51
gary_posterbac, yes18:51
bacexcellent18:51
gary_posterbenji, expose_user_administered_teams_to_js has an argument absoluteURL=absoluteURL.  Nothing uses it.  Should I remove it?19:09
benjiremove it and then run the tests, you will be enlightened19:09
gary_posterbenji, ah!  where are the tests?  I was going to try and write tests for those expose_* things and was staring glumly at the prospect.19:10
benjigary_poster: oh wait, you mean the function body doesn't use absoluteURL, yeah, sure remove it19:10
gary_posteroh ok19:10
gary_posterno19:10
gary_posterfunction body does19:10
benjiyeah, they should be tested19:10
gary_posterok.19:11
gary_posterI'm confused now though19:11
benjiheh19:11
gary_postercould you take a glance at browserstructuralsubscription.py line 373 ff?19:11
benjisure19:11
gary_posterthank you19:11
gary_posterit is used in the body19:12
gary_posterbut grepping for that function shows that nothing in the tree uses the pluggability it implies19:12
gary_posterI doubted you were using it for Jim's old speed hack19:12
benjigary_poster: heh, no; the tests are in lib/lp/registry/browser/tests/test_expose.py19:13
gary_posteryay!19:13
gary_posterlooking19:13
gary_posterbenji, is that not checked in, maybe?19:14
benjilet me double-check19:14
gary_posteroh, no there it is19:15
gary_postersomehow I missed it in my server branch.  sorry for the noise.  Why are the tests in registry but the code in bugs?19:15
gary_posterbenji ^^19:16
bacgary_poster: so did you talk with jml?19:17
benjigary_poster: I have no idea why it's where it is... oh wait, didn't the code move at one point?  I may have started when the code was in one place but failed to move the tests when the code moved.19:17
gary_posterbenji, ack.  will move it.  thanks19:17
gary_posterbac, yes. big picture: please with what we have done.  A few small tweaks here and there.  I intend to write it up fully, when I get the energy.  here are some medium-level picture bullet points from jml:19:19
gary_poster* I've filed bug 739515 about the pixel shifting.19:19
gary_poster* Huw should look at the accordion dialog & make it pretty19:19
_mup_Bug #739515: Portlet contents shift down while loading bug subscription form <story-better-bug-notification> <Launchpad itself:Triaged> < https://launchpad.net/bugs/739515 >19:19
gary_poster* Gary will ask gmb about whether we can push the + / - thing on19:19
gary_postermuting bug mail down further19:19
gary_poster* Gary will ping Diogo & I when accordion work is deployed, at which19:19
gary_posterpoint we'll decide to do another meeting19:19
gary_poster* Unsubscribe in anger should handle the case where I'm getting bug19:19
gary_postermail for a project because of team membership, allowing me to not get19:19
gary_posterbug mail that project19:19
gary_poster"I" is jml in that list)19:19
bacgary_poster: cool.  didn't mean to force a brain dump but was curious if you met19:20
gary_posterThen there are some little picture things like making sure that selct all and select none are the right colors ("Huw should look at the accordion dialog & make it pretty" is the subsuming poiint)19:20
gary_posterbac, np.  That was some copy-pastable bits19:20
baci'm +1 with huw making a prettifying pass19:21
gary_posterabsolutely19:21
bacgary_poster: an IDistributionSourcePackage is an IBugTarget -- but it doesn't look like you can have a structural subscription to it, e.g. https://bugs.launchpad.net/ubuntu/maverick/+source/mandvd19:36
bacduh, i should be looking at IStructuralSubscriptionTarget-s instead19:37
bacnm19:37
gary_posterbac, you can't because of code?19:37
gary_posterah yes, cool19:37
* gary_poster needs to pick up kids from school. back soon19:37
gary_posterpushed another branch to ~yellow20:07
gary_posteranother revision I mean20:07
=== Ursinha is now known as Ursinha-afk
=== Ursinha-afk is now known as Ursinha
bachi gary_poster, i'm making progress but the task has grown in scope.  unfortunately there is not much uniformity across all of the IStructuralSubscriptionTarget views and templates.  i think i'm working on the final set.21:00
gary_posterack bac21:00
gary_postersounds good21:01
bacand i'm calling it a day, for now.  spent the weekend installing wood floors and i'm beat21:01
gary_posterYeah, I was going to say I was quitting too21:01
gary_posterI'm tired too21:01
gary_posterTalk to you later21:01
bachave a good evening21:01

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