/srv/irclogs.ubuntu.com/2012/01/26/#launchpad-dev.txt

kirklandwgrant: ack00:00
lifelesskirkland: consider that other buildds can run arbitrary users arbitrary code00:12
kirklandlifeless: yeah00:12
lifelessnow if you say I don't care about that, thats fine00:13
lifelessbut we can't really offer a secure embargo *and* have such an obvious wart that we'd need to warn folk off00:13
lifelesswe don't currently have a bi-directional channel for 'I need file X' from the buildd's.00:16
lifelesswe probably need something like that to deal with arbitrary build-dependencies w/in the PPA (unless you say 'no build dependencies with hidden sources needed')00:17
lifeless$blah etc.00:17
wgrantlifeless: Huh?00:17
wgrantYou don't build-depend on sources :)00:17
lifelesswgrant: I know. Still sickish.00:17
wgrantWe know the needed source files before we start the build.00:17
lifelesswgrant: I regretted that bit as soon as I wrote it.00:17
lifelesswell00:18
lifelessas soon as I hit ENTER.00:18
wgrantHeh00:18
lifelessanyhoo00:18
lifelesskey thing - kirkland - if you want to work on this, by all means. The constraints are: soyuz assumes source available everywhere today; there is no guaranteed sequencing for htaccess changes and publication IIRC (different processes write it, IIRC), buildds are untrustable00:19
lifelesspersonally, I'd still try a TLT approach first and foremost.00:19
wgrantIndeed.00:19
wgrantIt's easily doable now.00:19
kirklandlifeless: what's TLT?00:20
lifelessTimeLimitedToken00:20
lifelessa time limited access pass to one file in the private librarian00:20
kirklandlifeless: ah, tokay00:20
lifelessclick on a bug attachment on a private bug, or a private build log, for instance.00:21
lifelessit will work for a day, but then stop working unless you go back to the LP web UI and click on the link there again00:21
lifelesswhich does a redirect dance to issue a token and forward you to the token-including url on the librarian00:21
=== nigelb_ is now known as nigelb
wallyworld__wgrant: https://code.launchpad.net/~wallyworld/launchpad/fix-convoy-make/+merge/9022500:31
wallyworld__wgrant: i'll need to ask to to lp-land also since it's broken on my system00:32
wgrantwallyworld__: What creates build/js/yui/yui-3.3.0?00:40
wgrantbuildout?00:40
wallyworld__wgrant: yui-dep.py00:44
wallyworld__ah, hang on, yui-deps uses that dir00:45
wallyworld__i think it's buildout.cfg, yes00:45
wallyworld__is where it's defined00:45
wallyworld__yes, just refreshed my memory, it is buildout00:46
wgrantGreat.00:47
=== wgrant changed the topic of #launchpad-dev to: JS build broken until r14727 | https://dev.launchpad.net/ | On call reviewer: abentley | Firefighting: - | Critical bugtasks: 4*10^2
james_wlifeless, so, thinking about it over dinner, I'm not sure that we would get any benefit from txlongpoll in this bit of the system, but we may well want to use it for updating the browser when the this backend processing job gets all the way back to the user-facing web service to update browsers. Is there a reason that we would want to use it between that user-facing service and the backend jobs that I'm missing?01:29
james_wlifeless, if it's not a good time then this can obviously wait01:30
lifelessjames_w: sorry, was on the other machine02:15
lifelessjames_w: uhm,I don't know what you're putting together at the moment, so I can't really comment ;)02:15
james_wYeah, I realize it's a bit vague02:16
james_wWe're basically adding an async job system to developer.u.c that packages tarballs02:17
lifelessand you wanted webhooks in there somehow02:17
lifeless?02:17
james_wWe have webhooks between d.u.c and the service that coordinates the workers02:18
james_wpkgme-service is the second system02:19
lifelessany reason for webhooks in particular?02:19
james_wNot strong reasons02:19
james_wIn fact it's probably pointless02:20
lifelessso for LP I've advocated PSHB as the public event system for a while02:20
lifelesswith rabbit internally02:20
james_wGiven that rabbit is used as well02:20
lifelesstxlongpoll isn't quite PSHB, but a little refactoring and it could be the browser side, with our own internal PSHB hub02:20
lifelessjames_w: I presume you would like events out of LP too02:21
james_wFor this? Eventually02:22
james_wFor other things, definitely02:22
lifelesshah, '404 Bugs reported by me '02:23
james_wheh02:23
lifelessanyhow, broadly speaking:02:25
lifeless - I think one event system internally, and one publically is fine02:25
lifelesspublic/internal being split on *data* protection not teams.02:26
lifelessand I'm massively pro using event systems to let different bits be built separately02:30
lifelessI presume you've seen the guidelines for things in LP done this way?02:30
lifelessthey dont' apply directly to you but may still be useful02:30
james_wI think so, you mean ServicesRequirements?02:38
lifelessyes02:40
lifeless.02:40
lifelessI hate my ISP. Hates.02:40
lifelessThey couldn't keep DSL reliable if they were paid to.02:41
james_wYeah, we look over that doc frequently02:47
lifelessjames_w: I love feedback, if you ever have any :)02:52
james_wsure will02:54
lifelessthis is totally unrelated but you may find it fun - http://piumarta.com/software/maru02:55
StevenKlifeless: You *do* pay them to keep your DSL reliable.03:04
lifelessStevenK: I know03:07
=== jam3 is now known as jam
=== danilo_ is now known as danilos
stubWhat is the easiest way to get a package from Oneiric universe into a PPA for Lucid? Copy without rebuild should be fine, but I think that is only point and drool when the source is a PPA?08:28
wgrantstub: You can't copy it directly; the source name conflicts with the 8.4 one.08:44
wgrantYou'll need to rename it to postgresql-9.1-debversion, like the binary already is.08:44
stubI'm not that far. Can't even see a link to download the sourcepackage so am bzr branching atm.08:45
wgranthttp://launchpad.net/ubuntu/oneiric/+source/postgresql-debversion08:48
wgrantScroll down a little, and there is the link.08:48
stubI still don't see it08:50
stuboh.. not looking for a .deb am I08:50
adeuringgood morning08:51
=== jtv is now known as jtv-eat
=== jtv-eat is now known as jtv
=== almaisan-away is now known as al-maisan
=== jtv1 is now known as jtv
bigjoolslifeless: yo09:58
bigjoolsI can haz testresources release please?10:01
=== _mup__ is now known as _mup_
rick_hwgrant: still around? wondering about the combo loader/convoy setup12:29
StevenKrick_h: Did you get the convoy MP approved?12:30
rick_h StevenK I did from U1, I'm waiting to hear back from landscape folks12:31
rick_hthey're not as sure how the heck it works on their end12:31
StevenKWell, they don't need to upgrade to it right away ...12:31
rick_hStevenK: right, I'm pinging sidnei right now to let him know I talked with landscape and we should be good12:32
rick_hso I'm prodding to get the MP merged12:33
rick_hthey both had to check their apache configs because my change would break things on their end12:33
rick_hhowever, sidnei says they have rewrite rules that negate my change for them so it should be all good12:33
rick_hStevenK: he says all sounds good to him, so hopefully sidnei will merge soon now12:34
rick_hStevenK: did you follow how it is that not all prod machines will have convoy installled and avail in their setups? I kind of assumed they'd have to because the same apache config/etc was serving the combo files so they appeared to be from the app server?12:37
StevenKrick_h: Right, it makes sense.12:39
rick_hSo then convoy and the combo loader live on one app server?12:41
wgrantrick_h: Apache doesn't run on the appservers12:42
wgrantIcing is served from the Apache on the frontends, banana and nutmeg.12:42
wgrantThey run apache+squid+haproxy12:42
wgrantThey are the only things in production that need to run convoy.12:42
rick_hok, so the app servers need a config to pass the requests up a level then and then they'll cache the combo files?12:46
wgrantrick_h: The appservers aren't involved.12:47
wgrantrick_h: The frontend Apache on banana+nutmeg will intercept /+combo and send it to the local WSGI app12:47
rick_hok12:47
wgrantAll the appservers do is generate the +combo URL.12:47
rick_hok, gotcha12:47
StevenKwgrant: lifeless' opinion was WSGI was too risky to run on banana/nutmeg12:48
StevenKSo we'd proxypass to the appservers12:48
wgrantThat's my opinion too, but I thought webops said otherwise.12:48
StevenKwebops agreed with lifeless12:48
rick_hno, at Budapest we ping'd webobs on it and they said it'd be fine I thought12:48
wgrantThat's what I thought, yeah.12:49
rick_hheh, so we're definitely not doing this on a friday :)12:49
StevenKI don't even want to set up qas/staging on a Friday12:49
StevenKrick_h: Oh yeah -- do you remember how you wanted +combo at the end of the URL? So say someone generates a branch called 'make-use-of+combo' == game over12:50
StevenKSince then the branch URL ends with it12:51
rick_hStevenK: well it would have to be /+combo has the branch namne12:51
rick_hthe / is improtant I believe12:51
wgrantWhat benefit does that provide?12:51
wgrantIt's important for +login, but that's all.12:52
rick_hnothing, it was just the initial thought that urls that end in /combo would be sent to convoy so that things worked kind of like a normal url routing. /prod1/combo /prod2/combo etc12:52
rick_hit's something that got changed based on StevenK's advice so we should be good12:53
nigelbWCPGW12:59
StevenKI'd rather qas wasn't on fire over the weekend.13:00
=== jcsackett changed the topic of #launchpad-dev to: JS build broken until r14727 | https://dev.launchpad.net/ | On call reviewer: rick_h*, jcsackett | Firefighting: - | Critical bugtasks: 4*10^2
james_whi, would someone have a few minutes to do a wadllib release for us to put in Debian/Ubuntu?13:59
james_wI assume it's just a few minutes to do a release at least13:59
rick_hjames_w: that's a good question. I suppose that'd fall under my territory and I'm not sure how that's done.14:01
rick_hbut fortunately I see deryck just joined in here so I can pester him about it :)14:01
james_w:-)14:01
rick_hderyck: james_w> hi, would someone have a few minutes to do a wadllib release for us to put in Debian/Ubuntu?14:02
deryckoh, hmmm, that's not my thing either. :)  Let's look around the room.14:02
deryckmaybe flacoste or lifeless?14:03
james_whttps://dev.launchpad.net/HackingLazrLibraries#releases14:03
james_wmaybe that helps?14:03
deryckdang, there's always a wiki page.14:03
deryckjust once I want to punt. ;)14:03
rick_hjames_w: yea, just looking at that and checking the branches/etc14:03
deryckrick_h, back to you. ;)14:03
james_wheh14:04
james_wderyck, "accidentally" delete the wiki?14:04
rick_hjames_w: so we're just looking to create a tarball of the latest lp:wadllib right?14:04
deryckha!14:04
james_wrick_h, I believe so14:04
james_wthe branch I want has landed at least :-)14:04
rick_hjames_w: excellent, I'll get it checked out and work my way through this, give me a few14:05
james_wthanks rick_h, much appreceiated?14:06
james_werr, that's not a question14:06
james_wit surely is14:06
rick_hheh14:07
rick_hjames_w: in looking over the changes this would be a 1.2.0 -> 1.2.1 change?14:14
rick_hoh nvm, add py3 would seem a bigger point14:15
jcsackettjames_w: rick_h and i have been looking at your MP for python-oops, and rick_h has pointed out that it doesn't look like the code actually requires bson. what was the situation you encountered leading to this change? did something break on you, or is it just in response to other comments in the code about "must be bson serializable"?14:23
jcsackettjames_w: i see other parts of our oops infrastructure require bson, which is what i believe prompts the comments in lp:python-oops.14:24
james_wjcsackett, rick_h, that's a very good point14:28
james_wI think I just invented that dependency14:28
james_wit's actually python-oops-datedir-repo that doesn't mention it in the README14:29
james_wI think I just read the mailing list thread and assumed14:29
jcsackettjames_w: easy thing to do; it took me a few moments of digging through the related code to figure out what might be going on. :-)14:29
james_wI've pushed a new revision that drops bson14:31
james_wthanks for catching it14:31
james_wit seems download-cache is pruned without regard to other projects that rely on it (e.g. python-oops)?14:49
rick_hjames_w: got a sec to give me a hand here? I've branched this and run bootstrap, buildout, and running tests are failing14:51
james_wrick_h, wadllib?14:51
rick_hI'm guessing there's a step I'm missing here?14:51
rick_hjames_w: yes, do you need to run a python setup.py develop kind of thing first?14:51
james_wI don't think so14:52
james_wlet me buildout a copy and see what I get14:52
james_wrick_h, thanks for the thorough review on https://code.launchpad.net/~james-w/python-oops/update-readme-dependencies/+merge/90028 you were correct about iso860114:52
abentleyrick_h: could you please review https://code.launchpad.net/~abentley/launchpad/data-download-view/+merge/90269 ?14:53
rick_habentley: sure thing, will be a few.14:53
abentleyrick_h: thanks.14:53
rick_hjames_w: awesome, glad those weren't needed.14:53
rick_hjames_w: with wadllib, the doctests import wadllib, but that would mean there was an egg for it for it to import from right?14:55
rick_hsince the doctest it in the wadllib directory, I think14:55
=== mbarnett` is now known as mbarnett
james_wrick_h, yeah, I would expect buildout to take care of that though14:59
rick_hjames_w: yea, I think I'll ping benji14:59
rick_hbenji: got a sec to give me a hand with this wadllib fun?14:59
benjirick_h: sure, what's up?15:00
rick_hbenji: I've been asked to do a release of it and I"m trying to get the env setup so I can run tests and increment versions and all that fun15:00
rick_hbenji: my understanding is I need to branch, bootstrap.py, and buildout and from there .bin/test should work ?15:00
rick_hbenji: except the tons of the doctests blow up on me and I'm not sure I've got things setup right15:01
benjirick_h: that's the right steps; let me see if I can reproduce the problem15:01
james_wI can't even bootstrap15:02
james_wit's complaining about the version of distribute in a seemingly contradictory way15:02
rick_hjames_w: yea, I had to create the download-cache directory to bootstrap15:02
james_wah, I'll try that15:02
james_wI was using lp-sourcedeps15:02
rick_hjames_w: if you do it in a virtualenv like the docs say, it gives a giant warning that you're double dipping the no-site-packages, but I think that's just a warning not a true error15:03
james_wrick_h, so my first error is:15:12
james_w   ParseError: not well-formed (invalid token): line 1, column 115:12
rick_hjames_w: yea, same here15:12
rick_hso I guess the first couple do pass so perhaps it's not my setup but actual failing tests15:13
james_wwadl_string starts "<?xml version="1.0"?>"15:13
james_wI wonder if the Application API has changed15:13
rick_hjames_w: I'm going to get a py3 env setup since that was the last commit and see if it works there and can start figuring out blaming py versions or what15:15
james_wok15:17
=== matsubara is now known as matsubara-lunch
benjirick_h: I've narrowed it down to some problem elementtree is having parsing the WADL XML15:24
rick_hbenji: ok, yea that makes sense15:25
rick_hbenji: so my setup is ok then, just a matter of real failing tests15:25
benjirick_h: yep (although there is at least one thing in the buildout that needs to be fixed, buildout.cfg defines a cache directory and eggs directory, but it shouldn't15:26
rick_hbenji: right, that fits with my download-cache I had to create I think15:26
benjiright, it shouldn't do that15:27
rick_hsorry, getting a crash course in buildout which was on the plan for today anyway but wheeee15:28
james_wah, _make_unicode15:28
benji(if you want a download cache and an egg cache (and you do), they should be configured in .buildout/default.cfg)15:28
james_welementtree hates unicode apparently15:29
rick_hbah, setting up with py3 fails as well with issues getting the right distribute it looks like15:30
james_wrick_h, I just added the distribute it said it picked to versions.cfg15:32
rick_hjames_w: yea, just tried that but I get http://paste.mitechie.com/show/516/15:32
rick_hI updated the bootstrap.py to be a py3 compatible one from: http://pypi.python.org/pypi/zc.buildout/2.0.0a115:32
james_wdid you add "distribute = 0.6.24" to versions.cfg?15:33
rick_hit downloads the right distribute egg into /tmp15:33
rick_hjames_w: yes15:33
rick_hhmm, why do some packages have one = and some == ?15:33
benjirick_h: it's a huge hack, but this makes the tests pass: http://paste.ubuntu.com/817767/15:34
benjirick_h: I need to attend to some other things now, but feel free to contact me if I can be of assistance.15:34
rick_hbenji: ok, thanks for the help. I'm going to ping allenap since he has the last commit commenting on py3 support15:35
rick_hallenap: how does this work please? james_w would love a release but it seems kind of broken atm15:35
james_wI wonder about http://paste.ubuntu.com/817769/15:35
allenaprick_h: What are we talking about15:36
allenap?15:36
rick_hallenap: james_w would love a wadllib release, but when I pull it and try to run tests/prep it the tests fail, there's buildout errors about download-cache, and when trying to make it work in py3 the bootstrap doesn't seem to work and I can't get bootstrap to run once I download the py3 compat version15:36
rick_hallenap: since you have the last commit about py3 compatibility I'm hoping you know what's up and how you made it all work15:37
allenaprvba: Right, let's have a look.15:37
rvbaallenap: I suppose you meant to talk to rick_h… or do you need me for something?15:38
rick_hrvba: I think he was too quick on the autocomplete15:38
allenapDammit.15:38
rvbaallenap: that's ok ;)15:38
rvbaHi rick_h btw :)15:38
rick_hrvba: howdy? hope FR is well today lol15:39
allenaprick_h: Just try: python3 setup.py test15:39
rick_hallenap: without any buildout setup?15:39
allenaprick_h: Doesn't need it :)15:40
rick_hallenap: AttributeError: 'HTTPMessage' object has no attribute 'getheaders'15:40
allenaprick_h: Okay, maybe it does. Are you on Precise?15:40
rick_hallenap: no, oneiric. I've gotten py3, py3-setuptools and that's it so far15:40
rick_hwell, installed py3 pip manually as well since that wasn't in a deb yet15:41
rick_hhttp://paste.mitechie.com/show/517/ allenap15:42
allenaprick_h: Ah, I am. Okay, buildout doesn't work on Python 3 (afaik). Does python2.7 setup.py test work?15:42
rick_hallenap: no, we get the test failures15:42
rick_hallenap: which benji *fixed* with http://paste.ubuntu.com/817767/15:43
=== al-maisan is now known as almaisan-away
rick_hbut guessing that's not going to be nice in py315:43
benji"fixed" in some sense of the word ;)15:43
rick_hallenap: and heads up, buildout *kind* of is supposed to work with py3: http://pypi.python.org/pypi/zc.buildout/2.0.0a1 bit alpha == scary and all that15:43
rick_hhmm, this error was supposed to be fixed it looks like: https://bitbucket.org/tarek/distribute/issue/20615:46
allenaprick_h: From a clean tree, I do: mkdir download-cache && python bootstrap.py && bin/buildout15:47
allenapThe reason that download-cache is missing is, I think, so that it can be easily symlinked to the Launchpad download-cache.15:47
allenapSame with eggs.15:48
rick_hallenap: for the python2 side I did that and got the tests failing with unable to parse the xml test data file15:48
allenaprick_h: Do you have a pastebin for that?15:48
rick_hallenap: http://paste.mitechie.com/show/518/15:49
rick_hthis is what benji's "cast to str()" fix corrected15:50
rick_hallenap: ok, on the py3 side I updated my distribute version and python3 setup.py test passes15:51
benjiallenap: the download-cache and eggs-directory should be configured locally, not in a project's buildout; configuring them locally will still allow them to be shared with LP15:51
allenaprick_h: Can you try with this patch? http://paste.ubuntu.com/817787/15:55
rick_hallenap: sure thing, sec15:55
allenapbenji: Yeah, agreed. I guess this was cargo-culted from Launchpad.15:55
benjiprobably15:56
rick_hallenap: same error for me16:00
deryckabentley, shall we G+ hangout or mumble for our call?16:01
allenaprick_h: Have you removed the str(...) thing?16:01
abentleyderyck: Your call, but I'm having a bad hair day.16:01
rick_hallenap: yea, I never applied it16:01
deryckabentley, let's G+ then, it will be even more fun with bad hair. :)16:01
rick_hhttp://paste.mitechie.com/show/519/16:01
deryckabentley, should have an invite in bound.16:03
allenaprick_h: Can you try with another patch? http://paste.ubuntu.com/817803/16:07
allenaprick_h: Sorry about this; I can't replicate the problem :-/16:08
rick_hallenap: sure thing16:12
rick_hallenap: success, tests pass16:14
allenaprick_h: \o/16:14
rick_hlet me run that on the py3 side and make sure that still runs as well then16:14
rick_hgrabbing some quick grub/eyeball break. Thanks for helping with this.16:14
rick_hI'll let you know how the py3 side goes16:14
allenaprick_h: I'm not sure that _make_unicode() in _from_string() is needed, but I guess we need some tests to prove that.16:14
rick_hallenap: k16:15
rick_hjames_w: so summary, how bad do we need the release atm? I've got to catch up on some code review duties today and it looks like we need some tests and tweaking of the buildout setup and docs before I'd really feel comfy doing a release.16:27
rick_hallenap: do you think adding py3 support is worthy of jumping 1.2.0 to 2.0?16:27
allenaprick_h: A non-technical question. I suddenly feel out of my depth. Why not? (Why? too).16:29
rick_hallenap: so just to shake poeple into seeing 2.0 means craps changed from 1.2, 1.3 means small changes, I should check that changelog16:29
rick_hallenap: purely opinion and not having worked on this don't feel qualified to make it16:29
james_wrick_h, it's not urgent16:30
james_wcjwatson, do you still have your py3 wadllib environment around by any chance?16:30
allenaprick_h: Yeah, then stick with 1.x I guess. I assume that means it's working with py3?16:30
james_wrick_h, which change makes it pass?16:30
rick_hjames_w: that patch file from allenap http://paste.ubuntu.com/817803/16:31
rick_hand for py3 you need to make sure you've got distribute > 0.6.2016:31
rick_hjames_w: and realize not to use buildout16:32
rick_hjames_w: finally, I want to file a bug and get the download-cache thing fixed per benji on the py2 side16:32
rick_hand update some of the docs in https://dev.launchpad.net/HackingLazrLibraries#releases16:32
james_wrick_h, I don't think that actually fixes the bug16:33
james_was in, it makes the tests pass, but only because they are doing something different16:33
rick_hjames_w: right, which is why I want to hold off on the release and update some tests and look at this more carefully16:33
rick_hI'm not sure what wadllib does tbh and so need to catch up16:34
cjwatsonjames_w: probably16:35
james_wI think http://paste.ubuntu.com/817769/ may well be better16:35
cjwatson(2.0 seems overkill)16:35
james_wcjwatson, would you try the patch in http://paste.ubuntu.com/817769/ if you do please?16:35
rick_hcjwatson: k, thanks. 1.3 it is16:35
cjwatsonjames_w: that looks wrong; it would prevent Application from being initialised using a Unicode string16:38
james_wcjwatson, true, but that currently fails on Python216:39
cjwatsonreally?  what's the problem we started with here?16:39
rick_hcjwatson: http://paste.mitechie.com/show/518/16:39
james_wcjwatson, the tests fail under Python 216:39
cjwatsonthe intent of the code definitely seems to be to accept either bytes or unicode there16:39
cjwatsonjames_w: they pass here16:39
rick_hcjwatson: yea, they pass for allenap, appears he's on precise?16:39
james_wbecause it gets bytes, unicodes them, puts them in a StringIO and then reads them16:40
rick_hon my oneric it fails and benji and james_w got the same failures16:40
james_woneiric here too16:40
cjwatsonjames_w: which should work fine in Python 216:40
cjwatsonits StringIO should tolerate either16:40
james_wso an API difference in elementtree or pkg_resources16:40
benjiprecise here16:40
james_whmm16:40
cjwatsonbut it's true, I see the failure in an oneiric chroot16:41
cjwatsonwith Python 2.7 even16:41
james_wif you drop the unicode call then it works again, suggesting that elementtree is choking on unicode16:42
james_wso if we're on Python 2 we should skip unicoding there, and all should work right?16:44
james_wno change for Python2, and the right thing for Python3?16:44
* cjwatson is analysing ...16:44
allenapDoing unicode(a_string) does an implicit decode, and you shouldn't do that to XML bytes unless you know the encoding.16:45
allenapWell, you shouldn't do an implicit decode on XML at all.16:46
allenapKeep it as bytes, let the parser do the rest.16:46
cjwatsonUsing BytesIO in Python 3 prevents people passing in strings in the natural way, though.16:46
allenap(The first pkg_resources change I made might have been a red herring.)16:46
cjwatsonIf you want to do that, you'll have to encode strings.  Seems clunky though.16:47
allenapcjwatson: The second patch (http://paste.ubuntu.com/817803/) still allows for strings and streams.16:47
cjwatsonso minimal reproduction case in oneiric:16:47
cjwatson>>> import xml.etree.cElementTree as ET16:47
cjwatson>>> from cStringIO import StringIO16:47
cjwatson>>> list(ET.iterparse(StringIO(u"<foo/>")))16:47
cjwatsonTraceback (most recent call last):16:47
cjwatson  File "<stdin>", line 1, in <module>16:48
cjwatson  File "<string>", line 84, in next16:48
cjwatsoncElementTree.ParseError: not well-formed (invalid token): line 1, column 116:48
cjwatsonallenap: with the justification being that opening XML files in text mode is wrong?16:49
allenapcjwatson: Yes.16:49
allenapThere is ET.fromstring that seems to do the right thing.16:49
cjwatsonI guess.  But in that case you'll still need to use BytesIO in Python 3.16:49
cjwatsonAnd I think it'd be better to call it BytesIO in Python 2 as well (from cStringIO import StringIO as BytesIO) for clarity16:50
james_wagreed (BytesIO)16:51
allenapYeah, I agree too.16:51
=== matsubara-lunch is now known as matsubara
=== deryck is now known as deryck[lunch]
james_wallenap, so the fix should be to use fromstring?17:00
allenapjames_w: Yeah, I think that makes sense. Punt the problem over to the stdlib :)17:01
james_wallenap, are you putting a patch together?17:07
allenapjames_w: I wasn't. I thought rick_h and benji were doing that?17:08
rick_hallenap: I stepped back for a few while you guys debated the best fix. I think I can put something together based on your conversation. It'll probably be tomorrow when I get that together and I'll bug you guys again if I hit trouble17:11
james_wgreat, thanks rick_h17:12
* rick_h saves this irc log like there's no tomorrow :)17:12
rick_habentley: ping, question on the MP. line 92 removes the content-length header, but I don't see where it gets added? I was expecting DataDownloadView to add it in __call__?17:13
rick_habentley: but I do see you have a test for it checking the length in line 18817:14
abentleyrick_h: It happens in the Zope machinery.17:14
rick_habentley: ah ok17:14
rick_habentley: so the previous setting was just superfluous?17:15
rick_habentley: bah nvm, I see the comment in there about that point17:17
allenaprick_h: Cool :)17:34
=== jtv1 is now known as jtv
rick_hjames_w: so think I've landed your changes to the python-oops, not sure how long it'll take to show in trunk18:04
rick_hjames_w: so ping me if you don't seem them in a bit18:04
james_wrick_h, great, thanks18:08
rick_hjames_w: there it goes, looks like it went through yay18:09
james_wyay18:09
abentleysinzui: do you know anything about DistroSeriesDifferenceComment ?18:19
sinzuiI do not18:19
sinzuiabentley, I *think* it is an explanation for a change in packaging18:19
=== deryck[lunch] is now known as deryck
adeuringrick_h: fancy a review? https://code.launchpad.net/~adeuring/launchpad/bug-834303/+merge/9030418:20
rick_hfor you adeuring, any time :)18:20
sinzuieg backport upstream fix to lucid-based series for partner18:20
adeuringrick_h: thanks!18:20
abentleysinzui: Okay, thanks.  I just asked 'cause none of the authors were around.18:21
deryckabentley, rick_h, adeuring -- about to have to go offline to head home.  tornadoes are coming and need to relocate for safety.18:31
rick_hderyck: ok, head deep18:31
adeuringderyck: good luck!18:31
deryckbut will work online once back there.18:31
abentleyderyck: ack.18:31
deryckit's safe now, but we get a bit paranoid around here when those storms come now. :)18:31
deryckso before they hit, I'll get home. :)18:31
rick_hadeuring: in line 30 of your MP, do you need the cast to set? will you possibly get multiple of the smae subscriber_id?18:31
adeuringrick_h: good catch -- the IDs are unique. I'll remove the set()18:32
abentleyjcsackett: you're mentoring rick_h, right?18:43
rick_habentley: yea, did I not add him to the reviewers list?18:44
rick_habentley: he was nomming some lunch a few ago18:44
abentleyrick_h: Oh, I just wanted to make sure a mentor review was going to happen.18:44
rick_habentley: yea, I've added him as a requested review and should happen when get gets back from lunch18:45
jcsackettabentley, rick_h: i'm back. had a bit of hiccup, but looking through reviews now.19:12
jcsackettsorry for delays. :-P19:12
abentleyjcsackett: No worries.19:12
jcsackettabentley: i have nothing to add to rick_h. that's a really nice change, r=me.19:24
abentleyjcsackett: You guys are going to have to get tougher with me, or I'm gonna get a swollen ego :-)19:24
jcsackettabentley: i promise to tear a branch to pieces some day. just not today. :-)19:25
abentleyjcsackett: thanks.19:25
* jcsackett laughs.19:25
jcsackettonly from lp devs do we thank each other for promises to be mean in MPs.19:26
=== jcsackett changed the topic of #launchpad-dev to: JS build broken until r14727 | https://dev.launchpad.net/ | On call reviewer: jcsackett | Firefighting: - | Critical bugtasks: 4*10^2
thumperhi people20:21
thumperis there someone who understands PPA builds around?20:21
thumperor should I wait for wgrant?20:22
lifeless!ask20:22
thumperhi lifeless20:22
lifelessthumper: :) hi. You know the story. Don't ask to ask.20:23
thumperif I have two packages being built into a PPA, A and B20:23
lifelessrecipes?20:23
thumperand api/abi breaks in A will cause B to fail20:23
thumperB depends on A20:23
thumperif I change A20:23
thumperwill B get built?20:23
thumpernot recipes, just ppa stuff20:23
lifelessok20:23
thumperdo we need to manually kick off a build for B?20:23
lifelessB won't rebuild just because A changed.20:24
lifelessjml: hi20:24
thumperta20:24
lifelessWhat you'd want to do in general if you have an API break is to add breaks: B =< $lastbuild and that will stop folk co-installing incompatible pairs20:25
lifelesskirkland: its really not that much work20:43
lifelessabentley: the other day, talking about big comments- I knew you were talking about merge proposals. I was suggesting we could reduce special cases by making the bugs and merge proposal comment threads more similar21:37
abentleylifeless: I have already done a lot of work to make the bugs and merge proposal comments more similar.21:38
lifelesscool21:39
lifelessI was just wrapping up that chat, I had an ELOCAL and then you had EOD'd.21:40
abentleylifeless: So when this code does go live, code review comments, not just bug comments, will be truncated and have a "Read more" link if they're unusually long.21:40
abentleylifeless: And both will have "Download full text" links, if applicable.21:41
lifelesscool21:41
lifelessthats really nice21:41
lifelessdo we serve those comments from the librarian ?21:42
lifelessIf not, should we? [e.g. migrate their full content out of the DB, leave behind just the truncated form].21:42
abentleylifeless: We don't serve them from the librarian.21:43
abentleylifeless: I wasn't going to, because we need to generate the body text, and possibly obfuscate email addresses.21:43
lifelessah, do we sometimes not obfuscate?21:47
* lifeless goes to triage more bugs \i/21:48
=== jcsackett changed the topic of #launchpad-dev to: JS build broken until r14727 | https://dev.launchpad.net/ | On call reviewer: - | Firefighting: - | Critical bugtasks: 4*10^2
james_whi lifeless21:51
jelmer_uhoh21:55
* jelmer_ takes cover for the incoming flood of email21:55
abentleylifeless: We only obfuscate email addresses for anonymous access.  Logged in users will see email addresses, just as they would in the normal UI.21:59
wgrantlifeless: No, ABI breaks are handled in sensible projects by incrementing the SONAME :)22:01
jmllifeless: hi22:19
lifelessjml: hi! Did you see my testtools release prompt mail.22:19
lifelesspoolie: do you think bug 567632 is likely to get a timeslice in the next 6 months (from a bzr'r) ?22:21
_mup_Bug #567632: loggerhead could be faster if it used statictuple <performance> <loggerhead:Triaged> < https://launchpad.net/bugs/567632 >22:21
jmllifeless: I saw it yeah. Haven't read it yet.22:22
lifelessjml: do you have time to read it now?22:22
jmllifeless: sure.22:22
lifelessthanks22:22
jmllifeless: my laptop screen has died & I've spent the last couple of days setting up a VM on my mac22:22
lifelessjml: ugh22:23
lifelessjml: commiserations22:23
jmllifeless: and my house has a mouse infestation so I'm staying at friend's place22:23
jmllifeless: so not a lot of free time at computer22:23
lifelessjml: I could fedex you a kitten.22:23
jmllifeless: the landlord probably wouldn't approve22:23
lifelessah yes22:24
jmllifeless: perhaps we could adopt the mice as pets and have him evict them22:24
lifeless-so- glad to be free of that :)22:24
wallyworld_wgrant: https://bugs.launchpad.net/jockey/+bug/29339922:25
_mup_Bug #293399: jockey messed up with driver installation status <Jockey:New> <Ubuntu:Invalid> < https://launchpad.net/bugs/293399 >22:25
pooliehi jml22:25
poolielifeless, no22:26
jmlpoolie: hello22:29
jmlI've been reading about R, recently22:29
jmlit's good22:29
jmlvery glad I bought a book22:29
poolieit is interesting22:30
lifelessjml: thanks for replying22:31
jmllifeless: np22:32
lifelessjcsackett: will you be landing the loggerehed bug 276768 branch ?22:36
_mup_Bug #276768: Long revision comment does not wrap <launchpad-loggerhead:Invalid> <loggerhead:In Progress by pr0gg3d> < https://launchpad.net/bugs/276768 >22:36
* jml defers solving VM clock skew until the morrow22:37
lifelesssinzui: bug 601392 - is that easy, or even trivial ?22:39
_mup_Bug #601392: Loggerhead has poor text-background contrast with Chromium <css> <ui> <wcag> <Launchpad itself:Triaged> <loggerhead:Triaged> < https://launchpad.net/bugs/601392 >22:39
sinzuilifeless, trivial someone is landing a loggerhead css change at this minute I think22:41
lifelesspoolie: oh, t'other thing - your in-page timeline view; how is the post-landing fixup coming along?22:41
* lifeless hits enter 5 times to make tagsa pply22:41
pooliei have not touched it you22:42
StevenKlifeless: I think you need to visit your ISP.22:42
poolie*yet22:42
pooliei still intend to but i haven't got to it22:43
sinzuiStevenK, I updated the merge bug with what flacoste and I discussed.22:43
StevenKsinzui: Excellent, thanks.22:43
lifelessStevenK: the tags thing is an LP regression22:44
lifelessStevenK: but yes, I should visit my ISP22:44
lifelesspoolie: well, I trust you will get to it soon!22:45
wgrantlifeless: It sometimes works first time, which is odd.22:46
wgrantAnd I think it regressed in the last monthish.22:47
lifelessyeah22:48
james_wlifeless, if I am creating new python-oops-* projects, do you have a recommendation for who should own them?22:48
lifelessjames_w: yes, I do22:48
lifelessjames_w: https://dev.launchpad.net/CreatingNewProjects22:48
rick_hStevenK: if you get a sec can you fix your convoy branch for the tests_require? I've gotten permission from rockstar to merge my branch and yours in there once fixed so we'll have an updated dev of convoy22:48
james_wlifeless, that seems wrong to me in this case22:50
StevenKrick_h: That change is not really needed, now that we use a .deb of convoy, but sure, why not.22:51
james_wlifeless, it would have the Launchpad team owning code that they never used or worked on, and which is currently unused in Launchpad with no plans to do so, while the people that do work on it don't have the powers over the project22:51
lifelessjames_w: well, whats the case22:52
james_wfirstly python-oops-celery22:53
lifelessjames_w: and who do you want to be responsible for running the project (bug triage, code review, doing releases)22:53
james_wOnline Services22:53
james_was the users of this code22:53
lifelessI have no objection to something named like other python-oops- projects being run by other folk than the lp team22:54
james_wah, I missed the bit at the bottom22:54
lifelessviva la communite22:54
lifelesspersonally, in this case, I would just use lp, as lp is pretty good at low latency reviews etc22:55
lifelessI don't see a great need to be precise about things22:55
lifelessOTOH if that is uncomfortable for you, then feel free to have it separate22:55
lifelessthe 'Not part of Launchpad proper?' section doesn't cover you here, because 'A growing number of the projects the Launchpad team work on ' doesn't fit22:56
rick_hStevenK: yea, but it's still a good form upstream change and while I'm merging I'd like to clean it up22:57
james_wtrue22:57
=== wallyworld_ changed the topic of #launchpad-dev to: | https://dev.launchpad.net/ | On call reviewer: wallyworld | Firefighting: - | Critical bugtasks: 4*10^2
lifelessjames_w: so there are two groups interested in the code: online services (need it for their new project), LP (may use celery, and care about it as part of the oops ecosystem)22:59
lifelessLP is set up for public project governance with contributions from all over.22:59
lifelessOnline services isn't, so far anyhow.22:59
StevenKrick_h: Is done22:59
rick_h_droidty much23:01
james_wI think we're sufficiently set up to handle these projects23:02
lifelessjames_w: I think you need to decide how you want it setup and just do it ;)23:02
lifelessjames_w: if you make it easy for LP devs to contribute, if/when needed, so much the better23:02
james_whttps://launchpad.net/python-oops-celery23:02
james_whttps://launchpad.net/python-oops-dictconfig23:02
lifelessjames_w: the rest of that page may be useful inspiration for you23:02
lifelesscool23:03
james_wthere's some reviews there if you feel so inclined23:03
lifelessso, this is why the page for lp stuff says what it does : tracking N different sources of things to do is horrible23:05
lifelessI'm happy, if you want a review, to be pinged, or even to be in the review team.23:05
james_wI'll have no problems getting reviews when the sprint resumes tomorrow, so it's just if you are interested in them23:05
lifelessbut its very unlikely that I will ever find them todo in my daily gtd routine :)23:06
james_wI'll be sure to explicitly request a review from you if I want one23:06
lifelesscool23:07
james_wI'll package them up tomorrow, then integrate them with our app23:07
lifelesssweet23:07
james_wit's two lines to turn on oopses for celery now, and similar for wsgi23:07
james_wall that's missing is timeline-django, but as I said that's not important for us currently23:07
lifelessjames_w: dictconfig is interesting23:09
lifelessjames_w: perhaps each publisher should accept that instead of having a central clearing house23:10
james_winspired by recent logging changes23:10
james_wlifeless, that might be a good compromise23:10
lifelessyour .testr.conf is old-skool23:10
lifeless[DEFAULT]23:10
lifelesstest_command=${PYTHON:-python} -m subunit.run $LISTOPT $IDOPTION testrepository.tests.test_suite23:10
lifelesstest_id_option=--load-list $IDFILE23:11
lifelesstest_list_option=--list23:11
lifelessthe id option and list option will let you use --parallel23:11
lifelessand let it detect deleted tests a little more reliably23:11
james_wok23:12
james_wit's the same one I've been copying around since testr started I think :-)23:12
james_wthere should perhaps be a "testr make-config" or something23:12
lifelessso yeah, I think if we had some factory style hook23:20
lifelesswe could accept a dict in the core and have each publisher implement its own dict->instance logic23:20
lifelessthe constraints are that the core must not know a-priori about the available publishers (at least at the level of not needing python or packaging dependencies on them)23:21

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