/srv/irclogs.ubuntu.com/2010/01/07/#launchpad-dev.txt

james_wdamn, got confused between pdb and ipython and lost it00:07
james_wI'll wait for it to happen again00:07
* mwhudson lunches00:40
=== MTecknology is now known as Linux
=== Linux is now known as MTeck-Linux
* thumper walks up the road to get real coffee01:26
pooliejml/thumper: can i run a possibly weird idea past you01:28
pooliethat is to do with displaying permissions to users in the web ui01:28
pooliethere was both a bug and a list post today with people failing to understand what permission is needed to do or change a particular thing01:29
poolienow in theory this knowledge is in the lp code in a structured form01:29
pooliecan it be interrogated so that we could show it as text in some way in the web ui?01:29
mwhudsonpoolie: it's not very structured in the lp code, and it's of the form "can person Y do thing Z"01:30
poolieso you can't find out "who can do Z"?01:30
mwhudsonpoolie: there's nothing that can answer "what is the set of the people who can do Z"01:30
mwhudsonright01:30
poolie:/01:31
pooliereally what you want is01:31
mwhudsonit would perhaps not be super hard to add01:31
poolie"Z can be done by project_owner which is currently ~bzr"01:31
poolieetc01:31
pooliei don't know if it's the most pressing problem01:31
pooliebut it does crop up in a lot of places01:31
mwhudsonlaunchpad is made of pressing problems :)01:31
poolie:)01:32
mwhudsonthe way security works in launchpad is there's a mapping from pairs (interface, permission) to objects which implement a particular interface01:33
mwhudsonthis interface just has two methods (i think) "can the anonymous user do this" "can this particular user do this"01:33
mwhudsonyou could add another method "describe the people who can do this"01:33
pooliedo the interfaces have names?01:34
poolieat least in the code01:34
mwhudsonand i guess it would mostly be a matter of boring typing to add all this information01:34
poolieactually what i mean is, are these all different instances of the same class, or are there different implementations of this interface?01:34
mwhudsonthe interface with the methods is called IAuthorization and there are many many implementations01:35
mwhudsonin lib/canonical/launchpad/security.py01:35
mwhudson(which is a gem of a file)01:35
pooliei wonder if you could even just print the repr or classname?01:36
poolieas the crudest thing that could possibly help01:36
mwhudsonhttp://bazaar.launchpad.net/~launchpad-pqm/launchpad/devel/annotate/head%3A/lib/canonical/launchpad/security.py01:36
pooliemm, i'm looking01:37
pooliei have a copy of the code01:37
mwhudsoni guess you could01:37
pooliei realize that would seem a bit messy01:37
poolieso you probably wouldn't want to show it in every context01:38
pooliebut it would actually get people a bit unstuck01:38
mwhudsonwell, you have another fun thing i guess which is that if you can't do something, you don't get shown the link that lets you do it at all01:56
* jml is behind a crappy internet connection02:19
mwhudsonjml: how's your use-testtools branch doing?03:24
jmlmwhudson, it's where it was yesterday.03:24
mwhudsonjml: :(03:27
jmlmwhudson, otoh I had a pleasant evening in the company of friends03:27
thumperjml: how does "Launchpad - what is it and who uses it?" sound for an overview talk name?03:27
jmlmwhudson, so it kind of evens out.03:27
mwhudsonjml: :)03:28
mwhudsonsodding wifi03:28
jmlthumper, pretty good, although a little uninspiring03:28
thumperjml: so give me something inspiring03:29
jmlthumper, I'm thinking.03:29
jmlthumper, "Why Launchpad?"03:52
thumperas an overview talk name?03:52
thumpersounds OK03:53
thumperI'm trying to put together the draft schedule03:53
thumperto email out shortly03:53
thumperwe can tweak talk names03:53
jmlthumper, +103:54
* mwhudson afk for a bit04:12
jmlfjlacoste, hello.04:40
* thumper EODs04:51
jmlI'm getting errors about ampoule not being able to be imported04:52
jml"run buildout" is the answer.05:06
jmlmwhudson, I'm running the use-testtools branch through ec2 test again07:16
jmlmwhudson, it won't fix all of the errors, but it should have many, many less of them.07:17
jmlg'night all07:40
al-maisangood night jml07:46
spivHmm, I'm getting 404 for https://edge.launchpad.net/+icing/rev10123/combo.css08:26
spivIt's novel looking at LP without CSS...08:27
mthaddonspiv: see above - can you help figure out why it's doing that?08:36
mthaddonI've reverted to the old CSS for the moment, but there may be subtle breakage08:37
mthaddoni.e. we're using CSS from 10081, code from 1012308:39
noodles775mthaddon: can we revert the edge rollout for the moment? I'm still trying to find out why pydoc2.4 is being called.08:41
mthaddonnoodles775: see above - reverting the whole rollout is fairly involved, but I've reverted the CSS08:42
noodles775mthaddon: sourcecode/pygettextpo/Makefile08:42
noodles775It seems when that makefile is being run, PYTHON_VERSION=2.4?08:42
mthaddonnoodles775: and why does make static have anything to do with that?08:43
noodles775mthaddon: no idea - I was just looking for why that specific error was occurring, but it could be that other things are being run with 2.4 too (but that's just guesswork).08:44
noodles775mthaddon: scratch that - I just looked at the actual pygettextpo/Makefile - it's explicitly setting 2.4 for some reason.08:45
noodles775mthaddon: so it's actually line 858 where make static is failing...08:47
mthaddonnoodles775: of which file?08:47
noodles775your first paste.08:48
stubDoesn't that get overridden on the command line from the sourcecode/Makefile?08:48
mthaddonnoodles775: yep, I know there's something wrong with "make static" - question is, what08:49
mthaddonnoodles775: fwiw, it looks like we're getting the same error on all servers - so it seems to be a general problem with make build, not just make static08:50
mthaddonnoodles775: scratch that, no, I think it's only make static08:52
noodles775mthaddon: have you tried running make static on a local checkout? I get: /usr/bin/python2.5: can't open file 'scripts/make-static.py': [Errno 2] No such file or directory08:53
noodles775make: *** [static] Error 208:53
mthaddonnoodles775: have you done a make build first?08:54
noodles775mthaddon: yarp.08:54
mthaddonhmm, I don't see a make-static.py either08:56
mthaddonbut it's definitely in the production branch08:56
mthaddoner, edge branch, I mean08:57
mthaddonnoodles775: er, actually, it's not...08:57
noodles775OK, that's progress :)08:57
mthaddonyarp08:58
noodles775mthaddon: what was the previous version that was running on edge? (just so I know how far back to look)08:59
mthaddonnoodles775: 1008109:00
mthaddonnoodles775: making any progress?09:17
noodles775mthaddon: I've been through all the commit messages back to 10081 and can't see anything relevant... a new bzr version, but that's it (and I don't see how that would affect this).09:18
mthaddonnoodles775: can you figure out which revision removed make-static.py?09:18
noodles775mthaddon: I'm confused about make-static.py - I can't see it mentioned in the log of scripts...09:18
noodles775BjornT: Are you around? If so, you might be able to shed some light on the above?09:19
mrevellMorning all09:20
noodles775Morning mrevell09:20
BjornTnoodles775: no, i'm not around, i'm getting ready for the trip to nz. the issue you mention doesn't ring any bells09:54
noodles775BjornT: We found the issue, thanks for letting me know, and I'll see you in a few days!09:54
noodles775(for anyone interested, the losa's hadn't been notified that the deployment script would need to do a 'make css_combine' instead of the old 'make static', as I understand it.09:56
=== matsubara-afk is now known as matsubara
=== matsubara is now known as matsubara-afk
=== Ursinha-afk is now known as Ursinha
=== matsubara-afk is now known as matsubara
james_wwas there an edge rollout last night?12:47
noodles775james_w: yes there was, but there were some issues with the css styles, so currently it's using an older stylesheet.12:48
james_wI don't care about the stylesheet ;-)12:48
noodles775Great :)12:48
james_wthanks12:48
james_wcould someone submit https://code.edge.launchpad.net/~james-w/launchpad/sync-source-negative-versions/+merge/16861 for me please?12:52
james_wassuming that it wasn't that gmb did and it was rejected or similar12:53
mrevellen/nick mrevell-luncheon13:20
=== matsubara is now known as matsubara-afk
gmbjames_w: Er... that should have been submitted.13:57
* gmb really hopes that hasn't been in ec2 for 24 hours...13:57
gmbI'll check13:57
james_wthanks13:57
gmbjames_w: Well, it's not running; it just appears to have vanished. I'll run it again.14:00
james_wthanks14:00
gmbjames_w: Running now.14:10
Ursinhasinzui, hi! Are the GoneError oopses real oopses or should we remove them from the exception section of the summaries?14:24
Ursinhasinzui, https://lp-oops.canonical.com/oops.py/?oopsid=OOPS-1467S201 , an example14:24
sinzuiUrsinha: The are like 404s. They are not application errors. They are people visiting suspended user pages14:25
Ursinhasinzui, I thought so, but wanted to confirm. I'll talk to matsubara about it, thanks14:25
EdwinGrubbsleonardr: ping14:27
leonardredwingrubbs, hi14:32
=== fjlacoste is now known as flacoste
EdwinGrubbsleonardr: I was wondering if you were familiar with any problem in either launchpadlib or lazr.restful that would cause named operations to be ignored. I've put in a bunch of debug points, and the ws.op exists on the request side but disappears on the server side.14:34
leonardredwingrubbs: does it show up in the wadl document? and what is the response when you invoke the operation?14:35
EdwinGrubbsleonardr: I know it shows up in the wadl, since launchpadlib gives me an error when I don't provide the right parameter name. When I run it with the right parameter name, I just get back the json representation of the object.14:36
leonardrand on the server side, where does 'ws.op' disappear?14:36
EdwinGrubbsleonardr: I'm not sure. It's already gone by do_POST().14:40
Ursinhastub, Chex, rockstar, noodles775, jtv, sinzui, allenap: Prod. meeting in 20 mins in #launchpad-meeting @ Freenode14:41
Ursinhaanyone willing to represent foundations?14:42
=== salgado is now known as salgado-lunch
allenapUrsinha: Gah, I won't be here. I'll ask someone else to represent bugs. intellectronica, would you be able to cover for me?14:42
intellectronicaallenap, Ursinha: sure14:43
Ursinhathanks allenap and intellectronica14:43
allenapintellectronica: Thank you :)14:43
leonardredwingrubbs: put a debug point in ReadWriteResource.__call__ and check on self.request.form.get('ws.op') in there14:43
sinzuiUrsinha: The meeting was moved to 16:00 UTC.14:45
Ursinha#*&*$&%14:45
Ursinhaindeed14:45
sinzuiUrsinha: The team leads meeting is a 15:00 UTC14:46
Ursinhasinzui, thanks14:46
EdwinGrubbsleonardr: by the time ReadWriteResource gets the form, it's empty.14:50
Ursinhaso: stub, Chex, rockstar, noodles775, sinzui, intellectronica: Prod. meeting in 1h10 mins #launchpad-meeting @ Freenode14:53
EdwinGrubbsleonardr: I discovered the error. I was trying to call launchpad.me.join(team=guadamen). It works with launchpad.people['no-priv'].join(team=guadamen), so I guess it was losing the args in some sort of redirect.14:53
leonardraha14:53
intellectronicaUrsinha: thanks for the update. by then allenap might be back. either way one of us will join14:53
leonardredwingrubbs: that's the downside of delayed binding14:54
EdwinGrubbsleonardr: do you want me to open a bug for that?14:54
leonardri don't know if there's anything we can do...14:54
leonardrthe http standard says if you POST and get a redirect, you should not re-POST without user confirmation14:54
leonardrbut yeah, open a bug and i'll figure it out later14:55
EdwinGrubbsok14:55
allenapintellectronica: I'm back so I'll do the meeting. Thanks anyway.15:16
Ursinhasalgado-lunch, leonardr, I'd appreciate to have a foundations person joining the prod. meeting in 40 minutes, if possible :)15:22
leonardrursinha: i'll join if it's understood that i'll have absolutely no idea what you're talking about15:27
=== salgado-lunch is now known as salgado
Ursinhaleonardr, :) there is a weekly production meeting, a contact of each team is supposed to be there to represent it15:29
salgadoUrsinha, I'm about to start a call with flacoste.  if I finish before the meeting, I could join too15:29
Ursinhasalgado, the meeting is in 30 mins15:29
flacostesalgado: you'll be done, i have a call with IS at that time15:29
Ursinhagood :)15:29
leonardri think salgado would be a better choice15:29
Ursinhaleonardr, that's ok, but thanks anyway15:29
bachi leonardr -- i just noticed the cache and credential in ~/.launchpadlib are in different places now (http://pastebin.ubuntu.com/352974/).  was this intended?15:45
leonardrlet me see15:46
bacleonardr: specifically, the cached stuff is no longer in the 'cache' subdirectory15:46
bacleonardr: and credentials is now a subdirectory of cache.  very confusing15:46
bacleonardr: the layout shown was just created from scratch using the tool version in launchpad devel15:47
leonardrthat looks like a snafu15:47
bacis that worse than a fubar?15:47
leonardrno, a fubar would be worse15:47
bacah15:47
leonardri'm looking into it now15:48
bacleonardr: thanks!15:48
salgadoUrsinha, do I have to say anything besides "me" when the meeting starts?15:50
Ursinhasalgado, no, unless asked :)15:52
Ursinha(and you will :P)15:53
Ursinhastub, Chex, rockstar, noodles775, sinzui, allenap, salgado: Prod. meeting in 7 mins in #launchpad-meeting @ Freenode15:53
beunothumper, rockstar, abentley, I don't know which of ypou implemented de "related merge proposals" bit in the commit emails, but it's super nice, thank you15:58
abentleybeuno: You're welcome.15:58
Ursinhastub, Chex, rockstar, noodles775, sinzui, allenap, salgado: Prod. meeting now in #launchpad-meeting @ Freenode16:01
jtvadiroiban: you still need to create that translations export branch...  I wouldn't wait for us to start doing that automatically.16:01
adiroibanjtv: sure. np16:01
adiroibanjtv: still strugling with adapters and delegates16:02
jtvadiroiban: just registering the adapter didn't create the URLs for you?16:04
adiroibanjtv: I don't know how to register it. I have removed the IHasTranslation interface from IProductPublic16:05
jtvadiroiban: (sorry for absence; some brush fires)16:13
jtvadiroiban: if you look for "adapter" in lib/lp/translations/configure.zcml, you'll see how to register one.  It's pretty simple.16:13
leonardrbac, can you tell me launchpadlib.__version__?16:13
bacleonardr: 1.5.416:14
bac'/home/bac/canonical/lp-sourcedeps/eggs/launchpadlib-1.5.4-py2.5.egg/launchpadlib/__init__.pyc'16:15
leonardrbac: ok, can i also have the code you're using to get credentials?16:15
bacleonardr: i'm just using login_with16:15
jtvadiroiban: aiui the "factory" is something that gets called to produce an ITranslationPolicy-implementing object from e.g. an IProduct-implementing object.  We use the class itself as the factory, so that just means "construct an object of this class."16:15
leonardrbac: i'm asking you seemingly trivial questions because i can't duplicate the problem. what's your login_with call look like?16:16
jtvadiroiban: so you'd say something like,16:17
jtv<adapter factory="lp.translations.browser.TranslationsPolicy" provides="lp.translations.interfaces.ITranslationsPolicy" for="lp.registry.interfaces.product.IProduct" trusted="yes"/>16:17
adiroibanjtv: sorry for the  delay. Right now, I am attenting the Ubuntu translation meeting16:17
bacleonardr: lp = Launchpad.login_with('interactive', 'dev')16:17
jtvadiroiban: ah, I'm in the launchpad production meeting.  :)16:18
adiroibanjtv: i see. thanks! :)16:18
bacleonardr: let me investigate some more16:18
bacleonardr: i do recall now i made one tiny, "innocuous" change to the launchpadlib.launchpad in that egg to get login_with to work.  seems there was a bug regarding aliased service_roots16:21
bacleonardr: i removed the changes i made to launchpadlib's egg and now definitely have the released 1.5.4.16:31
bacleonardr: here is a transcript to reproduce the problem: http://pastebin.ubuntu.com/352999/16:31
adiroibanjtv: there is already an adapter for lp.registry.interfaces.product.IProduct16:37
jtvadiroiban: providing IHasTranslationGroup?16:44
adiroibanjtv: no. but right now I don't understand how those configuration are used in Zope/LP16:44
adiroibanso I still need to do more reading16:46
jtvadiroiban: it's a bit of a black art to me as well, but the zcml basically tells zope how the views, interfaces, and templates combine and what URL goes where.  In principle, I think registering an adapter for IProduct providing IHasTranslationGroup should tell it enough to know that a +changetranslators can go at the end of a URL for a product.16:46
adiroibanjtv: as I start I tried to understand these slides http://rhodesmill.org/brandon/adapters/16:48
adiroibando you know other generic documentation/examples16:48
jtvadiroiban: only the ones in LP, really16:49
=== beuno is now known as beuno-lunch
=== deryck is now known as deryck[lunch]
intellectronicaallenap: call?17:02
allenapintellectronica: Yes. Do you have your headset, or shall I ring on the mobile?17:02
intellectronicaallenap: i have my new fancy headset, so let's try skype17:03
allenapintellectronica: Right, I think we covered everything there. Pub?17:04
adiroibanjtv: how factory="lp.translations.browser.TranslationsPolicy" should be implemented?17:04
jtvadiroiban: well in this case (and afaik for all other adapters we have) the factory is the class!17:05
adiroibanjtv: sorry for all these dumb questions. maybe I should leave this bug to be fixed by someone else and then try to understand the solution17:06
jtvadiroiban: as I understand the logic, a factory is anything that zope can call, passing in an (in this case) IProduct as a parameter, to get (in this case) an IHasTranslationGroup (or ITranslationPolicy once we rename it).17:06
jtvWhat happens in Python when you get a reference to a class, and you try to "call" it?  You get the constructor.17:07
jtvSo the factory is simply TranslationPolicy.__init__17:07
maxb__init__ isn't really a constructor17:08
jtvmaybe my C++ background is showing here :)17:08
maxbThe thing which is callable to create a new instance is the class itself. i.e. TranslationPolicy not TranslationPolicy.__init__17:09
jtvmaxb: thank you, much clearer than I could say it17:09
jtvadiroiban: what that zcml line I showed you says is really, "if you have an IProduct p and you want to create an IHasTranslationGroup, you get it by doing TranslationPolicy(p)"17:10
jtvadiroiban: once you have that zcml line, in the code you'll be able to do simply IHasTranslationGroup(p) to get an IHasTranslationGroup that "wraps" p.17:11
adiroibanjtv: this is my TranslationPolicy17:12
adiroibanhttp://paste.ubuntu.com/353015/17:12
jtvadiroiban: that looks fine... the __init__ you have there implements the "wrapping" of whatever "context" is such that it implements ITranslationPolicy.17:14
adiroibanthings are more complicated17:14
adiroibanhttp://paste.ubuntu.com/353013/17:14
adiroibanthis is what I get when trying to access a product17:15
jtvargh, I hate zope tracebacks17:15
jtvbut I think it may not be so complicated in principle...17:16
jtv+portlet-translation-groups-and-permission obviously tries to display the product's translation group & access model.17:16
jtvBut you just took those out of the IProduct interface.17:17
jtvah, it's already working on IHasTranslationGroup17:18
jtvadiroiban: I guess this means that we now suddenly have 2 browser:page entries for IHasTranslationGroup17:20
jtvWouldn't expect that to be a problem though...17:20
jtvadiroiban: I guess you renamed IHasTranslationGroup to ITranslationPolicy already, even in the zcml?17:22
adiroibanyes17:23
jtvadiroiban: I could imagine there being a problem because the portlet also wants to access information that's in IProduct but not in ITranslationPolicy (it probably does, come to think of it) but I wouldn't expect the error to look like this.17:26
jtvMaybe sinzui knows.17:26
jtvsinzui, would you be able to help adi with this?17:29
sinzuijtv: adiroiban: I am not very familiar with this error. I agree that this looks like an object has the same named adapter (view) for two interfaces. I think this can be solved by only specifing the name for specific interfaces instead of the general interfaces to ensure there is no overlap17:30
sinzuiI do not know which interfaces are specific in this case.17:30
jtvsinzui: one basic question I wasn't sure about: if we register an adapter from IProduct to IFoo, and we have a page for IFoo with name '+foo', is that enough to create a page <canonical_url(product) + '/+foo' ?17:32
jtvadiroiban: btw it may be useful to run "make harness" and ensure that ITranslationPolicy(my_product) gives you a working TranslationPolicy.17:33
adiroibanjtv: hm... ITranslationPolicy(my_product) or TranslationPolicy(my_product) ?17:44
adiroibani went for TranslationPolicy(my_product)17:44
sinzuihttps://edge.launchpad.net/people claims there more than 1 million registered users in launchpad. I suspect that is a lie, but cannot prove it17:47
adiroibanjtv1: this is what I got http://paste.ubuntu.com/353037/17:57
jtv1adiroiban: you should construct it as ITranslationInterface(product), not TranslationInterface(product)17:58
jtv1The former goes through your adapter; the latter just goes straight to TranslationPolicy.__init__17:58
jtv1(sorry typo; it's Friday here :)17:58
=== jtv1 is now known as jtv
adiroibanjtv: tried with ITranslationPolicy ... but same error18:00
=== deryck[lunch] is now known as deryck
jtvadiroiban: maybe you also need an implements(ITranslationPolicy) in TranslationPolicy.18:02
jtvWhat surprises me is that TranslationPolicy _is_ getting an unproxied Product (the effect of the trusted="yes" in the zcml, something flacoste suggested) and yet we get this error...  it's not a missing underscore in translationpermission or anything silly like that?18:03
jtvI mean, there still is a Product.translationpermission, right?18:04
jtvvery annoying: nonexistent attributes and non-allowed ones give you the exact same error18:05
adiroiban>>> new_product.nonexistentattibute18:05
adiroibanTraceback (most recent call last): File "<console>", line 1, in <module>18:05
adiroibanAttributeError: 'TranslationPolicy' object has no attribute 'nonexistentattibute'18:05
jtvah, but that's different—it's not getting delegated to Product18:06
mrevellnight18:06
jtvSomeone 5 timezones behind me just said "night" and left.  Maybe I should do the same.18:06
adiroibanjtv: that's sign18:07
jtvno, 7 timezones18:07
adiroibanjtv: don't worry, we can dig into this problem tomorrow18:07
jtvadiroiban: you didn't remove Product.translationpermission or anything, did you?18:07
jtvowww, ah!18:07
adiroibanjtv: well... I removed the interface18:08
adiroibanso it is no longer inherited18:08
jtvadiroiban: you may need to specify in zcml that ITranslationPolicy is allowed for a Product or something along those lines...18:09
jtvno, that doesn't make sense18:10
adiroibanjtv: I think that part is implemented. This is the part http://paste.ubuntu.com/353044/18:11
jtvlib/lp/translations/configure.zcml may have to say <class class="lp....TranslationPolicy"><allow interface="lp....ITranslationPolicy"></class>18:11
jtvso new <class> entry for your new class.18:12
jtv(a much simpler version of what you show for Project here)18:13
jtvadiroiban: I'm really going now.  Good night, talk to you tomorrow!18:16
adiroibanjtv: good night. Thanks for your support!18:17
jtvthanks for working on it, hope you'll find it all worthwhile in the end :)18:17
=== beuno-lunch is now known as beuno
sinzuiEdwinGrubbs: I thought bac was also working on Bug 45120818:32
mupBug #451208: email address revealed when subscribing someone else to a bug <Launchpad Registry:In Progress by edwin-grubbs> <https://launchpad.net/bugs/451208>18:32
bacsinzui: not yet18:33
bacsinzui: it was my plan18:33
bacbut i hadn't claimed it18:33
sinzuiokay, then all is well because EdwinGrubbs took it18:33
EdwinGrubbssinzui, bac: oops, I haven't done anything, so you can have it if you'd like.18:34
sinzuibac: I have been a bad engineer. Instead of making my ubuntu-link-upstream mockups this morning, I suspend about 300 spammers18:34
bacEdwinGrubbs: i'm indifferent.  i'll take it if there is something else you'd like to do18:34
sinzuiEdwinGrubbs: take the bug.18:35
EdwinGrubbsI'll keep it18:35
sinzuisalgado: ping18:36
salgadohi sinzui18:37
sinzuisalgado: does the process that removed shipit users from launchpad keep the person entry in the db?18:37
salgadosinzui, that's exactly what it was supposed to remove18:38
sinzuisalgado:  oh18:38
sinzuisalgado: /people says we have more than 1 million registered launchpad users. Even though it is included deactivated and suspended accounts, I suppose that number is pretty close.18:39
salgadolpmain_staging=> select count(*) from person where teamowner is null;18:39
salgado count18:39
salgado--------18:39
salgado 98776018:39
salgado(1 row)18:39
sinzuiinteresting. you did not discount merged, and you number is much lower than the number on https://edge.launchpad.net/people18:41
salgadothat's weird.  maybe the spammers are hitting us hard since the last db restore on staging18:42
sinzuiI considered that, I was investigating, mail.ru which has 1000 registrants in the last 60 days, but they look good18:44
sinzuisalgado: I do not see a spike in registrants. I think the staging data is older than the code.18:46
=== EdwinGrubbs is now known as Edwin-lunch
thumpermorning20:02
=== salgado is now known as salgado-afk
flacostehi thumper20:31
thumperflacoste: hi, just finishing up with the stand up20:31
thumperflacoste: yes?20:35
flacostethumper: nothing, was just saying hi :-)20:35
thumperhah20:35
thumperhi20:35
Edwin-lunchsinzui, bac: bug 504446 looks like just another instance of the problem where assertProperty() needs to be changed to waits.forElementProperty() to become less fragile.20:53
mupBug #504446: Spurious failures in test_project_licenses <spurious-test-failure> <Launchpad Registry:Triaged by edwin-grubbs> <https://launchpad.net/bugs/504446>20:53
sinzui^ thumper, rockstar: Edwins's look into the registry bugs may be relevant to your bugs.20:54
rockstarEdwin-lunch, that might very well be the issue.20:54
thumpersinzui: ah, thanks20:54
sinzuiEdwin-lunch: bac: I suggest the two of you have a pre-imp call about both windmill tests. Bac can make all the changes and Edwin-lunch can review them. I will be the fixer next time and bac can be the reviewer20:56
=== Edwin-lunch is now known as EdwinGrubbs
al-maisanhmm .. I am running "utilities/ec2 test" and at this point I am being prompted for a key:20:59
al-maisanec2test@i-b17a52d9$ bzr branch bzr+ssh://bazaar.launchpad.net/~launchpad-pqm/launchpad/devel /var/launchpad/test20:59
al-maisanwhat password/key is required here?20:59
al-maisanI tried several ssh key passwords and none would work..21:00
bacal-maisan: are you using the option to land the branch?  -s i think?21:00
al-maisanbac: yes21:00
bacthat should be your GPG passphrase21:00
al-maisanah21:00
al-maisanwill try that21:00
rockstaral-maisan, does your ssh key that you use to connect to Launchpad have a passphrase?21:00
al-maisanthanks bac21:01
bacec2 has to sign it for you to send to PQM21:01
rockstarbac, it looks like he's launched ec2 already.21:01
al-maisanrockstar: that's right ec2 is launched already21:01
rockstaral-maisan, so it shouldn't be your gpg key.  I'm wondering if it's trying to use an ssh key it got from you.21:02
al-maisanrockstar: http://pastebin.ubuntu.com/353116/21:02
al-maisanrockstar: what does " it got from you." mean?21:02
rockstaral-maisan, I'm wondering if part of the script uploads your private key to the ec2 instance.21:03
rockstaral-maisan, it's trying to make an ssh connection to bazaar.launchpad.net21:04
al-maisanrockstar: yes, the password it asks for is for a private key21:04
mwhudsonrockstar: no21:04
mwhudsonit uses agent forwarding21:04
al-maisanthat's what the prompt says at least21:04
rockstarmwhudson, ah, okay.21:04
rockstarmwhudson, so why is it asking for a passphrase?21:05
mwhudsonal-maisan: there are two ssh auths going on in this line21:05
mwhudsonal-maisan: the connection to the ec2 instance21:05
mwhudsonal-maisan: and the connection from there to launchpad21:05
al-maisanI see.21:05
al-maisanI guess it is the latter that;s at stake here21:05
mwhudsonmaybe21:06
mwhudsonal-maisan: somewhere not far back in the output it will be saying "you can now use ssh -A ec2test@blah to log in to the instance"21:06
mwhudsonal-maisan: can you try that line?21:06
al-maisanI am being blocked by a modal dialog21:08
al-maisanHere's what the latter says: "Title : unlock private key"21:09
al-maisanBody: An application wants access to prvate key <whatever> but is locked21:09
al-maisannow I am getting one of these: "IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!"21:11
al-maisanplease see: http://pastebin.ubuntu.com/353122/21:11
* al-maisan needs to stop and go through the all-important airport security checks now21:11
al-maisanGood night!21:12
mwhudsonal-maisan: good night21:12
EdwinGrubbssinzui: do you know what would prevent getUtility() from applying a security wrapper?21:47
mwhudsonEdwinGrubbs: is it registered as a securedutility?21:48
sinzuiEdwinGrubbs: getUtility uses the rules specified in zcml: <utility> or <securedutility>21:48
EdwinGrubbssinzui: it's a vocabulary, and it looks like all vocabularies are registered with <utility> instead of <securedutility>. Is there a reason for that?21:53
sinzuiEdwinGrubbs: I do not know of one.21:54
sinzuiEdwinGrubbs: it is in lp/registry/vocabularies.zcml ?21:55
EdwinGrubbssinzui: yes21:55
sinzuiI Extracted those from the launchpad zcml. It was a simple move operation21:55
EdwinGrubbssinzui: since the picker uses a view which exposes huge vocabularies, I really need them all the be securedutilities. I guess I should send out an email before I do anything that widespread.21:56
sinzuiEdwinGrubbs: agreed. flacoste, BjornT, and gary may have some insight into the issue21:57
sinzuiEdwinGrubbs: ValidPerson and ValidTeam are the issue here?21:58
flacosteEdwinGrubbs: why do you need a securedutility?21:58
flacostesecuredutility is a LP addition21:59
flacostewhich makes sure the utility is security wrapped21:59
flacostein the end, it shouldn't matter much21:59
sinzuiflacoste: we do not want to to show user email addresses if the user set them hidden21:59
flacostethen do it21:59
EdwinGrubbsok22:00
sinzuiEdwinGrubbs: When I search for barry to assign bugs to him, I expect to see his full name, and <email address hidden>  instead of his email address22:00
EdwinGrubbsok22:02
EdwinGrubbsbac: how did you go about hiding the name of private teams?22:03
sinzuiEdwinGrubbs: if you try to access it, without privilege, it returns <name hidden>22:04
bacEdwinGrubbs: look at TeamFormatterAPI22:05
sinzuiEdwinGrubbs: use team/displayname/fmt:displayname22:05
EdwinGrubbssinzui: hmm, I'm not sure if it would be worthwhile to do something like that for email addresses, since they are displayed that often in templates.22:06
sinzuiEdwinGrubbs: we do not seem to have a problem anywhere but here and in merge22:07
EdwinGrubbsflacoste: do you foresee any problems with using securedutility for all the vocabularies, since the view the picker uses exposes all huge vocabularies?22:07
flacosteEdwinGrubbs: no, i don't22:08
EdwinGrubbscool22:08
flacosteEdwinGrubbs: well, you might have a few test failures, but nothing serious22:08
sinzuiEdwinGrubbs: In there profile page, there is an adapter view adapter that determines if th user can see the address and provides the list that can be seeen22:08
EdwinGrubbssinzui: are you just talking about the view.visible_email_addresses attribute? I saw that. I could move that into a real adapter to make it easy to use outside of that view.22:12
sinzuiEdwinGrubbs: Certainly if it helps to other parts of the code. It may be over engineers for other parts of launchpad. the profile page rules were difficult to test when it was written in tales22:13
* thumper heading for coffee22:21
wgrantCan somebody please copy egenix-mx-base in lucid from wgrant/launchpad to launchpad/ppa? There's a new version in the primary archive that needs to be clobbered.22:44
mwhudsonjml: hello22:53
jmlmwhudson, hi22:53
mwhudsonjml: have a moment for a call?22:54
mwhudsonsort of mid-imp call i guess22:54
jmlmwhudson, after my call w/ beuno, sure.22:54
mwhudsonjml: when is that? ongoing?22:54
jmlmwhudson, yeah.22:54
mwhudsonjml: ok, ping me when you're done?22:54
jmlmwhudson, will do.22:55
mwhudsonthanks22:55
jmlmwhudson, ping23:11
mwhudsonjml: hi23:12
jmlmwhudson, is now good?23:12
mwhudsonjml: having said the above23:12
mwhudsonjml: would 30 mins or so be ok with you?23:12
jmlmwhudson, yeah, that'd be fine.23:12
mwhudsoncool23:12
jmlbetter even.23:12
* mwhudson afk to go and shout at dick smith's for sending emma the wrong hard drive23:12
mwhudson(sadly, they sent us the $140 one when she paid $220, i guess if it was the other way around...)23:13
wgrantThat's what you get for buying hardware from such places...23:17
jmlsql ninjas?23:48
jmlif I'm doing a query, how can I map the enum integer to a human-readable name?23:48
thumperjml: case??23:53
jmlthumper, got it...23:54
jmlthumper, http://paste.ubuntu.com/353199/23:54
thumperjml: why not use the branch.prefix thingy?23:55
jmlthumper, branch.prefix thingy?23:55
thumpertarget_suffix23:56
thumperinstead of product.name or package.name23:56
* thumper shrugs23:56
thumperwhatever23:56
jmlthumper, because I need to get the upstream product corresponding to the sourcepackage anyway23:57

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