/srv/irclogs.ubuntu.com/2011/06/01/#launchpad-dev.txt

sinzuihuwshimi: mumble?00:01
huwshimisinzui: Sure00:02
lifelesssinzui: added; please give another once-over. Thanks!00:04
lifelesshmm00:33
lifelesshow does the lp wiki get wikinames these days?00:33
lifelessSSO or LP ?00:33
* sinzui wants to know that answer00:33
sinzuiwe can close about 8 bugs id LP is not involved00:33
lifelesshloeung: hi00:33
hloeunglifeless: Hi00:34
lifelesswe're wondering how dev.launchpad.net gets its wikinames for users logging in via openid00:34
lifelessis it via the SSO service00:34
lifelessor via LP00:34
wgrantlifeless: Wikinames? Doesn't it just use usernames?00:34
wgrantIt's not like the old days of the Ubuntu wiki.00:35
lifelesswell, consult - https://dev.launchpad.net/UserPreferences00:35
wgrantHm?00:35
lifelessif someone does a timestamp00:35
lifelessit uses their wikiname00:35
lifelessbut there is no ui to set it00:36
wgrantHmm, true.00:36
lifelessso presumbably its coming from openid or *something*00:36
NCommanderwgrant: so I'm trying to poke dominator to handle my arch_any_all skew test case, and I'm really concerned about performance. To determine if a skew has happened, we need to query each SPH for a given binary package, and check to see what has published where. That's not going to be DB friendly ...00:36
wgrantBut it gets it through SSO, which doesn't expose wikinames.00:36
wgrantMaybe it just uses displayname.00:36
lifelesswe're about to delete wikinames from lp00:36
lifelessif that table is replicated to sso00:36
wgrantIt's not.00:36
lifelessI can imagine Bad Things Happening00:36
wgrant\d lp_<TAB>00:36
lifelessNCommander: indeed. That would be fail.00:37
NCommanderRight00:37
wgrantNCommander: What is the algorithm you are using?00:37
wgrantWe do far worse queries in the dominator now.00:37
NCommanderwgrant: I haven't written one yet00:37
NCommanderwgrant: well, for each BPPH, I need the SPH to grab the binary packages it generates, and then checks the dependencies to see if they would still be satisifiable if a package was marked SUPERSEDED00:38
wgrantNCommander: I don't think you can sensibly parse dependencies.00:39
wgrantNCommander: that is going to be terribly slow.00:39
lifelessif they are modelled in the db we can do it00:39
lifelessrecursive query00:39
cody-somervillewgrant, why does it have to be slow?00:40
lifelesscody-somerville: death by a thousand cuts00:40
NCommanderIdeally, I want LP to make sure the archive is in an installable state00:40
lifelessNCommander: you might like to look at the conflictchecker schema00:40
cody-somervilleNCommander, There are tools that exist that do just that.00:40
NCommandercody-somerville: your not catching the point00:40
lifelessNCommander: it handles in-db dependency queries to answer some very similar questions00:40
NCommanderThe archive should NEVER be uninstallable as it disrupts image building on ports architectures00:41
lifelessFWIW I agree00:41
NCommanderlifeless: right, but conflictchecker isn't run once an hour like the publisher :-)00:41
wgrantNCommander: The publisher is run every 5 minutes.00:41
* NCommander coughs00:41
lifelessNCommander: no, but it can handle a single package change in typically 50-100ms00:41
wgrantThe primary archive publisher is a special case.00:41
NCommanderlifeless: the dominator does the entire archive at once. Not on a per package basis. Given we have 17-20k binary packages, that's going to add up00:42
NCommanderfast00:42
wgrantNCommander: Not quite.00:42
lifelessNCommander: you don't need to recheck things that aren't changing.00:42
wgrantNCommander: I think they will still transition from Published->Superseded as normal.00:42
lifelessNCommander: you need to check the implication of things that *are* changing.00:42
wgrantNCommander: But Superseded will be included in indices, until removal is scheduled.00:43
wgrantNCommander: judgeSuperseded will implement this logic.00:43
NCommanderwgrant: as it stands, shouldn't it be PUBLISHED if it should be in the index?00:43
wgrantNCommander: It examines Superseded but uncondemned publications. It needs to implement this extension.00:43
wgrantNCommander: Yes, but we are not talking about as it stands :)00:43
NCommanderAt the risk of making a lot of pain for myself, but it might be saner to have a new PUBLISHED_SUPERSEDED status00:45
wgrantWhy?00:45
NCommanderinstead of making SUPERSEDED now be inconsistant w.r.t. to something publishing status00:45
wgrantAll tools can now handle multiple versions in the indices.00:45
wgrantSince Debian does it.00:45
NCommanderyes, but if I look at all SUPERSEDED packages, I no longer have an idea what may or may not be held in archive.00:45
NCommanderer, in the indices00:46
NCommanderIdeally, PUBLISHED_SUPERSEDED should also include a reason on why it hasn't left the incidies00:46
wgrantThe idea is that everything on disk will be in the indices.00:46
lifelessstuff in superseded is on disk, right ?00:46
NCommanderSo then SUPERSEDED should simply always be in the indicies.00:47
NCommanderuntil it reaches its execution time.00:47
wgrantlifeless: Partly.00:47
wgrantlifeless: status = SUPERSEDED AND dateremoved IS NOT NULL is on disk.00:47
wgrantGRAR00:47
wgrants/NOT //00:47
NCommanderwgrant: won't that become DELETED on the next publisher run?00:48
wgrantNCommander: No.00:48
wgrantSuperseded/Deleted/Obsolete are all final states.00:48
wgrantSuperseded == package was superseded00:48
wgrantDeleted == package was explicitly deleted00:48
wgrantObsolete == series went obsolete.00:48
NCommanderAh00:49
NCommanderSo as I read domination, the only thing that tells LP is something is SUPERSEDED is if it pops multiple versions of a given package00:49
NCommanderThat check needs to be made smarter00:49
lifelesshuh, no00:49
wgrantWhy?00:49
NCommanderbah00:51
NCommandersorry00:51
NCommandermy brain seized00:51
NCommanderso if I'm following you, the 'correct' solution is to have everything that is SUPERSEDED end up in the indicies until its execution time, and then modify deathrow to be smarter about what packages it brings death to.00:53
NCommanderam I in the right ballpark?00:53
* wallyworld grumpy. no coffee yet so far today. must rectify00:54
wgrantNCommander: Until its *condemnation* time.00:54
wgrantRemoving it at the time of execution would leave stuff 404ing a lot.00:54
wgrantWe have no maintenance people around right now, do we?00:55
wgrantlifeless: ^^?00:55
NCommanderWell, then the most straightforard thing to start off with is implementing that SUPERSEDED packages stay in indicies and fixing whatever breaks from that, then make deathrow smarter00:55
lifelesswgrant: in this tz atm ? I think not.00:55
wgrantlifeless: :(00:56
lifelessmaybe brad or someone.00:56
wgrantlifeless: There are unlanded cowboys :(00:56
lifelessthey can be reapplied in a pinch00:56
lifelesswhich sucks butwhatare yougoingtodo00:56
wgrantOr we just exclude germanium this time.00:56
lifelessright00:56
* NCommander makes a new LP branch for changing how SUPERSEDED is handled00:58
wgrantNCommander: We probably want to talk to Julian before you start on anything like this.01:00
NCommanderwgrant: fair enough. What time zone is he in?01:00
wgrantNCommander: He's UK01:00
wgrantSo BST.01:01
wgrantYay, I can self-review without lifeless killing me now.01:02
NCommanderright, so I will see him in ~8 hours01:02
wgrantNCommander: I hope not.01:02
NCommanderwgrant: ?, that would be at the start of his day01:04
lifelesswgrant: I would never kill you :)01:05
wgrantNCommander: Yes, but the middle of your night.01:05
wgrantHmm.01:06
wgrantIs my connection dodgy, or is LP sending empty responses?01:06
NCommanderwgrant: well, that's hat caffiene is for, but hopefully he will be up when I get up (and that your timezone overlaps somewhere in there)01:07
wgrantOverlap between the three of us is just about impossible.01:07
wgrantMaybe late my evening.01:08
wgrantHm.01:40
wgrantShipIt is inactive, but the bugs are still open?01:41
wgrantsinzui: Can we delete mailing-list-experts?01:43
wgrantsinzui: It's not a celebrity any more, and its only related artifact is the deleted mailing-list-beta-testers01:43
wallyworldwgrant: you have some changes to lazr-js for the picker entry rendering? i need to hack in the same area - i want to extract out the picker entry rendering to a method that can be overridden. if you are done i can merge in your branch before i start hacking02:33
wallyworldor i can take just your lazr-js changes for the affiliation rendering work and go with that02:35
wgrantwallyworld: Heh, no, the lazr-js changes are terrible hacks that need to be rewritten. And they're tiny. So you do your stuff, and I'll rework on top of that when you're done.02:41
wallyworldok. thanks02:41
LPCIBotProject windmill-devel build #159: STILL FAILING in 1 hr 6 min: https://lpci.wedontsleep.org/job/windmill-devel/159/02:59
timrcStevenK, hey... where are you guys pulling python-testtools from?  I'm not seeing 0.9.11-r189 on pypi (at least sudo easy_install "testtools>0.9.10" is not finding it) and I don't see it getting built in Ubuntu, either02:59
lifelessits not released yet I don't think03:00
lifeless__version__ = (0, 9, 11, 'dev', 0)03:01
lifelesstimrc: thats a snapshot03:01
lifelesstimrc: its in the lp download cache03:01
timrclifeless, ah... rocketfuel-get is my friend03:18
jtvhi folks03:22
wgrantMorning jtv.03:22
lifelessu03:30
lifelesshi jtv03:30
jtvhi03:31
jtvwhat does the "u" stand for?03:31
lifelessjtv: bigjools suggested we have a call w.r.t. the persona discussion - I'd be delighted to do that sometime today if you want.03:31
lifelessjtv: 'u' - up in gmail.03:31
jtvewin?03:31
lifelessyup03:31
jtv:)03:31
jtvJulian also suggested that we chat about another problem, but since I haven't had my coffee yet I can't even speak coherently about it03:32
lifelesswell there is no rush03:32
lifelessI'm still in my workday for at least another 1.5 hours, and probably significantly more03:32
jtvKnowing you, you'll probably throw in another 17 of overtime.03:34
lifelessyeah03:34
lifelessI just won't feel guilty about wandering off during those hours :)03:34
jtvGood!03:34
jtvWell, I've made a note of the time and will definitely get that coffee first.03:35
wgrantlifeless: Good plan to try GPGHandler first.04:13
jtvlifeless: the coffee is kicking in.  Yes, I'd be delighted to have a chat about the persona thing if you still have time!04:32
lifelesssure thing04:32
jtvlifeless: mumble?04:35
wgrantlifeless hates freedom.04:36
lifelessjtv: do you have canonical voip?04:36
lifelessjtv: failing that skype ?04:36
lifelessmumble to here is frankly terrible04:36
jtvI don't have the voip thing, no… let me start skype.04:36
StevenKwgrant: O hai. Where does one get testr?05:23
spivStevenK: from lp:testrepository, or packaged in https://launchpad.net/~testing-cabal/+archive/archive05:25
wgrantStevenK: apt:testrepository05:25
wgrantFail, gnome-terminal doesn't link that.05:26
wgrantapt://testrepository05:26
wgrantStill fail.05:26
wgrantAnyway, it's in the primary archive.05:26
StevenKspiv, wgrant: Ta05:35
=== almaisan-away is now known as al-maisan
=== Ursinha is now known as Ursinha-afk
StevenKIs anyone available to review?06:09
wgrantStevenK: What's up?06:10
StevenKwgrant: https://code.launchpad.net/~stevenk/launchpad/notify-announce-list/+merge/6306706:11
wgrantYou've probably had enough of my reviews lately, though.06:11
StevenKHaha06:11
wgrantAha.06:11
StevenKThis is a hopefully 1: short, 2: safe06:11
wgrantYeah.06:12
wgrantIt's not the branch I thought it was.06:12
StevenKNo, Julian subverted me.06:12
wgrantStevenK: You've not cleaned up archiveuploader. Your point is invalid.06:14
wgrantYou can wipe announcelist out of archiveuploader entirely, AFAICT.06:14
StevenKwgrant: I had not done so because I wasn't sure how much test fallout there would be.06:15
wgrantTest fallout is better than tech debt in the most tech debty part of the tech debt that is our codebase.06:15
StevenKwgrant: Let me wave the axe around more.06:15
wgrantThankyou sir.06:15
* StevenK tries to remember where else he saw it06:17
wgrantlib/lp/archiveuploader/uploadpolicy.py should be all that's left.06:18
wgrantExcept maybe tests.06:18
wgrantBut there probably aren't tests.06:18
wgrantBecause this is archiveuploader.06:18
wgrantAh, no, uploadpolicy.txt tests it vaguely.06:19
StevenKI've just cleaned that up by removing the *ugly* property06:19
wgrantYup.06:19
StevenKHowever, I can recall something that took announce_list as an argument06:19
wgrantacceptFromQueue?06:19
wgrantnotify?06:19
StevenKlib/lp/soyuz/browser/queue.py perhaps06:19
* StevenK looks06:19
wgrantA whole lot of other stuff which was sick and wrong?06:19
StevenKLet me see if the test you mentioned is broken first06:20
StevenKI changed the file already, so finding it is a simple matter of grep06:21
LPCIBotProject windmill-devel build #160: STILL FAILING in 1 hr 9 min: https://lpci.wedontsleep.org/job/windmill-devel/160/06:21
StevenKwgrant: It was soyuz/scripts/queue.py06:25
wgrant:(06:25
StevenKI've cleaned it up too06:25
wgrantStevenK: Done.06:33
StevenKwgrant: Is http://pastebin.ubuntu.com/615643/ better?06:38
wgrantWorse.06:39
wgrantThat linewrap makes me sad.06:40
wgrantThere's a reason I did it the other way :)06:40
StevenKSure, but distroseries.changeslist is longer :-)06:40
wgrantIf you must have the BACKPORTS line wrap, put it on a separate line and indent it.06:41
wgrantComplex conditions want to be readable :(06:42
StevenKwgrant: http://pastebin.ubuntu.com/615644/06:42
wgrantStevenK: At that point you might as well just move the whole thing on to a new line.06:43
wgrantNo parentheses, and it's clearer.06:43
wgrantBut that is better :)06:44
StevenKwgrant: http://pastebin.ubuntu.com/615645/06:44
wgrantStevenK: Looks great, thanks.06:44
StevenKExcellent. I've also eradicated announce list from queue.py and its tests, so I'll toss it at ec2.06:45
wgrantPerfect.06:45
StevenKwgrant: Also, not arguing about my changes? What, are you sick? :-P06:46
wgrantThis is a largely unoffensive cleanup :)06:47
StevenKTis not large enough for my liking06:47
StevenKwgrant: Oh, was that your first code review?06:47
StevenK(As opposed to code*)06:47
wgrantWell, apart from the one yesterday where lifeless graduated me so he didn't have to find a mentor, yes.06:48
StevenKHaha06:48
* StevenK ponders a bug vs --no-qa06:53
wgrantno-qa06:54
wgrantlifeless: I see the notification on the blog... no issues with deploying the inTeam fix?06:56
=== al-maisan is now known as almaisan-away
lifelesswgrant: no issues07:29
LPCIBotProject windmill-db-devel build #354: STILL FAILING in 1 hr 5 min: https://lpci.wedontsleep.org/job/windmill-db-devel/354/07:31
wgrantlifeless: Thanks.07:33
wgrantYay07:54
wgrantI think person search works OK when karma is added.07:54
wgrantwallyworld: Do you have a newer query than the one you gave to lifeless yesterday>07:54
wgrantHmm.08:27
wgrantExcept team search.08:27
wgrantThis sort of completely breaks that.08:27
wgrantFail.08:27
StevenKwgrant: Is that wallyworld's branch, or something else?08:29
wallyworldwgrant: i've included one in the mp: https://code.launchpad.net/~wallyworld/launchpad/person-picker-results-order/+merge/6305708:30
wgrantStevenK: I have added karma to his query.08:30
wgrantAnd it works pretty well.08:30
wgrantIRC nicks and email addresses are awkward, though :(08:30
wgrantSince all we have is non-discriminatory prefix match.08:31
wgrantThey tend to dominate.08:31
wgrantKarma mostly sorts that out.08:31
wgrantBut something longer-term would be nice.08:31
jtvI've had quite enough of this bouncing.  Let's see if it gets better if I take wifi out of the loop.08:46
=== jtv1 is now known as jtv
jtvstub: I'm hoping to get a db review & patch number out of you for https://code.launchpad.net/~jtv/launchpad/db-bug-790161/+merge/6300208:52
lifelesswgrant: aggregate karma across the team ?08:53
wgrantlifeless: That would work for ranking people and teams separately.08:54
wgrantlifeless: But ranking them sensibly in a single listing borders on impossible.08:54
lifelessaverage the karma across the team08:55
wgrantThat might actually work.08:56
adeuringgood morning09:02
mrevellHello09:06
adeuringhi mrevell09:07
=== almaisan-away is now known as al-maisan
stubjtv: k09:35
jtvขอบ09:35
lifelessstub: evening09:39
stubjtv: Why is copy_policy free form test rather than something like an enum?09:43
stublifeless: yo09:43
jtvstub: otp09:44
stub(yeah you know me)09:44
danilosanyone knows if there's an easy way to fetch multiple persons (given by their self_links) using API without doing multiple round-trips to the server?09:52
wgrantYou can't.09:53
danilosor, how would one best export a tuple over the API for use in JS (I want to get a tuple (BugSubscription, Person, Person [subscribed_by]) from an API call so I don't have to do multiple round-trips, but I'd also feel that such API wouldn't really be the best publicly facing thing one might have; or maybe it would be)09:53
daniloswgrant: "yay"09:54
danilosI am guessing I'll have to define a separate interface holding this information, because I want a collection of such tuples; or, is there a way to force "shallow" (1-level) snapshotting of particular attributes on an already exported interface?09:58
lifelessdanilos: you're probably best off defining a custom view which can return the json youneed09:58
lifelessour API is hugely focused on types and URL mapping, sadly09:59
daniloslifeless, is that the practice we encourage? I kind of dislike that approach09:59
lifelessdanilos: to date folk generally throw their hands up and say 'man this is too hard'09:59
daniloslifeless, right, it's probably the simplest thing but the bug page is doing a bunch of that stuff and I'd rather do away with it (well, I'd still be able to get rid of 3-4 portlets, and introduce 1 new view, so it'd be an improvement, but I was hoping for 0)10:00
lifelessdanilos: I recall a page somewhere that exists just to give json to browser js scripts10:00
daniloslifeless, yeah, there's a few of those on the bug page, and some of them render the actual HTML that's loaded through AJAX (yuck)10:01
lifelessdanilos: the main API can do that too10:01
lifelessdanilos: I agree that its yuck. It makes the service proposal I have have some fugly bits10:01
lifelessdanilos: but all that said, I think if you have something pretty use case specific, putting it in the public API would be a little ugly10:02
daniloslifeless, right; still, useful to know that this is the approach I should take10:02
daniloslifeless, agreed, but if I need this (i.e. "get all subscriptions with subscriber Person fetched at the same time"), I am pretty sure public users might need it too10:03
daniloslifeless, but, then again it'd be opening a whole new can of worms, and I'd rather not go there10:03
lifelessright10:04
lifelessthere is a broad issue with the API and performance10:04
danilosyup10:04
lifelesslaunchpadlib cannot use point solutions10:04
lifelessit needs some (perhaps easy) infrastructure and a defined pattern for the solutions to fit into10:04
danilosok, thanks; I'll go with a view-provided JSON and load that on-demand, and I'll let you worry about coming up with nice infrastructure for this :P10:05
lifelessThere is a document about doing a V2 API by leonardr/benji/gary on the wiki10:05
lifelesscool10:05
wallyworldstub: hi. i was hoping you could give me a db patch number for the person.displayname index creation script. it's included in mp https://code.launchpad.net/~wallyworld/launchpad/person-picker-results-order/+merge/6305710:28
stubwallyworld: I landed a patch to add the person.displayname index already10:28
stubpatch-2208-60-1.sql10:29
jtvstub: back.  And that was opp, not otp.10:30
wallyworldstub: ok thanks. i thought you'd create the index but i needed to do the ptach still as part of my mp. i'll remove it.10:30
jtvstub: the boss specified a plain text field for the policy name because it's a bit easier to follow than an enum field.10:31
stubwallyworld: no probs. I tend to create the patches that I apply live, since the live version is usually very similar to what needs to land and I want to minimize chances of administrative screwups10:31
bigjoolsthe policies are named rather than enummed :)10:31
stubbigjools: enums are names stored as integers10:31
wgrantBut the names are crap :(10:31
bigjoolsSIGH10:31
bigjoolsnice constructive criticism there wgrant10:32
wgrant'insecure' doesn't make sense outside the uploader.10:32
wgrantThat is my only objection :)10:32
stubbigjools: Is there a fixed set of names, or are they freeform input of some sort?10:32
wgrantWell, it doesn't really make sense *in* the uploader either, but that's what we have.10:32
* bigjools lets jtv continue10:32
jtvstub: fixed set, for matching policy classes.10:33
stubSo what is the advantage of a text field over an enum for that? We know the advantages of enum over text field which is why we normally use them.10:35
jtvMostly that it takes us from a mapping between policies and names to a mapping between policies, names, and numbers.10:36
jtvNot lethal, but inconvenient.10:37
bigjoolsI am not wedded to names, switch it if you want10:37
stubThe enum infrastructure means it is a mapping between policies and enums, not between policies, names and numbers.10:37
* stub would love to use pg builtin enums, but not suitable for agile development until PG 9.110:38
jtvWell the enum provides a mapping between names and numbers; we'd add the mapping between names and policies ourselves.10:38
stubI don't follow. You reference enums as names, not as numbers using some external mapping repeating what the enum infrastructure gives you for free.10:39
jtvApart from getting ints in the database, of course.10:40
stubjob.copy_policy = CopyPolicy.ZAPIT10:40
stubRight. And you don't see then in the Python code.10:40
jtvWell, apart from the one place of course.10:41
jtvNot trying to argue, really; just describing the inconvenience.10:41
stubThere is small inconvenience creating the enum definition, but advantages to using it (smaller tables, no toast, faster lookups, smaller indexes, typo catching, faster python code). So unless there is a good reason, we should switch that column to an integer and use the standard pattern.10:43
jtvToast may be a bit of an exaggeration for this case.  :)10:43
jtvBut sure, I can switch it.10:44
stubI think the toast table gets created when the main table gets created10:44
jtvOh well10:45
stubI can list more rationalizations for enums too if you like :)10:45
jtvNo that's alright, thank you :)10:45
=== al-maisan is now known as almaisan-away
jtvstub: updated the patch.10:56
stubjtv: Ta. Does allowing NULL still make sense ('not set' vs. explicit enum value)?11:06
stubI expect so as not all jobs will use the field (?)11:06
jtvstub: that may depend a bit on where the class hierarchy goes, but I guess it would make sense for now to forbid it.11:07
stubif it makes sense, make it not null. Or leave it as nullable if we are not sure yet.11:08
jtvI'll make it "not null."  If we ever decide that's wrong, we can relax it.  Easier than going the other way.11:08
stubjtv: Unless we are mid cycle :)11:10
* stub isn't helping11:10
jtvWe'll just wake up an admin in the middle of the night to drop the constraint.11:11
stublifeless: did you see https://code.launchpad.net/~stub/launchpad/bug-758587-tests/+merge/63012 ?11:18
bigjoolsmake it default to the current "insecure" policy please jtv11:19
stubjtv: Did you find that cpu indicator yet?11:19
jtvbigjools: it seems to make more sense to do that in the code, not in the db.11:19
bigjoolsjtv: either is fine11:20
jtvAt the DB level I think neglecting to provide a value should produce either a null or an error, even if we do require a value for PlainPackageCopyJob.11:20
jtvstub: no, I don't have it yet11:21
LPCIBotProject devel build #771: FAILURE in 4 hr 52 min: https://lpci.wedontsleep.org/job/devel/771/12:04
=== almaisan-away is now known as al-maisan
jtvrvba: reviewed your branch12:19
rvbajtv: thanks a lot!12:21
jtvnp12:21
rvbaI'll reply to your comments once I've finished my chicken :).12:22
=== Ursinha-afk is now known as Ursinha
bachello mrevell13:23
=== matsubara-afk is now known as matsubara
wgrantHm.13:42
wgrantThat is a /lot/ of failurse.13:42
jelmerwgrant: it's so bad, it's even affecting your spelling :P13:49
wgrantThat's more the freezingness :(13:50
jelmerwgrant: of your machine or of your fingers ?13:50
jelmerhi matsubara13:50
wgrantThe latter.13:50
matsubarahi jelmer13:50
jelmermatsubara: I made some more progress on updating bzr - current work is at lp:~jelmer/launchpad/newer-bzr13:52
matsubarajelmer, cool. should I merge your branch into mine and run tests to see if the errors are fixed?13:53
matsubaraoh, you merged my branch :-)13:53
jelmermatsubara: it's too early for that, I'm still chasing some errors in bzr-git13:54
matsubarajelmer, ok, thanks for letting me know.13:54
mrevellHey bac#14:01
deryckHi, adeuring, abentley, and henninge.  You guys have the standup yet?14:13
abentleyderyck: no, waiting for you.14:13
henningederyck: we are chatting but waiting for youi14:13
henningeyui?14:13
deryckok, cool.  thanks.  coming....14:13
henningeyiu?14:13
henninge:-D14:14
deryckif mumble will ever connect14:14
cjohnstonhenninge: mornin14:16
abentleyderyck: do you want to Skype instead?14:17
deryckmaybe so.  let me try one more restart.14:17
henningecjohnston: Hi!14:18
henningecjohnston: otp now14:18
cjohnstonok14:18
cjohnstonmine still need to be worked on?14:18
henningecjohnston: the test run failed because of other errors. I just sent a mail to launchpad-dev.14:18
henningecjohnston: the branch should be fine now, I expect14:19
henningebut don't know for sure14:19
gmbIs anyone else seeing "AssertionError: Name "id-only" is not registered as a view or navigation step for "Person" on "mainsite"." OOPSes on launchpad.dev instances? It happens on pretty much every page.14:21
cjohnstonhenninge: ok.. If you get an answer, let me know please :-)14:21
gary_postermatsubara or Ursinha, will either of you have some time for some exporatory testing tomorrow?  And then we'll actually need some more probably Thursday of next week too14:34
matsubaragary_poster, yep14:35
gary_poster*exploratory :-)14:35
matsubaragary_poster, can you give me more details?14:35
gary_postercool, thanks matsubara, I'll send you details the start of my day tomorrow.14:40
gary_posterOverview: the better bug notification feature had two bugs that meant rewriting large chunks of UI.  We have one in db-devel now, and one will be ready for a no-downtime deploy after next Wed.'s downtime deploy.14:40
gary_posterTomorrow, we need to make sure that the intermediate changes we have are OK for a few days in production; then next Thursday we need to make sure that the final changes are OK.  Since they change a lot of code, and touch on a lot of the issues that were raised in the feature review, I thought exploratory testing would be a good idea.14:40
gary_posterMoreover, particularly for the intermediate changes, I know that we had hoped to get the final changes in before the db-deploy, so we were not as careful as we usually are, so another pair of eyes would be appreciated.14:40
gary_poster(done)14:40
matsubaragary_poster, sure thing. I'll wait for the details tomorrow and let you know once I have done the testing14:41
gary_posterthanks matsubara!14:41
benjiI don't know one way or the other.  Let me take a look real quick.14:41
gary_posterbenji, you and your channels :-P14:42
benjiso many channels, so few windows14:42
gary_poster:-)14:42
jcsackettStevenK: you still around?14:51
StevenKjcsackett: Barely14:51
jcsackettStevenK: fair. i posted a screenshot on the MP you requested one on. but if it's too late for you to take a look at it i can throw it to someone else.14:52
StevenKjcsackett: Link me the MP again?14:52
jcsacketthttps://code.launchpad.net/~jcsackett/launchpad/oh-oh-pick-me-pick-me/+merge/6304714:52
jcsackettscreenshot is in my reply to your comment, StevenK.14:53
StevenKjcsackett: Okay, I shall Approve. Do you feel it needs a UI review now or when it starts being used?14:54
jcsackettStevenK: i intended to get UI when it gets bolted in. until then it's too much of a pain for a UI reviewer to play with.14:54
StevenKjcsackett: Sounds fine. r=me14:55
jcsackettthanks, StevenK.14:55
deryckhenninge, shall we chat now?15:34
henningeser15:34
henningederyck: yes, just getting ready15:34
deryckmumble is acting up again15:36
=== abentley changed the topic of #launchpad-dev to: Performance Tuesday! | https://dev.launchpad.net/ | On call reviewer: abentley | Critical bugs:208 - 0:[######=_]:256
timrcIf a ppa is made public after its been made private do discard the buildd_secret as well?15:49
timrcdo we ^15:49
wgranttimrc: You can't change the privacy of a PPA after it has been used.15:51
wgrantOh, I guess you're working on the API export?15:52
timrcwgrant, right, but before it's been used you can... and so in that case, do we discard the  buildd_secret15:52
timrcwgrant, right...15:52
wgranttimrc: Yes, you need to discard it.15:52
timrcwgrant, cool, thx15:52
wgrantThe DB doesn't enforce it, but the secret would become public.15:53
LPCIBotProject windmill-devel build #161: STILL FAILING in 1 hr 8 min: https://lpci.wedontsleep.org/job/windmill-devel/161/16:04
adeuringabentley: fancy a small review (100 lines)? https://code.launchpad.net/~adeuring/launchpad/bug-750274/+merge/6312916:24
abentleyadeuring: sure.16:24
abentleyadeuring: r=me16:32
adeuringabentley: thanks!16:32
=== al-maisan is now known as almaisan-away
=== almaisan-away is now known as al-maisan
gmbsinzui: I'm looking at https://bugs.launchpad.net/launchpad/+bug/61531 at the moment and I could do with knowing whether it's something that the disclosure work is going to deal with.16:41
_mup_Bug #61531: Forbidden error when trying to mark a bug as private <403> <lp-bugs> <oops> <privacy> <ui> <Launchpad itself:In Progress by gmb> < https://launchpad.net/bugs/61531 >16:41
=== al-maisan is now known as almaisan-away
sinzuigmb: it is not a priority since we are focused on non-subscription mechanisms to provide access16:44
gmbsinzui: How far away is that work from being viable? I.e. is it worth me fixing the bug anyway just to make an OOPS go away or should I mark it low (or Invalid or whatever).16:45
sinzuigmb: Is this a case where ajax works and html does not?16:45
gmbsinzui: No, the problem is that either of them breaks. It's just that the HTML version breaks more obviously.16:46
gmbBecause you can mark the bug private but then you can't see it. With AJAX it's not immediately apparent there's a problem until you refresh the page.16:46
sinzuiSince the work is not scheduled, never. We will introduce pillar permissions in 2 months in conjunction with allowing owners to see who is subscribed to what...16:46
gmbOkay.16:47
sinzuibut there are no requests from stakeholders to change how subscription to individual bugs and branches works.16:47
gmbAh, right.16:47
gmbIn that case, I'll go fix it.16:47
gmbsinzui: Thanks for clearing that up for me.16:47
LPCIBotProject windmill-devel build #162: STILL FAILING in 44 min: https://lpci.wedontsleep.org/job/windmill-devel/162/16:48
sinzuigmb: I think this bug is really about Lp's privacy entitlement rules. We simply do not permit bugs to be private without also being security issues unless an admin has toggled the projects private bug rules.16:50
gmbHmm. I'm not sure that I understand what you mean. Are you saying that we shouldn't allow private bugs unless $SOME_RULE_FLAG is set to True?16:51
sinzuigmb: lp bugs conflates privacy and security. They are not equal since the issues are seen by different users. At this time, I think no user can toggle a bug private unless the project is configured to have private bugs. The any user can see and change security though16:52
cody-somervillesinzui, I don't think thats accurate.16:53
sinzuiIt will be16:53
gmbsinzui: This is the work that you're going to be landing in 2 months, right?16:53
sinzuiWe are separating security from privacy. We have always known Lp did not do a proper implementation16:53
gmbs/landing/releasing16:54
sinzuigmb yes16:54
gmbRight.16:54
gmbsinzui: In that case, I'll still fix the bug since the fix is cheap and it kills an OOPS.16:54
sinzuigmb When I change the bug supervisor, we will not suffer the subscription insanity. Though I can assign a team I am not a member of to the security contact, thus not have access to security bugs, I can change the role, and get access back16:55
sinzuigmb yep16:55
gmbHere's to not suffering insanity.16:55
cody-somervillelol16:56
cody-somervilleI read that as sufficient instead of suffering16:56
=== beuno is now known as beuno-lunch
=== salgado is now known as salgado-lunch
LPCIBotProject windmill-devel build #163: STILL FAILING in 44 min: https://lpci.wedontsleep.org/job/windmill-devel/163/17:32
=== matsubara is now known as matsubara-lunch
=== deryck is now known as deryck[lunch]
=== didrocks1 is now known as didrocks
=== sidnei_ is now known as sidnei
=== beuno-lunch is now known as beuno
=== salgado-lunch is now known as salgado
jkakarlifeless: FYI, I remember talking to smagoun at SomeHands last year and he mentioned he'd worked on/built a big system made out of many services connected by message queues.  You might want to ping him to get his input about your ideas for Launchpad.18:42
=== deryck[lunch] is now known as deryck
=== matsubara-lunch is now known as matsubara
lifelessjkakar: thanks18:59
jkakarnp19:00
=== almaisan-away is now known as al-maisan
sinzuilifeless: This is an example oops I have seen when we attempt to store that exceeds MAX_EMAIL_SIZE:19:32
sinzuiInvalidEmailMessage: Msg <...> size 13947097 exceeds limit 1048576019:32
sinzuisee lib/services/messages/model/message.py19:33
lifelessyes19:33
lifelessthats a large incoming mail ?19:33
lifelesswe shouldn't record that as an OOPS, its out of our control. Hmm, but the mail path should match that.19:34
lifelessI see your point.19:34
lifelesseven with that set we'd still have trouble.19:34
sinzuiIn a round about way mailman > holds > lp store it for review19:34
lifelesssinzui: do mailman list messages go through this code path ?19:34
lifelesss/that set/incoming mail size limited in postfix/19:35
sinzuilifeless: only the hold path. and mailman now knows not to send the entire message19:35
sinzuiit also knows to only forward the text part as well19:35
lifelessok19:36
sinzuiSo Lp does not oops no19:36
sinzuinow19:36
lifelessso for lists.launchpad.net we allow bigger19:36
sinzuiwe *could*19:36
lifelessbut the postfix setup anything for @launchpad.net should limit to 1048576019:36
lifelessbecause our code path enforces that anyway19:36
sinzuiI believe it is currently configured to be lower19:36
lifeless50MB19:37
lifelesswhich is, I believe, somewhat larger :)19:37
=== Ursinha is now known as Ursinha-afk
lifelesssinzui: I had a question for you19:48
lifelesssinzui: why do we blacklist -owner as a team/person name.19:48
lifelesssinzui: is it because we wouldn't be able to give the object a mailing list ?19:49
lifelesssinzui: and if so, I'm confused because having the owner of list foo as a list itself sounds darn cool19:49
sinzuilifeless: I honestly do not know.19:50
* sinzui looks at nameblacklist19:50
sinzuilifeless: mailman does routing based on naming convention. http://www.gnu.org/software/mailman/mailman-install.txt19:52
lifelesssinzui: yeah, I realise we'd need to smack mailman upside the head a little19:53
sinzuilifeless: mailman3 aka a restful lib might be easy to smack19:54
lifelessyeah19:54
lifelessso lets leave it for now, I wanted to confirm I understood it properly - thanks19:55
LPCIBotProject windmill-db-devel build #355: STILL FAILING in 1 hr 5 min: https://lpci.wedontsleep.org/job/windmill-db-devel/355/20:02
LPCIBotYippie, build fixed!20:03
LPCIBotProject devel build #772: FIXED in 4 hr 56 min: https://lpci.wedontsleep.org/job/devel/772/20:03
benjiabentley: do you have a minute for a simple review? https://code.launchpad.net/~benji/launchpad/bug-719637/+merge/6315920:30
abentleybenji: sure.20:30
benjicool20:30
abentleybenji, do you know about the lp.testing.temp_dir context manager?20:33
benjiabentley: I do now. ;)20:33
abentleybenji: why are you deleting the directory in setUp?20:35
benjiabentley: that was some copy-pasta; I just realized that the entire setup and teardown methods are unneeded; I've pushed a change to remove them20:36
abentleybenji: excellent.20:36
abentleybenji: in 9-14, are you actually considering throwing an exception or reporting an OOPS?20:39
abentleybenji: nm, I must be seeing things.20:39
abentleybenji: r=me.20:39
benjicool, thanks!20:40
jcsackettsinzui: i just threw up the MP for the branch that links the new YUI personpicker into the web ui. i requested you as reviewer, if you don't mind, since it needs UI as well as code.20:45
benjigary_poster: I used (a slightly modified version of) the lp2kanban script to update a card for me and it wanted to change the card with title "This will be closed automatically by doing this feature [I should not get bugmail when I am subscribed via an invalid bugtask]" to the real title for bug 380205...20:51
_mup_Bug #380205: Invalid bugtasks should not cause emails for structural subscriptions <email> <lp-bugs> <story-better-bug-notification> <Launchpad itself:Fix Committed by yellow> < https://launchpad.net/bugs/380205 >20:51
benjiso if you want to run the script against the board, know that that'll happen20:52
gary_posterbenji, good to know20:52
gary_posterbenji, I wonder if script should only be willing to change title if the current card's title is a certain string, or maybe less than N chars or something20:53
gary_poster(unless you explicitly request it somehow?)20:53
gary_posterIf we tweak a title we miht have a reason for it20:54
gary_postermight20:54
benjiwell, if we went that route it would be better to some how mark the card as robot-managed20:54
gary_postermaybe title would have short prefix?20:55
benjifor example, if I enter a card, putting in the bug ID, the script fills in the details, then I edit the bug title, I'll want the new title updated on the card20:55
gary_posterunderstood20:55
gary_posteror suffic20:55
gary_postersuffix20:55
benjithat's possible, I have a slight preference for the rule being "if it has a bug number (external ID), then it is externally managed"20:56
gary_posterthat's pure but not as flexible as I think I want.  I s'pose we could try it out and see how much it chafes me20:56
benjiwe could then add an opt-out rule instead of an opt-in rule20:56
benjitag the card with "keep your grubby robot hands off me"20:57
gary_posterthat would be fine-ish, but if instead it is an opt-in, and a card that is synced initially will get the opt-in mark by default, then we might get the best of both worlds: by default, things are synced, but it's clear what to delete if you want to stop the syncing20:58
benjiI like that better.20:58
benjigary_poster: I'll add a card for that functionality.20:59
gary_postercool benji20:59
LPCIBotProject windmill-devel build #164: STILL FAILING in 1 hr 8 min: https://lpci.wedontsleep.org/job/windmill-devel/164/21:10
=== Ursinha-afk is now known as Ursinha
=== Ursinha is now known as Ursinha-nom
jcsackettsinzui: can we remove the card for bug 669933 given its resolution?21:15
_mup_Bug #669933: person picker could accept extra criteria to find a user <disclosure> <lp-registry> <person-picker> <Launchpad itself:Won't Fix> < https://launchpad.net/bugs/669933 >21:15
sinzuijcsackett: yes, we can delete it21:16
jcsackettcool, done.21:16
=== al-maisan is now known as almaisan-away
LPCIBotProject windmill-db-devel build #356: STILL FAILING in 41 min: https://lpci.wedontsleep.org/job/windmill-db-devel/356/21:51
=== abentley changed the topic of #launchpad-dev to: Performance Tuesday! | https://dev.launchpad.net/ | On call reviewer: - | Critical bugs:208 - 0:[######=_]:256
LPCIBotProject db-devel build #605: FAILURE in 2 hr 55 min: https://lpci.wedontsleep.org/job/db-devel/605/22:04
=== Ursinha-nom is now known as Ursinha
=== salgado is now known as salgado-afk
LPCIBotProject windmill-devel build #165: STILL FAILING in 45 min: https://lpci.wedontsleep.org/job/windmill-devel/165/22:37
=== matsubara is now known as matsubara-afk
lifelesspoolie: when you're around, I would like to talk about bzr formats and lp23:04
sinzuiwgrant: wallyworld: jcsackett. I will be 15 minutes late to the stand up.  Sorry.23:49
wallyworldnp23:50

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