wgrantsinzui: How close is the merge QA?00:27
lifelesswgrant: thanks for backing out the batchnav landing00:34
wgrantlifeless: I see you've fixed p-r-f. Thanks.00:34
wgrantI'll be looking at the API timeout regression this morning.00:34
wgrantOnce I do a bit more QA.00:35
pooliehi all00:37
lifelesswgrant: awesome, thanks.00:45
lifelesspoolie: morning00:45
LPCIBotProject devel build #632: FAILURE in 4 hr 46 min: https://lpci.wedontsleep.org/job/devel/632/01:23
=== StevenK changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: StevenK | https://code.launchpad.net/launchpad-project/+activereviews
wgrantpoolie: OOPS-1929D68 (from bug #736421) doesn't sound like a qastaging OOPS...02:34
_mup_Bug #736421: Person:+delete timeouts : Connect the UI the merge jobs <merge-deactivate> <qa-needstesting> <timeout> <Launchpad itself:Fix Committed by sinzui> < https://launchpad.net/bugs/736421 >02:34
pooliemaybe i used the wrong domain?02:35
wgrantpoolie: Could you test on qastaging again?02:36
pooliei will02:36
wgrantWe need to get this QA'd ASAP.02:36
pooliei blame url completion02:36
poolieeither that or sunspots02:37
pooliehm so qastaging still thinks it has a ppa, even though i deleted the ppa from lpnet yesterday?02:37
wgrantpoolie: qastaging updates manually, every month or so.02:38
wgrantstaging updates once a week.02:38
wgrantYou might need DB hacking to get the PPA deleted :(02:39
wgrantBut that is easily done.02:40
wgrantpoolie: So, request deletion of the PPA, and we'll SQL it.02:41
poolieppa deletion is broken only on qas?02:41
wgrantSince the publisher doesn't run on qas, so it will stay DELETING forever.02:41
wgrantThe UI sets the status to DELETING, and then the publisher comes along, deletes it from disk, and sets it to DELETED.02:42
wgrantqas doesn't have a publisher.02:42
wallyworld_lifeless: is this one ok now? https://code.edge.launchpad.net/~wallyworld/launchpad/disabled-project-bugs-shown/+merge/5726503:17
lifelesswgrant: rereview ^ and I will mentor03:20
wgrantlifeless: I'm rereviewing another of wallyworld_'s branches at the moment, but I'll get to it soonish.03:21
lifelesswgrant: no panic03:23
wgrantNot for this, at least...03:23
StevenKwgrant: Would you accept http://pastebin.ubuntu.com/593393/ , or is it still dangeous?03:23
wgrantStevenK: Still dangerous.03:24
StevenKwgrant: Even though they don't share an archive?03:24
wgrantStevenK: The initialisation and the builds it creates will work, but will live you in a bad state.'03:25
wgrantWe need to either decided that that bad state is OK, or fix it.03:25
StevenKwgrant: What sort of bad state?03:27
wgrantStevenK: The source has some binaries identical, some different.03:27
StevenKwgrant: But we can even get that behavior with Ubuntu.03:28
wgrantStevenK: Oh?03:30
wgrantYou can't have two different binaries with the same name in the same archive.03:30
wgrantSo no, you can't.03:30
StevenKwgrant: Say 'libuser' is uploaded to Maverick, and it builds successfully on amd64, and i386, and fails on powerpc. The powerpc build isn't given back during Maverick's cycle. Natty opens, and the libuser amd64 and i386 binaries are copied in, and the powerpc build is re-created and is successful. So now we have some binaries identical and one different.03:30
wgrantStevenK: Not different: unique.03:31
wgrantThe source is still copiable. There is no binary conflict.03:31
StevenKYour concern is that if a series is derived while say, libuser is building we won't be able to copy the source?03:32
wgrantSomething like that.03:33
wgrantThis may be acceptable, but we need to think very carefully.03:33
wgrantAnd see if there is a way we can fix it, because it's a problem for PPAs too.03:33
StevenKwgrant: So even with that change, it's -1?03:34
wgrantStevenK: Until I see discussion of the potential damage, yes.03:35
wgrantPrimary archive corruption is not something to be taken lightly.03:35
StevenKI'm still failing to see how two seperate archives can impact each other.03:35
wgrantThey will not directly.03:36
StevenKwgrant: Okay, would you mind explaining how this damage could occur? I'm afraid I don't see it yet.03:37
wgrantStevenK: I can't think of a common case in this immediate feature that would be broken by the differing binary sets. But it is going to be very confusing, has potential to break future workflows, and is a problem that already plagues PPAs.03:39
wgrantIt is possible that the confusion is acceptable. We could declare that it is fine.03:40
wgrantBut we need to solve this at some point, and now is a good time to do that.03:40
wgrantUntil we've had this discussion it should not be permitted.03:40
wgrantCopies will not work unless the copied source and series has a superset of the binaries that are in the target archive.03:41
wgrantSo creating conflicting sets makes some copies impossible.03:41
StevenKwgrant: So, my current thought is this: I have a bug that states that derivation is impossible while builds are pending. The change I'm proposing helps with that, but I'm happy to open a new bug echoing your concerns and you, Julian and I can discuss it and come up with a solution?03:45
wgrantStevenK: It helps with that by potentially creating bad state. The correct solution should be discussed in the bug.03:45
StevenKRight, I can see that I'm only going to please you by having a fully correct solution.03:46
StevenKwgrant: I've reverted to the __nonzero__ call that was the other push-back, do I need to fix that properly too?03:47
wgrantStevenK: I will not let potential breakage in without a discussion of the potential breakage!03:47
wgrantParticularly when it comes to primary archives.03:47
wgrantPrimary archives are serious business.03:48
StevenKwgrant: I'm just frustrated, we've been arguing about this for hours!03:48
StevenKwgrant: So, yes __nonzero__, or no __nonzero__?03:53
wgrantStevenK: I do not strictly forbid it, but I suspect lifeless will.03:53
StevenKlifeless: ^03:54
lifelesshi guys03:54
StevenKwgrant: The reason I ask was we saw that SQLObject doesn't provide .is_empty()03:54
lifelesswhats up03:54
lifelessStevenK: it provides it03:54
lifelessStevenK: the interface declaration is bogus03:54
lifelessI looked this up yesterday03:55
StevenKlifeless: I couldn't do it with methodcaller() yesterday when I tried?03:55
lifelessStevenK: thats correct, because the security proxy is stopping you calling the method03:56
StevenKOh, sigh03:56
lifelessStevenK: your options are:03:56
lifeless - removeSecurityProxy03:56
lifeless - allow the attribute in a lp config.zcml03:56
lifeless - fix the interface declaration in storm/zope/interfaces.py03:56
StevenKThe last one sounds like the proper solution03:57
StevenKBut likely requires a new storm03:57
lifelessStormResultSet does not have __nonzero__, and I think its likely it won't ever, given the overhead of accidental evaluation.03:57
lifelessI'm having one of those days03:57
StevenKlifeless: lp:storm is fine to fix?03:57
lifelessI'll put a new storm together for you after I enicreamenate03:58
StevenKAfter you ... what?03:58
lifelessStevenK: lp:storm will break lp on two counts: datetime marshalling has changed, and we're running with a WITH patch that is still under review.03:58
StevenKNo wonder dict(1) didn't know the word03:58
wallyworld_poolie: 740338 (dup of 513591) doesn't seem to be an issue anymore. but 735290 still is. you last commented on the first bug mentioned on 2011-04-10. did you see that is was broken at that time?04:01
wallyworld_just trying to see if something has been fixed in the past few days04:01
* poolie looks04:02
pooliewallyworld_: hi04:03
poolieso jools was hitting bug 513591, and because of that he then hits bug 73529004:04
_mup_Bug #513591: Assignee selector on +filebug trashes form input due to missing javascript <dhrb> <lp-bugs> <regression> <story-ajaxify-dupe-finder> <Launchpad itself:Triaged by wallyworld> < https://launchpad.net/bugs/513591 >04:04
_mup_Bug #735290: changing Project drop down in project group +filebug loses all your work <ajax> <bugs> <Launchpad itself:Triaged> < https://launchpad.net/bugs/735290 >04:04
wallyworld_poolie: there around 9 dups of that bug04:04
wallyworld_poolie: the assignee selector is not blue anymore - the ajax link works04:04
pooliei think it's the 735290 part that makes it super annoying04:04
wallyworld_on qastaging and lp.net04:04
pooliebut 735 can still be hit in other cases, as described on that bug04:05
pooliethere are several other things that are very nearly dupes of it04:05
wallyworld_poolie: yes, so i'll fix the project drop down04:05
wgrantwallyworld_: Still blue for me.04:05
wallyworld_and others that i can see04:05
wallyworld_wgrant: ??04:05
pooliewell, really https://bugs.launchpad.net/launchpad/+bug/553946 is the key thing04:05
_mup_Bug #553946: JavaScript breaks ability to recover +filebug form data <bugjam2010> <lp-bugs> <story-ajaxify-dupe-finder> <Launchpad itself:Triaged> < https://launchpad.net/bugs/553946 >04:05
_mup_Bug #553946: JavaScript breaks ability to recover +filebug form data <bugjam2010> <lp-bugs> <story-ajaxify-dupe-finder> <Launchpad itself:Triaged> < https://launchpad.net/bugs/553946 >04:05
wallyworld_wgrant: works fine for me. wonder what gives?04:05
wgrantwallyworld_: The assignee selector on +filebug?04:05
wallyworld_wgrant: yes04:06
wgrantWhich browser?04:06
wallyworld_wgrant: ff404:06
* wallyworld_ think he will have to open ff304:06
wgrantIntriguing! FF works.04:06
wgrantOnly broken in Chromium.04:06
wgrantI didn't realise that.04:07
pooliei would be thrilled if that is fixed04:07
wallyworld_wgrant: still, even with js off or whatever, it's bad that people lose their work04:07
wallyworld_wgrant: not sure how to solve it though in the non js case04:07
pooliewhat happens in the non jscase?04:08
pooliea separate form?04:08
wallyworld_poolie: try ff :-)04:08
wallyworld_poolie: i think a separate page, yes04:08
wallyworld_poolie: haven't tried without js recently04:08
wgrantwallyworld_: The link should be hidden without JS.04:08
poolieanyhow imbw but i think the key thing there is not to dynamically add the textarea04:09
wallyworld_wgrant: forcing people to type directly into the assignee text field?04:09
wgrantwallyworld_: Yes.04:10
wallyworld_poolie: i haven't looked yet at the implementation, but you're talking about the deleting of people's work when the project changes when you refer to the textarea?04:11
thumperpoolie: want a catch up chat?04:11
wgrantNo other way to do it, really...04:11
wallyworld_wgrant: yeah, agreed04:11
* wallyworld_ wonders why it broke on chrome. will look into that04:11
* wallyworld_ needs food first04:12
pooliethumper: sure04:12
pooliewant to try voip?04:13
thumperpoolie: sure04:13
thumperpoolie: mumble or sip?04:13
pooliewhat's my name again?04:13
thumperpoolie: Martin04:13
poolieon sip04:13
pooliecan you try calling me?04:13
thumperI can tru04:14
lifelessStevenK: https://code.launchpad.net/~lifeless/storm/bug-759384 - am merging it up to our storm now04:21
StevenKlifeless: Are you self-reviewing, or are you looking for a +1?04:24
lifelessStevenK: neither, just letting you know04:26
lifelessStevenK: you can apply that locally to your unpacked storm egg to do your testing without waiting for me04:26
lifelesswgrant: what was that egg-info chicken04:26
StevenKlifeless: Love the docstring error that you corrected for __nonzero__.04:27
lifelessStevenK: yah. c&p FTW04:28
lifelessdist/storm- is in the download cache04:28
lifelessStevenK: do a bzr update there, and update the version in versions.cfg; then bin/buildout and you are good to go.04:29
StevenKI shall, after lunch04:30
lifeless https://bugs.launchpad.net/launchpad-project/+bugs?search=Search&field.status=New triage is falling behind04:50
wgrantIt would help if my bookmark was launchpad-project instead of just launchpad.04:53
* wgrant fixes.04:53
wgrantI guess bug #758758 wants to be moved to bzr?04:55
_mup_Bug #758758: bzr out of memory during auto-build <Launchpad itself:New> < https://launchpad.net/bugs/758758 >04:55
wgrantpoolie: ^^04:56
lifelessiz dupe I think05:02
wgrantOf a fix-released bug.05:02
wgrantSo not really.05:02
wgrantwallyworld_: Rereviewed your picker branch. Sorry about the delay.05:11
wallyworld_wgrant: np. i've had other stuff to keep me busy05:12
wgrantLooking at your disabled projects one now.05:13
StevenKlifeless: Your storm stuff has landed?05:22
lifelessStevenK: no05:23
lifelessStevenK: I've added an egg with it to the downloadcache05:23
lifelessyou just need to update your versions.cfg to use it05:24
lifelessI've proposed a branch to storm05:24
lifelessbut we're running a fork anyway05:24
StevenKOh, you have to got to be kidding me.05:30
StevenKIDistroSeries.section is a SQLObjectResultSet, but IDistroSeries.components is a list.05:31
StevenKAnd the XXX in IDistroSeries.components makes me sob.05:33
lifelessoh grah05:40
lifeless'incomplete bugs' links to 'expirable bugs'05:40
wgrantStevenK: components is a list for cachability.05:41
lifelesswgrant: so, in cases like this - task on bzr [core work happens there], task on lp [have to deploy the resulting work]05:46
StevenKwgrant: But then I can't just call is_empty() on it :-(05:46
wgrantStevenK: Yeah :(05:47
wgrantlifeless: I guess.05:47
StevenKwgrant: When IDistroSeries get Stormified, that point is moot, isn't it, since ResultSets can be easily cached?05:52
lifelesswgrant: its what we do elsewhere05:53
lifelessStevenK: ResultSet doesn't cache05:53
lifelessStevenK: and you can use storm queries on sqlobject base classes05:53
lifelessStevenK: so I'm confused about what you're saying/the problem you're facing05:54
StevenKlifeless: I'm just wondering if we can drop the list() in IDistroSeries.components05:54
lifelessStevenK: only if we stop using it05:55
StevenKSorry, I wasn't being clear, I don't mean now, I mean 'at some point'05:55
lifelessStevenK: thats what I mean05:55
lifelessStevenK: if we do a persistence layer like I'm threatening, we'll get rid of all query objects in model code05:56
lifelessStevenK: (so it wouldn't need listifying, it would /be/ a list)05:56
lifelessStevenK: alternatively, if we setifiy all our logic, we don't need the attribute05:56
lifelessStevenK: (but this makes quick-small hacks harder to write)05:56
pooliehi wgrant06:01
wgrantHi poolie.06:04
StevenKwgrant: +localpackagediffs on staging makes me sad06:10
StevenKBleh, more import policy violations06:13
StevenKwgrant: Can you look over https://code.launchpad.net/~stevenk/launchpad/ids-bugfixes/+merge/57270 again?06:13
wgrantStevenK: The lack of base versions?06:14
wgrantbigjools and I were looking at that last night.06:14
StevenKwgrant: That, but mostly the large number of DSDs with the same version in both Natty and Sid.06:16
wgrantAh, yes.06:16
wgrantHas that fix landed yet?06:16
StevenKjtv: ^06:16
wgrantHe's EOWed.06:16
StevenKAh, bah06:17
* StevenK checks kanban, then06:17
wgrantHe ec2'd it 10 minutes before my testfix.06:17
wgrantSo it probably just missed.06:17
wgrantI might throw it through again.06:17
wgrantOr you could. We probably don't want to wait until Monday.06:18
StevenKYeah, I'm happy to.06:18
StevenKIt's tiny06:18
wgrantlifeless: https://code.launchpad.net/~wallyworld/launchpad/disabled-project-bugs-shown/+merge/57265 and https://code.launchpad.net/~wallyworld/launchpad/assign-non-contributor/+merge/55869 would both like to be mentored.06:19
lifeless1.4 second tag summaries so far - with visibility but doublecounting on redundant subscriptions06:20
wallyworld_wgrant: poolie: that assignee link on the bug page works fine for me in Chrome :-/ wonder why it's broken for you?06:20
pooliewhich one?06:20
poolieon filebug?06:20
wallyworld_poolie: yes. the one that says "Find..." in blue. except for me it doesn't. it says "Choose..." in green :-)06:21
wallyworld_so, so far i'm unable to see the reported problem06:21
poolieit is blue for me and sends me to /people06:22
pooliewhich seems kind of weird for a non-js fallback06:22
pooliebut i think i've never wanted to click that06:22
pooliei know the ids of every person i want to assign bugs to06:22
wgrantwallyworld_: Let me see.06:22
pooliemy complaint with this page is just the more general issue that it breaks history06:23
wallyworld_poolie: agreed. i'm just curious as to why we're seeing different behaviour. but i think i need to add an option to not show the Find... if there's no javascript06:23
wgrantwallyworld_: Which URL?06:24
pooliethat would be fine06:24
wallyworld_wgrant: lp.net/someproject/+filebug06:24
wallyworld_lp.dev even06:24
StevenKwgrant: Right, after fighting with utilties/ec2, I've tossed it successfully.06:24
wgrantwallyworld_: Which domain? launchpad.dev, or bugs.launchpad.dev?06:25
wallyworld_wgrant: sorry, bugs06:25
lifeless+            qs = Y.lp.client.append_qs(qs, 'name', vocabulary);06:25
lifeless300+            qs = Y.lp.client.append_qs(qs, 'search_text', search_text);06:25
wgrantAlthough neither work for me, we've had cross-domain JS problems like this before.06:25
lifeless301+            qs = Y.lp.client.append_qs(qs, 'batch', BATCH_SIZE);06:25
lifeless302+            qs = Y.lp.client.append_qs(qs, 'start', start);06:25
lifelessdoes the javascript client manually track the batching implementation ?!06:25
wgrantlifeless: Yes, pickers have their own batchnav UI.06:25
wgrantI didn't realise they did it like that, though :/06:26
* lifeless deadhesks06:26
jtvwgrant: a db-devel merge caused some trouble, so it's back into EC206:26
wgrantjtv: It's a race!06:26
pooliewallyworld_: oh btw i like the assignee thing a lot06:26
wallyworld_wgrant: poolie: actually, it works for me using bugs.lp.dev but fails on bugs.lp.net. so something must have been fixed06:26
StevenKjtv: Ah, should I stop mine? :-)06:26
wallyworld_poolie: me too :-)06:26
poolie(i realize there are details to sort out but thumbs up anyhow)06:26
wgrantwallyworld_: What about qas? Which version Chromium?06:27
jtvStevenK, wgrant: did you try to land it as well?06:27
wallyworld_poolie: yeah, it's a first cut. it certainly can be improved but good to get something out there06:27
wgrantjtv: I asked StevenK to.06:27
wgrantjtv: Since you're not here.06:27
jtvWhich I'm not.06:27
StevenKjtv: I *just* threw it at ec2, so I'm happy to kill it.06:27
wallyworld_wgrant: broken on qas too. 11.0.696.43 beta06:28
wgrantpoolie: Oh dear, that whole form is constructed in JS?06:28
wgrantpoolie: This is revolting.06:28
lifelesspop quiz06:28
lifelessis subsecond tag / count aggregates acceptable ?06:29
pooliecunningly designed to disable browser history mechanisms06:29
wgrantNo, needs to be <1µs06:29
wgrantpoolie: Indeed!06:29
wgrantLet's see.06:29
pooliei spent probably 20m typing into it the other week06:29
pooliewas very sad06:29
wgrantI think we've all done that :(06:29
lifelesswgrant: Time: 17.281 ms06:30
lifelesswgrant: for bzr06:30
lifelesswgrant: Time: 743.434 ms06:30
wgrantlifeless: µs, not ms.06:30
lifelesswgrant: for ubuntu06:30
wgrantWhat :/06:30
StevenKwgrant: I get a Unicode error, you mean microsecond?06:30
lifelesswgrant: Time: 135.709 ms06:30
lifelesswgrant: ubuntu anonymous06:31
wgrantWhy is activateConstrainBugExpiration called on *every* page?06:31
wgrantWhen it's only used on Product:+configure-bugtracker?06:31
wallyworld_wgrant: since it works on lp.dev and not qas or lp.net, must be some issue with how we run prod vs local?06:31
* StevenK manages to get ec2 list to hang, so checks AWS by hand06:31
wgrantwallyworld_: Yeah... I'm trying to work out where we actually hook it up.06:31
wallyworld_wgrant: a lot of it uses the lp formk infrastructure06:32
wallyworld_the assignee is a IPersonChoice and there's a standard widget for that06:32
wgrantWe need a new creation form system.06:32
wallyworld_wgrant: vocabulary-picker.js.template is used and has some pararameters wired in06:32
wallyworld_wgrant: lp.app.widgets.popup.py is also part of it06:33
wallyworld_wgrant: it provides VocabularyPickerWidget06:33
lifelesshttps://bugs.launchpad.net/launchpad/+bug/758587/comments/10 for folk interested in the summary table06:34
_mup_Bug #758587: summarising bugs is expensive <timeout> <Launchpad itself:Triaged> < https://launchpad.net/bugs/758587 >06:34
StevenK"You should not import PrefixFilter from lp.services.log.logger" -- but it's in __all__? I'm confused06:34
wgrantStevenK: Not here it's not.06:34
StevenKwgrant: Here, r12811 of devel it is.06:35
wgrantStevenK: Erm.06:36
wgrant    'Nullhandler'06:36
wgrant    'PrefixFilter',06:36
wgrantWrong caps, and missing comma.06:36
StevenKAh ha06:36
wgrantSo we now have a NullhandlerPrefixFilter06:36
StevenKwgrant: Right, fixing. Thanks.06:36
wallyworld_wgrant: <tal:chooseLink replace="structure view/chooseLink" /> in form-picker.pt inserts the javascript from the vocabulary-picker.js.template into the page06:38
wallyworld_wgrant: but i'm not sure why it all works locally on lp.dev and not elsewhere06:39
wgrantwallyworld_: Maybe a race?06:39
wgrantwallyworld_: The form is loaded in a separate request.06:39
wallyworld_wgrant: maybe. looking into it as we speak.06:40
wallyworld_wgrant: you mentioned something though about setting cross domain issues?06:40
wgrantwallyworld_: That's not the problem here.06:41
wgrantJust something we've seen elsewhere.06:41
wgrantSo thought it was best to be exactly sure about where you were seeing it.06:41
wallyworld_np. didn't think so but just wanted to double check in case i was being stpuid again06:41
wgrantAh hm.06:42
wgrantI wonder if what we're doing is actually legal.06:45
wgrantI saw some similar strange JS-ignoring behaviour in your branch yesterday.06:45
wgrantAn XSS attempt failed.06:45
lifelessSpamapS: oh btw06:45
wgrant<b>, <i> etc worked fine, but <script> didn't.06:45
wgrantPerhaps Chromium doesn't like inserting JS like this.06:46
lifelessSpamapS: that api thing you had that was slow06:46
* StevenK waits for 90 second PQM06:46
lifelessSpamapS: was because you were querying 'related bugs'06:46
lifelessSpamapS: thats partly fixed in our 'next' schema06:46
SpamapSlifeless: OOH haha06:46
SpamapSlifeless: so "please show me all bugs and all their related bugs" ?06:46
wgrantStevenK: 90s? You mean 45s?06:46
lifelessSpamapS: show me all bugs I (filed, commented on, assigned to me, subscribed to)06:47
lifelessSpamapS: the commented-on clause required filtering across both ends of a 4 table join.06:47
StevenKwgrant: I've not seen that quick, it tends to take a bit to actually get the mail06:47
lifelessSpamapS: bug table seqscan is 4 seconds on its own.06:47
wgrantwallyworld_: http://poeticcode.wordpress.com/2007/10/03/innerhtml-and-script-tags/06:49
* wallyworld_ looks06:50
* wallyworld_ hates IE even more if that's possible06:52
wgrantwallyworld_: It's not just IE, though.06:52
wallyworld_wgrant: ok. but it's still fun to hate IE :-)06:53
StevenKlifeless: Can haz mentor on https://code.launchpad.net/~stevenk/launchpad/ids-bugfixes/+merge/57270 ?07:03
wgrantAh, sorry, forgot about that one.07:03
wallyworld_huwshimi: are you able to +1 on a ui review?07:08
huwshimiwallyworld_: Sure.07:08
wallyworld_huwshimi: it's that picker confirmation one you help me with https://code.edge.launchpad.net/~wallyworld/launchpad/assign-non-contributor/+merge/5586907:09
lifelessStevenK: whats source_interface: lp.soyuz.interfaces.distributionjob.IInitialiseDistroSeriesJobSource for ?07:13
StevenKlifeless: It's so the IDSJs can be run using cronscripts/run_jobs.py, and allows me to remove cronscripts/initialise_distro_series.py07:13
lifelesswhen would it have a different value ?07:14
StevenKWhen the interfaces moves, if ever07:14
StevenKlifeless: Keep in mind, run_jobs is generic, multiple job runners make use of it.07:14
lifelessthis seems cracked07:14
lifelessyes, i get that07:14
StevenKTBBH, the entire job system is crack07:15
lifelesswe should not have things in the config system that are other than knobs-we-want-admins-to-change.07:15
lifelessthats not config. its code.07:15
StevenKlifeless: I like being able to drop the cronscript, I've had to kill everything else I liked about that branch due to wgrant. :-(07:16
lifelessStevenK: I like that too07:16
lifelessbut for 'non end user config' we have zcml07:16
wgrantlifeless: The generic job runner takes a config section name. So the interface has to be specified there. Yes, this is crap, like DB users.07:16
wgrantIt can be fixed in the post-critical world.07:17
wgrantWhich may happen this year.07:17
lifelessnot saying I like - or dislike - zcml, but we definitely should not be putting non admin knobs into the the lazr.config.07:17
lifelessnot blocking this on it07:17
lifelessbut - tag, you're it - please file a bug07:17
StevenKEr, which one of us?07:17
lifelessStevenK: you07:17
StevenKlifeless: High? Low?07:18
wgrantLow tech-debt, IMO07:19
StevenKDone, bug 75947607:20
_mup_Bug #759476: run_jobs shouldn't require source interfaces in the schema <tech-debt> <Launchpad itself:Triaged> < https://launchpad.net/bugs/759476 >07:20
huwshimiwallyworld_: Reviewed. Sorry for my comment in advance :)07:31
wallyworld_huwshimi: thanks. actually the lack of space was bothering me too :-) so i'll fix it for  sure before landing. i'd rather out in the effort to get it as right as we can07:33
huwshimiwallyworld_: Yeah, thanks a lot. I don't like giving such trivial reviews, especially if there's been a bunch of back and forwards already.07:34
wallyworld_huwshimi: i don't see it as trivial per se. if something needs fixing, it should be fixed. much easier to do it now before landing :-)07:34
=== almaisan-away is now known as al-maisan
huwshimiwallyworld_: Yeah I agree, it's not a full stop in a comment or something, but it was just once space that I was complaining about :)07:35
wallyworld_huwshimi: one space that made the buttons look too squashed up and would annoy users :-)07:36
huwshimiwallyworld_: I know, I know. It's worth doing. I still feel bad though :)07:37
wallyworld_huwshimi: actually, do you know off hand what css i need to say "every element inside this containing div should have some right padding"?07:38
wallyworld_i'm thinking i'll use that in the extra-form-buttons class to add the padding to the buttons07:38
wgrantIs a normal space not sufficient?07:39
wgrantI guess it might not be wide enough.07:39
wallyworld_wgrant: i thought nbsp was verbotten?07:39
LPCIBotYippie, build fixed!07:39
LPCIBotProject devel build #633: FIXED in 5 hr 22 min: https://lpci.wedontsleep.org/job/devel/633/07:39
wallyworld_and that it is best to use css for layout07:39
wgrantwallyworld_: Doesn't even need to be nbsp07:39
wgrantA plain old ' ' would do fine.07:39
huwshimiwallyworld_: You can reference them by their type e.g. button or input or input[type="submit"] depending on what they are and what else is in the div07:39
huwshimiwallyworld_: For this, if a space is wide enough then I don't think it's bad07:40
wallyworld_huwshimi: wgrant: ok. i'll use a ' '.  much simpler :-) i just didn't want to the css style nazis to get mad at me :-)07:41
huwshimiwallyworld_: You will be gotten07:42
wallyworld_using css is actually cleaner cause then you can just add in other buttons and not worry about also adding in the ' ' each time07:43
wallyworld_and there's more control and flexibility to adjust it in one spot07:43
wgrantwallyworld_: Did you have the misfortune to come across subscribe_form_body in lib/lp/bugs/javascript/filebug_dupefinder.js during your investigations earlier?07:43
wallyworld_wgrant: not in detail. but i know it's there waiting for me :-(07:44
wgrantThis, here, is a good example of why I am pedantic about JavaScript now.'07:44
wgrantTo prevent people from doing... that.07:44
wallyworld_wgrant: dogfood also shows the issue on chrome so i may need to money patch some stuff for diagnosis perhaps. i'll see how i go.07:44
wgrantwallyworld_: Interesting.07:45
wallyworld_monkey. gof i can't type today07:45
wallyworld_god aaaahhh07:45
wallyworld_gotta put in a stupid ' ' for huwshimi first though :-P07:46
=== Ursinha is now known as Ursinha-afk
StevenKrvba: Shoot08:23
rvbaStevenK: https://code.launchpad.net/~rvb/launchpad/dds-stats-portlet/+merge/5728008:24
rvbaStevenK: I think you're the right person for this ;).08:24
wgrantStevenK: Any ideas on the lack of base version?08:28
StevenKwgrant: I've not investigated08:28
StevenKrvba: Reviewed08:38
StevenKwgrant: The script appears to do the right thing08:39
StevenKwgrant: Which saddens me08:39
rvbaStevenK: thank you.08:40
rvbaStevenK: do you have a suggestion to avoid adding the two booleans to IDistroSeries?08:41
StevenKrvba: I suspect we don't have a way to get around it -- I suspect the information has to live *somewhere*, I'm just concerned that IDistroSeries is already bloated.08:43
StevenKrvba: So ignore that bit for now, and fix up the rest. :-)08:43
rvbaStevenK: all right ... so I guess I'll have to leave them where they are. I'll fix the rest.08:43
wgrantStevenK: Why's it the right thing? Unparsable changelogs?08:44
StevenKwgrant: What I mean is that the code in the script appears to do the right thing08:46
wgrantStevenK: Right.08:46
StevenKMore logging would be awesome08:46
wgrantThat's what I Thought.08:46
wgrantI'll attack mawson once I've finished with this lazr.restful business.08:46
lifelessactually we can just ignore dupes08:47
lifelessno point counting them towards closed etc08:47
StevenKrvba: Anyway, I want to remove that horrible webservice doctest, no fair adding to it.08:48
lifeless   944 |     2208:48
lifeless949 In-progress bugs08:48
lifelessout by 508:48
rvbaStevenK: ok.08:48
StevenKIn fact, I'm working on that now.08:48
StevenKSince lazr.restful seems to have set out to annoy me.08:49
rvbaStevenK: I was about to propose to do it as part of the fixing I'm doing now ... but since you're on it, I'll just convert my new doctest to a unitest.08:49
lifelesswgrant: if you want to bend your mind a little08:50
lifeless https://bugs.launchpad.net/launchpad/+bug/758587/comments/1408:50
_mup_Bug #758587: summarising bugs is expensive <timeout> <Launchpad itself:Triaged> < https://launchpad.net/bugs/758587 >08:50
lifelessOTOH this queries Ubuntu bugs in 235ms08:50
lifelesswhich I'm kinda happy about08:50
lifelessincluding privacy08:50
wgrantDo you have temp table privs on qas?08:50
wgrantI didn't know that.08:51
lifeless22MB of data.08:51
lifelessabout 100MB with indices08:52
wgrantNot bad.08:52
lifelessbiggest is the unique index @ 35MB08:52
wgrantlifeless: So, I know you're not really Zopey, but have a look at RequestExpiredView in lib/canonical/launchpad/webapp/error.py08:53
wgrantlifeless: It clears the request data in __init__.08:53
wgrantThis seems fairly crackful.08:53
wgrantI've moved it to initialize(), and everything still works.08:53
lifelessjust cooking dinner; I will come look at it in ~ 15-2008:55
wgrantCould also *possibly* fix lazr.restful to use queryMultiAdapter instead of getMultiAdapter to look up the view, but then it's not obvious how to replace the IWebServiceExceptionView adaption check, except perhaps by forcing the view to implement it directly.08:56
wgrantBut I think dangerous view __init__s should probably be avoided.08:56
adeuringgood morning08:56
wgrantMorning adeuring.08:56
adeuringhi wgrant!08:56
StevenKDidn't we have a better way to call the webservice in tests rather than webservice_for_person() ?08:59
wgrantStevenK: Interesting. DF has 7209 natty base_versions set, 8054 not set. That's more set than staging has, and staging should have more changelogs..08:59
StevenKStaging looks to have close to zero set08:59
rvbaStevenK: I've tried to find a way to do what DistributionJob.getJobs does without having to had a new method but no luck ... could you take a look for me?08:59
wgrantStevenK: bigjools said it had 19000 (yes, exactly 19000) unset when I asked him last night. But the script wasn't done yet.09:00
wgrantAnd staging is down, yay staging.09:01
StevenKrvba: getUtility(IInitialiseDistroSeriesJobSource).iterReady(),09:02
=== StevenK changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | https://code.launchpad.net/launchpad-project/+activereviews
StevenKwgrant: I wonder if it completed.09:03
wgrantStevenK: It probably did. This was a second run after the first run did the same thing.09:04
wgrantBut we should check with the Julian.09:04
StevenKAnd do it again after jtv's fix lands09:04
StevenKOr just update dogfood09:04
StevenK(The database, not the code)09:05
StevenKJulian seems to be velemently against that, though09:05
wgrantDF needs to update in two weeks anyway.09:06
wgrantWe can do it then.09:06
StevenKPerhaps we should cowboy more logging onto staging, so we can get some idea09:06
wgrantWell, we should check if the script finished first.09:07
lifelesswgrant: that seems appropriate, *IFF* lazr.restful is creating such a view *before* the oops is written09:07
rvbaStevenK: I did not consider iterReady because it does not look to allow to get the jobs for one distro.09:07
lifelesswgrant: wgrant the regular publishing machinery does this:09:08
lifeless - log the oops09:08
lifeless - figure out how to show the error09:08
StevenKrvba: I doubt there are going to be many IDSJs09:08
lifelesswgrant: why doesn't the api stuff do that [not to mention, why does the api have its own publisher]09:08
wgrantlifeless: The lazr.restful exception handler is a bit special, since it needs to handle errors that should be returned as 400s, for example.09:08
wgrantlifeless: So it looks up the view for the exception, and checks if it can be adapted to IWebServiceExceptionView09:09
wgrantlifeless: If not, it reraises.09:09
wgrantlifeless: I'm not sure how avoidable this duplication is.09:09
lifelesswgrant: I understand its special; I don't understand why it needs to be different to the main publisher09:09
rvbaStevenK: ok ... so I guess you mean I should get the right job in python.09:09
wgrantlifeless: Neither.09:09
lifelessmore code to delete.09:09
lifelessafter criticals.09:09
rvbaStevenK: I'll do that but I don't like it.09:10
=== Ursinha-afk is now known as Ursinha
rvbaStevenK: iterReady fetches only jobs with status Job.ready_jobs and I think I really need all jobs with a status in PENDING_STATUSES (WAITING, RUNNING, SUSPENDED)09:19
StevenKrvba: Then I suggest a better name than a generic getJobs09:27
rvbaStevenK: all right ... getPendingJobsForDistribution ;-)09:27
bigjoolswgrant: hello09:59
wgrantbigjools: Hi.10:04
bigjoolswgrant: I'm interested to hear about your discussion with StevenK regarding initialising from distros with builds in progress10:05
wgrantbigjools: Well, for initialisations within an archive you will never be able to copy that source in that archive ever again.10:05
bigjoolswgrant: what do you mean by within?10:06
wgrantbigjools: For inter-archive initialisations you end up with confusion and binaries that are mostly copiable between archives, except not quite.10:06
wgrantbigjools: eg. a new series of Ubuntu.10:06
wgrantDoesn't cross archives.10:06
bigjoolsso firstly, we're never going to allow intra-archive copies with builds in progress10:07
wgrantWell, that original code did.10:07
bigjoolsStevenK wasn't listening to me the other week then :)10:07
bigjoolssecondly, can you expand on the inter-archive problem?10:07
bigjoolsthe plan was to reset BUILDING to NEEDSBUILD10:08
wgrantbigjools: A source has built on i386 and amd64 in Ubuntu, but is still pending on armel.10:08
wgrantbigjools: We initialise a new distribution from this Ubuntu series.10:08
wgrantThe series eventually have identical i386 and amd64 binaries, but the two armel builds produce different binaries.10:09
wgrantThere are two builds... they will produce different binaries.10:09
bigjoolsthey are using the same dependencies, I don't see how10:10
bigjoolsbut anyway, so what?10:10
wgrantThe functional differences may not be significant, true. But regardless those two sources become incompatible, as each has a subset of the other's binaries. This is a problem we see fairly often in PPAs already, and is going to become far worse the next time we add another PPA architecture.10:11
wgrantIt is probable that none of the derivation workflows at the moment have a problem with this situation.10:11
bigjoolsI still don't see why that's a problem10:12
wgrantbigjools: For PPAs it breaks copies... Upload to a series with (i386, amd64, lpia), copy to a series with (i386, amd64, armel) which creates a new armel binary, and you can never copy that source again.10:13
wgrantI can't see where that is going to come up immediately in the derivation case.10:14
bigjoolshow does it create a new armel binary?10:14
wgrantbigjools: Because there is no existing armel binary, a new build will be created.10:14
wgrant(the upload series did not have armel)10:14
bigjoolsI can't remember if we do that automatically or not10:15
wgrantWe don't have the pending build issue in PPAs because we forbid such copies.10:15
wgrantWe do.10:15
wgrantAll source copies run createMissingBuilds.10:15
wgrantSimilar things happen when copying between PPAs with incompatible sets of architectures.10:15
bigjoolswhat part of the copy checker prevents copying the source again?10:15
wgrantThe whole of it.10:15
wgrantThat's what CopyChecker does.10:15
bigjoolsspecifically which check?10:15
wgrantOh, you mean the build thing?10:15
wgrantIt's crackful and broken and wrong, but let me find it...10:15
wgrantHmm. It looks like it relies on the destination archive having the pending builds, which only works for intra-archive copies.10:17
wgrant            if build_summary['status'] in building_states:10:17
wgrantAround line 315.10:17
wgrantSo, I can be convinced to allow inter-archive copies of pending builds if we acknowledge the issue, but the fact that the check was removed unconditionally strongly suggested that it had not been discussed.10:18
wgrantAnd I will not permit undiscussed corruption of primary archives :)10:18
bigjoolsyes sir10:19
wgrant(I was the reviewer)10:19
bigjoolscan you explain in English why the copy is prevented? :)10:20
wgrantbigjools: For the inter-archive case? Not directly, no. It has definite undesirable consequences, but none are fatal.10:21
StevenKwgrant: The check was removed unconditionally was because I thought it was fine. I'm happy to admit I'm wrong10:21
wgrantNone are *obviously* fatal.10:21
wgrantIn present workflows.10:21
bigjoolswgrant: let me re-phrase this so I get the answer I am looking for.  What check, in English, prevents re-copying the same source in a PPA after the above situation?10:22
wgrantThat check.10:22
wgrant            if not copied_binaries.issuperset(published_binaries):10:22
wgrant                raise CannotCopy(10:22
wgrant                    "binaries conflicting with the existing ones")10:22
wgrant(is that broken? possibly. the whole binary copying system is a bit iffy :/)10:24
bigjoolswhat part of "in English" passed you by? :)10:24
bigjoolsin any case, I'm trying to work out why that check is in place10:25
wgrantbigjools: The check exists to prevent copying in duplicate binaries.10:25
wgrantYou can end up with some archs' binaries matching, and others differing.10:25
wgrantIf you permitted the copy then you would have multiple binaries with identical names.10:26
bigjoolsso if we have the extra armel in the target PPA and we copy again,  why is that bad?10:26
wgrantIf there is only one set of armel binaries, nothing.10:27
wgrants/nothing/it's not/10:27
* bigjools has to run off for 10 mins10:28
lifelessselect count(*) from (select distinct bugtask.bug from bug,bugtask where bug.id=bugtask.bug and bugtask.distribution=1 and (not bug.private or exists (select true from teamparticipation,bugsubscription where bugsubscription.bug=bug.id and teamparticipation.person=2 and teamparticipation.team=bugsubscription.person)) and bugtask.status=22 and bug.duplicateof is NULL) as _tmp;10:30
lifeless count10:30
lifeless   944 |     2210:30
lifeless-so close-10:30
lifeless   94310:31
lifelessbut I think this is the duplicate subscription miscounting10:31
lifelesswhich I can live with.10:32
bigjoolswgrant: sorry, back10:40
bigjoolswgrant: considering we'll never copy binaries when syncing from the parent distro, I don't think that check will ever trigger will it?10:42
bigjoolsthe binary copy will only happen on init10:42
wgrantbigjools: At the moment we won't, no.10:42
wgrantBut it's possible in OEM's insane structure that they'll want to.10:42
bigjoolswgrant: it's not possible to do in the current design10:43
wgrantSay you have a hierarchy, and add a new arch in the top shared project, and copy down a layer.10:43
bigjoolsI also think each project is single arch10:43
wgrantYou probably don't want to rebuild stuff in the second layer unless necessary.10:43
wgrantbigjools: Well, an OEM could conceivably have common branding and utilities on i386 and ARM projects.10:44
wgrantIt's not *too* contrived a situation.10:44
wgrantBut it's not immediately applicable.10:44
bigjoolswgrant: I still don't really grok why that check is written like it is10:44
wgrantBut it needs to be considered.10:44
wgrantbigjools: It's a cheap way of checking that the files aren't duplicated, I guess.10:44
bigjoolstoo cheap it seems10:44
wgrantIndeed, although some of the issues would still fall afoul of a duplicate file check.10:45
wgrantIt gets really messy when you can have partial copies :/10:45
bigjoolswgrant: are you happy with the workflow we have now?10:45
bigjoolsI need to get this resolved.  Not being able to init with builds in progress is a blocker, I can't see anyone ever being able to initialise otherwise.10:46
wgrantbigjools: As long as the issue is recognised I am happy enough with inter-archive copies.10:46
wgrantIt is not a non-issue, and it's certainly never OK to permit it intra-archive, but it's probably acceptable for inter-archive for now.10:46
bigjoolswgrant: and do you think resetting BUILDING to NEEDSBUILD for the binary copies will suffice?10:47
wgrantbigjools: Resetting? New NEEDSBUILD builds will be created.10:47
bigjoolsthat's what I mean10:47
wgrantIt's the right way to go. It will result in bad things happening, but we can resolve that when it becomes a problem as long as we acknowledge the issue now.10:48
bigjoolsok thanks for raising the point10:50
bigjoolsStevenK, got all that?10:50
wgrantbigjools: I gather that the DSD population script failed again :(10:52
bigjoolswgrant: yes.10:52
bigjoolswgrant: missing changelogs I expect, but I need to investigate more10:52
bigjoolsand jtv's branch didn't land apparently.  Darn10:52
wgrantbigjools: He sent it off to ec2 again this afternoon.10:54
bigjoolsah good lad10:54
wgrantShould be landing in half an hour ago.10:54
* bigjools needs caffeine to cope with this10:55
wgrantbigjools: It just landed.11:07
wgrantHalf an hour later than I expected, but it's there.11:07
StevenKwgrant: So, with the issue discussed, the change I mentioned this morning with only checking builds for the same distribution is fine?11:11
wgrantStevenK: Not "fine", but "OK".11:15
jtv1bigjools: the fix for bug 757483 has landed on devel.11:20
jtv1My other branch still needs a bit of nursing, evidently.  Merging in a fresh db-devel broke some things.11:21
bigjoolsjtv1: cheers11:21
jtv1I honestly don't think librarian.txt has any right to fail on that branch.11:23
wgrantjtv1: That's spurious.11:23
wgrantjtv1: If it's returning the wrong status code.11:23
jtv1Oh…  the "this is some data" failure?11:23
=== danilos changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: danilos | https://code.launchpad.net/launchpad-project/+activereviews
jtv1    UploadFailed: Server said: 20011:24
* danilos is always bad at updating the topic with his OCR info :(11:24
jtv1Why can't you be more like me—just accept that you can't be bothered11:24
wgrantjtv1: That's the one.11:25
wgrantjtv1: If that was the only failure, lp-land!11:25
jtv1wgrant: no, but it looks like the fixes for the merge-induced problems were simply never pushed11:25
jtv1re-ec2'ing now11:30
jtv1wgrant: it's detached.  I'm off.11:36
lifelessjkakar: thanks for merging my fix11:39
jkakarlifeless: Thanks for providing it. :)11:39
lifelessde nada11:39
jkakarQue beuno!11:40
jkakarbueno, even.11:40
=== henninge is now known as henninge-lunch
=== al-maisan is now known as almaisan-away
danilosanyone knows of good examples of collapsible divs in LP UI?13:00
danilosah right, PPA page is a good one13:05
bigjoolsdanilos: ....13:05
bigjoolsbeat me to it :)13:05
danilosbigjools, heh :)13:06
bigjoolswe're doing the same thing on the derived distros pages13:06
bigjoolswgrant: turns out a load of packages in natty don't have changelogs. Grar.13:06
wgrantbigjools: Or a lot of recent ones in debian?13:07
wgrantbigjools: Do you have an example?13:07
bigjoolsnot looked at debian yet, the script is still running13:08
wgrantAgain? :(13:08
bigjoolsStevenK tells me so13:08
bigjoolsaalib (which handily has a SPN id of 1) has no changelog in natty for version  1.4p5-38build113:08
wgrantWhen was that uploaded?13:09
wgrantI guess I could check.13:09
wgrantBut that would mean not being lazy.13:09
bigjools"26 weeks ago"13:09
wgrantAnd its changelog is null?13:10
wgrantCan you verify that in the DB?13:10
bigjoolslooking at the query output right now13:10
StevenKOn *dogfood* the SPR's changelog is None13:11
bigjoolsthis is staging13:11
bigjoolsthere are 2994 packages in natty that don't have it set, compared to 15042 that do13:12
StevenKYes, but when I checked for you on the call, I was prodding dogfood13:12
wgrantbigjools: Oh, so most have it set, OK.13:12
bigjoolsI am checking staging too13:12
bigjoolsyeah, most13:12
bigjoolstrying to work out the remaining ones13:12
wgrantWe started setting it in April last year, except for gina which was Nov/Dec.13:12
bigjoolsaalib was uploaded 2010-03-0513:13
bigjoolsthe sid version does have one BTW13:13
wgrantIt may be one of the last few, then.13:14
bigjoolsI guess we could just say there's no diff until it's updated for those few13:14
wgrantWhich should be some time this week, right StevenK?13:14
=== henninge-lunch is now known as henninge
bigjoolsnot for old natty versions?13:14
StevenKI am going to check on the progress tomorrow afternoon13:15
StevenKIt should be done by Friday, hopefully13:15
wgrantbigjools: It should be importing everything without a changelog, AIUI.13:16
wgrantbigjools: Except for expired things.13:16
bigjoolsah cool13:16
bigjoolslet's wait until it's finished then13:16
StevenKAnd staging is updated13:17
StevenKSo Monday or Tuesday, I guess13:17
bigjoolsthe thought makes me hungry13:19
maxbUm.... is it just me, or is the AJAX bug "Subscribe" link broken on production?  (Spins briefly and does nothing)13:35
wgrantmaxb: Are you in the malone alpha team?13:38
maxbmute_link is null13:38
wgrantBroken for the alpha team for now.13:38
wgrantI thought that fix had been deployed, but maybe I was wrong.13:38
wgrantBug 753387?13:40
_mup_Bug #753387: Can't subscribe to bug: Uncaught TypeError: Cannot call method 'get' of null <Launchpad itself:Triaged> < https://launchpad.net/bugs/753387 >13:40
maxbSounds like the same thing, just reported differently by firefox14:17
bacdanilos: would you have a moment to do a review?  should be quick.14:30
danilosbac, sure thing14:32
bigjoolsfor the love of .... Google chose *TCL* as a scripting language for Chrome?!14:34
danilosbac, r=me14:36
danilosbigjools, isn't it already the 13th? :)14:36
bigjoolsdanilos: which century?14:36
danilosbigjools, well, not that far off, but I think April 1st is gone by already :)14:37
bigjoolswhich is a shame14:37
jcsackettdanilos: do you have time to review https://code.launchpad.net/~jcsackett/launchpad/private-bugs-404/+merge/57244, by any chance?14:42
danilosjcsackett, sure thing, let me take a look14:42
bacbigjools: really?  oh that is awful.  i had to do a lot of tcl/tk back in the day and it was painful14:44
bigjoolsbac: me too.  It's abominable.14:45
bigjoolsbac: although I may have misread slightly, I think the TCL folks are the first to produce an interface that works with the Chrome script API14:45
bigjoolsI'd love to use Python instead of JS14:46
baci'd love to use X instead of JS where X not in [TCL, perl]14:46
danilosbigjools, unfortunately, world is turning towards JS :( even epiphany, which you could write plugins for in python before, now only supports either natively compiled or JS14:50
bigjoolsdanilos: it makes me sad to hear that14:50
danilosbigjools, yeah, me too14:52
abentleydanilos: on the plus side, PyPy seems to be doing well, and it has a JS backend :-)14:53
danilosjcsackett, r=me14:54
jcsackettdanilos: thanks!14:54
danilosjcsackett, you are welcome14:54
=== danilos changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | https://code.launchpad.net/launchpad-project/+activereviews
bacdanilos: in one of your yuitests i get a failure15:02
=== abentley changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: abentley | https://code.launchpad.net/launchpad-project/+activereviews
danilosbac, which one is it? node construction ones with waits?15:03
bacdanilos: test_escaping_url15:03
danilosbac, hum, let me try it out in different browsers15:03
baci used ff315:03
danilosbac, right, I can see it failing... damn YUI "compatibility" layer... it's probably blindly using browser's implementation of escape() function which seem to differ between browsers15:04
danilosbac, I don't see a good way around it other than asserting that the text is *not* unescaped (i.e. as-is)15:05
danilosbac, what do you think?15:05
bacdanilos: i haven't looked at the details of the test yet15:05
danilosbac, oh, this just makes sure that node.set('url', '...') escapes the URL properly; it's not even a big deal because it's all URLs we produce, but I just wanted to be extra safe15:06
danilosbac, fwiw, the test passes in webkit browsers like epiphany15:07
bacdanilos: you have other escaping tests.  why do those pass and this one fails?15:08
danilosbac, the only thing I can think of is that others are for node content, and this one is for node attribute value (ff seems to transform stuff into URL encoding vs. HTML character entities)15:10
danilos(that might be YUI and not FF, of course)15:10
danilosbac, basically, what I am doing in the test is reading node.get('innerHTML') and that behaves differently15:11
danilos(at least)15:11
renataHello everybody, I am starting to work with launchpad api, and without launchpadlib, I would like to obtain a list of packages from a specific ubuntu release.15:13
renataI know that source_package_publishing_history shows me a package based on a package ID. But I would like to get a direct link with a list of all packages, without knowing their IDS.15:13
renatais it possible?15:13
renatathanks in advance :)15:13
abentleyrenata: there's no central list of what sourcepackages are present in a release.  In our model, sourcepackages are arbitrary combinations of a sourcepackagename and a distroseries.15:16
abentleyrenata: You could try archive.getPublishedSources.  Doesn't look like sourcepackagename is required.15:18
renataabentley ahhh ok!! so I'll try to see getPublishedSources.. if that doens't work I figure something out. thank you very much for the help :)15:19
danilosbac, I've fixed the test case, fwiw, I am asserting that it's not equal to the originating string now15:19
bacdanilos: ok, that seems reasonable15:20
=== salgado is now known as salgado-lunch
danilosbac, do you perhaps want to go through the branch on the phone?15:31
bacdanilos: sorry, i know you're in a rush.  i don't think that would help right now.15:31
danilosbac, np, just checking :) I am not in a big rush, I just want to help as much as I can15:31
BjornTi've gotten a lot of oopses today while reviewing merge proposals. well, not a lot maybe, but 2  out of 5 or so page loads have oopsed (e.g. OOPS-1929AW110)15:46
adeuringabentley: could you have a look at this mp: https://code.launchpad.net/~adeuring/launchpad/bug-758902/+merge/57502 ?15:46
gary_posterI was about to say the same thing, BjornT.  Looks like a librarian might be down.15:47
abentleyadeuring: sure.15:47
gary_posterabentley, here's another one when you have a chance.  https://code.launchpad.net/~gary/launchpad/bug744888/+merge/5749915:49
abentleyadeuring: r=me15:50
adeuringabentley: thanks!15:50
abentleygary_poster: What's the effect of doNotSnapshot?15:51
gary_posterabentley, it means that Snapshots, which are temporary objects we use typically to send out modify events to show what an object looked like before a webservice change, will not include that particular attribute.15:52
abentleygary_poster: so that's server-side event handling, not directly related to the web service?15:54
gary_posterabentley, yes, except that AFAIK, only the webservice changes use them.  I could be wrong on that, but that's certainly where they are used the most consistently.15:55
gary_posterBjornT, there might have been some misconfiguration for the new LP appservers.  We think it's fixed.  Could you let us know if things seem better?15:56
abentleygary_poster: Cool.  I think we also use snapshots to generate attribute change emails, e.g. for branches and merge proposals.15:57
gary_posterah, cool abentley.15:57
abentleygary_poster: would StormStatementRecorder work for your test?15:59
gary_posterabentley, me looks for it.15:59
BjornTgary_poster: second page load: OOPS-1929AR13115:59
gary_posterBjornT: :-( ok thanks16:00
abentleygary_poster: testing/__init__.py16:00
gary_posterabentley, yeah, that looks simpler, thanks.  I'll switch to that16:03
abentleygary_poster: I wonder whether there's risk of your SQL check hitting false negatives?  Would it be crazy to just look for the string 'message' in the entire statement?16:07
abentleygary_poster: I think PEP8 requires an extra blank line at 55.16:08
gary_posterabentley: looking for message: well...there are also "bugmessage"s in theory...it's obviously a balance between possible false negatives and false positives.16:12
gary_posterI guess we could try being a bit more aggressive.  I'd be OK with simply splitting on whitespace and making sure there are no strings that start with "message" (which would include tables).  If people find that too restrictive in the future they can adjust the test.  You good with that variation?16:12
gary_posterabentley: line 55 of test_bug.py?16:12
abentleygary_poster: line 55 of the diff.16:12
gary_posteroh sorry16:12
abentleygary_poster: line 25 or so of test_bug.16:13
abentleygary_poster: immediately after metaclass = __type__16:13
gary_postergotcha.  huh, I'm not familiar with that, and lint didn't complain, but I'm fine with it.  I'll make the change.16:13
gary_posterAnd review at PEP 8 later :-)16:13
gary_posterOh, line 25 of test_bug?16:14
gary_posterthat has two returns now16:14
gary_posterthough I changed that after the initial MP16:14
gary_postermaybe you are looking at the email version?16:15
gary_posterof the diff?16:15
abentleygary_poster: My apologies, PEP8 says "Separate top-level function and class definitions with two blank lines." and is silent on how to separate other top-level items (except imports).16:16
gary_posteroh ok cool16:16
abentleygary_poster: So with your proposed change ("splitting on whitespace..."), r=me.16:18
gary_postergreat, thanks very much abentley!  Glad to know about StormStatementRecorder for this purpose especially.16:19
abentleygary_poster: np.16:21
=== salgado-lunch is now known as salgado
sinzuijcsackett: do you have time to mumble now?16:49
jcsackettsinzui: now is excellent.16:49
henningeno branches on qastaging ... :(16:55
henningeah, just no lp: support ;)16:57
=== beuno is now known as beuno-lunch
jelmerI've filed bug 75992817:10
_mup_Bug #759928: linked MP is inaccessible <Launchpad itself:New> < https://launchpad.net/bugs/759928 >17:10
sinzuijelmer: I am still looking for an oops I can read17:10
maxbIt's not OOPSing any more17:11
jelmersinzui: you can't access the OOPS id mention in the bug report?17:11
jelmerI can pastebin the traceback if that would help17:11
sinzuijelmer: no, nor the others I have been given. I think oopes are not syncing17:12
sinzuijelmer: a TB would be very helpful17:14
jelmersinzui: I've pasted one in the bug report as a comment17:14
jelmersinzui: you can't reproduce the issue with the first URL?17:15
sinzuiah yes! I followed the wrong link the first time.17:15
sinzuiI am an idiot17:15
sinzuijelmer: I am a different kind of idiot than I supposed. I did click on the right link.17:18
sinzuijelmer: The access to the librarian is intermittent. I believe we have a connectivity issue with one of more app servers17:19
jelmersinzui: ah, that would explain some things17:20
jelmerI can sometimes get the page if I refresh often enough17:20
sinzuiI am engaging a losa now17:20
maxbThere definitely seems to be some sort of pattern in the oops prefixes17:21
sinzuijelmer, lets load that mp url 5 times each to see it is now reliably loads17:27
sinzuinot for me17:28
jelmersinzui: just refreshing it 5 times here it failed 3 out of 517:36
sinzuii get the same17:37
maxbI have stuck a load of OOPS codes on the bug17:42
maxbto demonstrate that it looks to have node affinity17:42
sinzuimaxb: I saw. thanks17:49
sinzuimthaddon: took the new webapp offline. I think the issue is fixed for now17:49
=== beuno-lunch is now known as beuno
=== Ursinha is now known as Ursinha-afk
bacabentley: i like the changes to 'bzr lp-land', i assume you did them.18:56
abentleybac: I changed it to prompt before launching an editor, and to not write the commit message to the proposal.  Is that what you like?18:57
bacabentley: indeed!18:57
abentleybac: Cool!  You're welcome.18:57
sinzuiI recall we changed out ftp server recently. I think I make related to https://answers.launchpad.net/launchpad/+question/15271520:09
sinzuiHave we blocked passive-ftp20:10
sinzuilifeless: thumper, abentley ^20:17
abentleysinzui: I don't know anything about ftp.20:18
lifelesssinzui: morning20:19
lifelesssinzui: we did, poppy died and poppy-sftp now listens on ftp as well20:19
lifelesssinzui: this is the issue - valid GPG signature: Verification failed 3 times: ['General error', 'General error', 'General error'] :20:19
lifelesssinzui: the poppy-sftp service *also* tries to verify gpg sigs while the client is connected20:20
lifelesssinzui: it uses GPGHandler20:20
lifelesssinzui: which uses a /tmp dir20:20
lifelesssinzui: which the /tmp reaper deletes old files from20:20
lifelesssinzui: so this means that the gpg.conf for the running poppy-sftp on ppa.launchpad.net has been deleted and needs to be recreated.20:21
lifelesssinzui: I'm looking up the bug20:21
lifelessits pure win20:21
lifelessbug 374019 is what was fixed causing the regression20:22
_mup_Bug #374019: bad keys result in no response on ppa uploads <email> <lp-soyuz> <oops> <poppy> <qa-ok> <soyuz-upload> <Launchpad itself:Fix Released by julian-edwards> < https://launchpad.net/bugs/374019 >20:22
lifelessbug 76014720:24
_mup_Bug #760147: poppy-sftp service has its gpg conf reaped <Launchpad itself:New> < https://launchpad.net/bugs/760147 >20:24
lifelessworkaround is to contact losa and have them repair20:25
sinzuiI am starting that now.20:25
sinzuilifeless: Does the fix for this entail preventing reaping or automatic recreation?20:25
lifelesssinzui: long term is a code change to either stop using one long gpghandler or put it somewhere else20:26
lifelessthe problem isn't that its in /tmp, its that its written at daemon startup and untouched for 5 days20:26
lifelessor 4 days or whatever the reaper config is20:27
=== Ursinha-afk is now known as Ursinha
benjinews flash from 2024: the "Sassy Grass Green" squad has moved to maintenance rotation21:11
lifelessbenji: thats 'the stoners' right ?21:12
benjior people who drive Plymouth cars from the 70s21:12
lifelessbenji: shiny21:13
lifelessbenji: I want the gocart in the background21:14
Ursinhalifeless, I wonder why that oops wasn't synced to devpad21:14
benjilifeless: heh, really; I guess once you run out of room for cars you start hanging them on the wall21:14
lifelessUrsinha: 12 hour cron IIRC21:15
lifelessUrsinha: should be synced now, I think21:15
Ursinhalifeless, I thought sync happened like every 10 minutes21:16
lifelessUrsinha: for some unknown reason, not on codehosting21:16
lifelessUrsinha: since you are here21:16
lifelessUrsinha: I have a small qatagger request21:16
lifelessI was going to put a patch together, but trunk failed tests for me and I got distracted by a tech review for statik21:17
lifelessUrsinha: can we stop it setting milestones ?21:17
lifelessUrsinha: per the thread on -dev about releases being decoupled from downtime21:17
jcsacketti think i have killed my computer. i can't seem to run tests...21:17
lifelesswe don't need milestones anymore21:17
Ursinhalifeless, I guess, I haven't stopped because I see a few people still setting it even after your email21:17
lifelessUrsinha: well, qatagger is the driving force21:18
lifelessUrsinha: if it stops, I think folk will naturally stop21:18
Ursinhalifeless, ok, so I'll disable it21:18
LPCIBotProject windmill build #173: FAILURE in 1 hr 6 min: https://lpci.wedontsleep.org/job/windmill/173/21:18
lifelessUrsinha: thanks!21:18
Ursinhanp :)21:19
sinzuijcsackett: mumble?21:20
jcsackettsinzui: sure, one moment.21:21
jcsackettsinzui: can you hear me?21:22
sinzuijcsackett: me no hear21:23
jcsackettsinzui: mumble appears to not be working for me. i did not hear you either.21:24
jcsackettone moment.21:24
* sinzui kills mumble21:24
lifelesssinzui: is there anything I can do for you guys today ?21:24
jcsackettlifeless: make mumble work reliably? :-P21:25
lifelessuse ekiga/empathy with the canonical voip system21:25
sinzuiand unity/compiz. I went belly up and it looks like I am ignoring people21:25
lifelessit works beautifully, even here where mumble is terrible21:26
* jcsackett makes note of that.21:26
lifelessif you don't have an extension (check your directory page) contact #is and they can allocate one21:26
lifeless[and get them to put it in the directory so you can find it later :P]21:26
sinzuilifeless: We do not need anything at the moment. I think we  need to talk about how to improve the velocity of the teal squad and do a on-going maintenance well.21:27
lifelesssinzui: when would you like to do that ?21:27
sinzuiI may ask for your help later today21:27
lifelesssinzui: sure thing.21:27
lifelessI have a little hr adminny stuff to do, and other than that a clean slate21:27
jcsackettand now my whole system just crashed.21:30
jcsackettperhaps my problem isn't with mumble...21:30
sinzuijcsackett: I cannot get mumble to restart :(21:31
jcsackettsinzui: skype? i have that on my phone, which i'm trusting a bit more this second.21:31
sinzuijcsackett: I am trying skype21:34
jcsackettsinzui: okay. i'm online with it now.21:36
jcsackettsinzui: i can hear you shouting. :-)21:37
jcsackettsinzui: i take it you could not hear me. and the call died.21:38
jcsackett...perhaps i have a crappy network connection today...?21:38
sinzuiI could hear you21:39
sinzuiIt was not clear you could hear me21:39
* jcsackett grows angry with technology.21:40
lifelessrage powered development. win.21:46
=== salgado is now known as salgado-afk
lifelessflacoste: I've tweaked your edit to the rotation (there are two bug triage searches needed :( - to deep link directly to the them on the bugtriage page)23:11
lifelessflacoste: if you still prefer them inline on the maintenance page, I'll do that for you and add bidirectional pointers so they don't accidentally get out of syn23:11
lifelesswhy isn't bug expiry expiring stuff23:26
_mup_Bug #121859: RFE: Url for posting private, non-security bugs <lp-bugs> <Launchpad itself:Incomplete> < https://launchpad.net/bugs/121859 >23:26

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