/srv/irclogs.ubuntu.com/2004/11/27/#launchpad.txt

=== BradB is now known as BradB|away
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: add (primitive) search interface to bug listing (patch-790)12:41
Kinnisonnight dudes01:24
elmodo any of the launchpad things talk to external sites?03:14
lifelessyes03:30
dafI think Malone sometimes fetches data from external Bugzillas03:30
dilysMerge to rocketfuel@canonical.com/buildbot--devel--0: set umask in cscvs builds to 022, overriding the twistd daemon default of 077 (patch-67)04:33
=== stub [~stub@dsl-246.248.240.220.dsl.comindico.com.au] has joined #launchpad
=== lifeless_ [~robertc@dsl-78.1.240.220.rns01-kent-syd.dsl.comindico.com.au] has joined #launchpad
stubNote to self: Mirror your arch archived *before* kicking off the hoary upgrade07:55
dafstub: I'm going to be now, but I need to know the difference between the various dogfood DBs on mawson and whether I have access to them08:46
dafstub: basically, I need to import some SQL from the Rosetta Alpha database which describes some users, and I don't know which database to load it into08:46
dafs/going to be/going to bed/08:47
stubThe production database is launchpad_dogfood08:47
stubAll the others are backups and tests08:47
dafok, simple enough08:47
dafand do I have access?08:48
dafwell, either daf or launchpad will do08:48
stubI'm now using createdb -E UNICODE --template=launchpad_dogfood launchpad_dogfood_2004mmdd  to backup the database before a dogfood code update, so these are a good place to get sample data08:48
stubDo you have access to the launchpad user? If so, definitly. Otherwise, just try running psql -d launchpad_dogfood08:49
stubMy default, people should have read only accounts but that is not yet the case08:50
stubI think I have createuser access if you need an account setu08:50
stubIt is a good idea to make a duplicate of the production database to test your script on before running it against the production database unless you are confident it won't screw up (by using createdb -E UNICODE --template=launchpad_database_20041116 daftest)08:52
dafcunning08:52
dafI'll do that08:52
dafI'll let you know if I have any problems when I do it08:53
=== sabdfl [~mark@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
lulumorning all :o)10:03
KinnisonMorning10:44
SteveAhi11:15
=== debonzi [~debonzi@200-158-107-171.dsl.telesp.net.br] has joined #launchpad
sabdflKinnison: i'm working on a syncing system to sync debbugs into malone11:27
Kinnisonsabdfl: cool11:28
sabdflwhen gina creates packages, its just creating the ubuntu ones, right, not the debian ones?11:28
KinnisonYes11:28
sabdflwe'll need to extend it a little, can discuss tomorrow11:28
KinnisonOkay11:28
=== Kinnison is tempted to say that if we want to extend gina a lot; we may have to consider rewriting some of her to fit better with things
sabdflif we have a record of both debian and ubuntu packages, then the syncer can model things more easily11:29
KinnisonYeah11:29
sabdfl*however* it might get very crowded then11:29
sabdflbut since malone's designed for it, we need to go down that road and figure out how to make it sexy11:29
KinnisonYeah11:31
=== Kinnison is currently writing a mini-page for us to put what we want to discuss tomorrow
KinnisonI'll put it on there11:31
Kinnison * Getting gina to create SourcePackage entries for the Debian packages we derive from11:32
Kinnisonthere we go :-)11:33
Kinnisonhttps://wiki.canonical.com/WedAgenda11:33
KinnisonPlease add anything you can think of to there11:33
KinnisonI'll add stuff as it comes to me11:33
=== cprov [~cprov@200.158.100.251] has joined #launchpad
Kinnisonmorning cprov11:37
=== Kinnison gets workraved, brb
cprovKinnison: morning11:40
=== doko [doko@dsl-084-057-097-131.arcor-ip.net] has joined #launchpad
KinnisonSteveA: when assigning to a DateTimeCol in an SQLObject thing... What should I set it to in order to represent now + foo days?11:42
SteveAI suspect you can make an appropriate datetime object11:45
SteveAby taking datetime.utcnow() and adding a timedelta(days=foo)11:45
Kinnisoncool11:45
sabdflKinnison: ok, i'll definitely need your help tomorrow to populate the db with debian as well as ubuntu package details11:56
Kinnisonsabdfl: *noted*11:56
sabdflit's about time anyway, since we need to start figuring out the derivation process11:56
sabdflhow we model and represent that, etc11:56
KinnisonYeah11:57
Kinnisonwill you put that on the agenda?11:57
sabdfldone11:59
=== debonzi [~debonzi@200.158.100.251] has joined #launchpad
Kinnisongoddamnit; workrave won't leave me alone12:00
=== Kinnison turns it down
Kinnisonis the form: 'element in list' efficient; or is it more efficient to store the list as a dict of element=>1 and do 'element in dict' ?12:05
=== salgado [~salgado@200-206-134-238.async.com.br] has joined #launchpad
=== salgado [~salgado@200-206-134-238.async.com.br] has joined #launchpad
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: Simple DistroRelease bug counter (patch-791)12:38
SteveAKinnison: element in list looks through the list in sequence comparing each element using __eq__ (or __cmp__ if there is no __eq__) until it finds a match12:39
SteveAelement in dict or element in set uses the value of hash(element) to find a potential match, followed by __eq__.12:39
SteveAfor collections of 10 or more items, using a set or dict is certainly faster.  for 10s of items, it is noticibly faster.12:40
SteveAfor under 10, I'd use whatever notation is most convenient.12:40
SteveAof course, these are just rules of thumb, and it all depends on how expensive __eq__ is for your objects.12:41
SteveAbut, I see no reason to store things as a dict of element->1 or ->0 or ->None when you could use a Set, and it would be clearer what you're doing.12:42
KinnisonWhere do I get 'Set' from then?12:51
SteveAit is easy to make a set from a list:  sets.Set(mylist)12:51
SteveAimport sets12:51
SteveAsee also: http://docs.python.org/lib/module-sets.html12:54
Kinnisonta12:54
SteveAfor information about using sets as the key of a dict12:54
SteveAor sets of sets12:54
SteveAshould you need such things12:54
KinnisonI don't need that for now :-)12:54
=== SteveA goes to rave
KinnisonUltimately the construct I'm ending up with is:12:54
Kinnison        for f in condemnedfiles:12:54
Kinnison            if f not in livefiles:12:54
Kinnison                os.remove(f)12:54
Kinnisonor similar12:55
SteveAwhy not just use sets and subtrave one from teh other?12:55
SteveAthen remove the lot?12:55
Kinnisonooh good idea12:55
SteveAsee checkarchtag.py, method check_tags_dicts, for some use of sets12:56
SteveAusing Set(mydict.keys()) isn't strictly necessary12:57
Kinnisonyep; gotcha12:57
SteveAbut I think it is clearer12:57
SteveAas a dict is iterable over its keys anyway12:57
Kinnison        for f in condemnedfiles - livefiles:12:57
Kinnison                os.remove(f)12:57
Kinnison;unindents the os.remove slightly :-)12:57
Kinnisongah s@;@/me@12:58
=== SteveA really raves now
sabdflhmm... debbugs allows one message to go to many bugs01:06
sabdflbut in malone, a message belongs to only one bug01:06
sabdfli wonder how best we should sync those01:06
=== salgado [~salgado@200-206-134-238.async.com.br] has joined #launchpad
Kinnisoneach bug gets its own copy I guess01:07
Kinnisonlike in debzilla01:07
sabdflyuck01:07
=== Kinnison grins
sabdflrdbms way would be to have a mapping table from message to bug01:08
Kinnisonindeed01:08
sabdflbut... that's quite a change01:08
Kinnisonassuming a message is considered immutable then that'd be fine01:08
Kinnisonbut if you can mod a message or its attributes then you might have an issue01:08
sabdflmessage should be immutable01:08
=== carlos [~carlos@69.Red-80-33-181.pooles.rima-tde.net] has joined #launchpad
sabdflor, at least, changed everywhere when changed somewhere01:09
sabdflso mappings work in that sense01:09
sabdfla bigger issue is followups01:09
KinnisonHmm01:09
sabdfldo they need to automatically appear in every bug the original message appeared in...01:09
KinnisonI guess when replying you could offer a choice "reply on this bug only" or "reply on every bug this comment is attached to"01:10
=== Kinnison adds "daniel holiday plans" to the agenda for tomorrow
KinnisonSteveA: what time is the launchpad meeting tomorrow?01:17
KinnisonDid someone do a new dogfood deployment last night?01:20
SteveA12:30 UTC01:30
sabdflSteveA: if i'm writing a script with initZopeless, do i need to do anything to get transactions committed?01:32
SteveAsabdfl: not sure.  when you call initZopeless(), you get a transaction manager.  So, transactionmanager = initZopeless(), at the start, and transactionmanager.commit() at the end, I would say01:36
sabdflworks a treat, thanks :-)01:38
SteveAcarlos, daf: can you update the main template that rosetta uses to include the login and logout links, as in the standard main template?01:51
carlosSteveA: ok, looking at it01:52
=== carlos [~carlos@69.Red-80-33-181.pooles.rima-tde.net] has joined #launchpad
KinnisonNoone is owning up to redeploying dogfood last night?02:04
KinnisonWell; whoever did should have restarted the librarian :-)02:08
=== Kinnison has done so now
=== lifeless_ is now known as lifeless
=== carlos [~carlos@69.Red-80-33-181.pooles.rima-tde.net] has joined #launchpad
SteveAcarlos: there's still an 'idaf.py'.  can you get rid of it please?02:34
carlosSteveA: sure02:34
carlosSteveA: did you saw my question about the main template?02:34
SteveAno, I didn't02:34
carlos<carlos> SteveA: but we are already using the main template login02:35
carlos<carlos> SteveA: I only see a link to rosetta/+login that could be removed02:35
SteveAif you look at the main template (main-template.pt I think), you'll see that it has some logic to show a "logout" link if someone is logged in, and a "login" link otherwise.02:35
carlosSteveA: I saw it, I fixed the rosetta/+login to show it only when you are logged in02:36
carlosbut the login/logout links comes from that main template02:36
carlosI mean, we have an extra login link02:36
carlosand the common login/logout02:36
carlosthe login link was fixed to be showed only if you are not logged in, not sure if that's the only change you are asking02:37
SteveAhttps://launchpad.ubuntu.com/rosetta02:37
SteveAit should say "login" in the blue horizontal bar02:37
SteveAcheck the code in main-template.pt02:38
carloshmmm02:38
carlosit was there02:38
SteveAline 117 - 12902:38
carlosin fact, my local copy has it02:38
SteveAdiff it to what is in rocketfuel perhaps?02:39
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
carlosI'm updating my local copy02:39
carlosseems like a recent change removed it, will fix it02:39
SteveAeveryone, please do the following:  cd lib/canonical/launchpad/database ; grep "canonical\.launchpad\.interfaces\." *.py02:39
SteveAyou'll see a bunch of database code that is importing interfaces from specific interface modules, and not from canonical.launchpad.interfaces02:40
=== carlos goes to have lunch
SteveAwould someone please volunteer to fix this up?  also, please ensure you're using only  "from canonical.launchpad.interfaces import ISomething" in all new code, and not "from canonical.launchpad.interfaces.something import ISomething"02:41
debonziSteveA, I can do that02:55
SteveAthanks debonzi!02:55
debonziSteveA, no problem02:55
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: judgeSuperceded and unpublishDeathRow correct now (patch-792)03:08
=== BradB|away is now known as BradB
sabdfldoes anyone know how to do the following in SQL?03:29
sabdfli'm altering the structure of a table, from one-to-many to many-to-many03:30
BradBSteveA: ping03:30
sabdflcreating a new Rel table to be the glue between the two tables03:30
sabdflnow i have to populate the rel table with data from the previous structure03:30
sabdflwhat i basically want to do is a SELECT from one of the tables, and for every resulting line, I want to INSERT into the new Rel table03:31
sabdfl?03:31
BradBsabdfl: \h select into03:32
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: Interfaces import fix. Requested by SteveA. (patch-793)03:34
sabdflBradB: thanks muchly, looks like it would do the trick03:35
BradBno prob03:35
BradBlulu: ping03:41
luluBradB: howdy!03:42
BradBhi :) hm, ul.org was being deathly slow for me for a few minutes there...seems to be a bit better now.03:44
luluBradB: yes - it does seem to oscillate :o( we are looking into optimising plone and ZEO clustering....03:45
=== salgado is now known as salgado-lunch
BradBindeed03:46
BradBlulu: Your comment about News Items...are you asking for that to be done, or noting that It Works? NI's should already be config'd to show correctly.03:53
BradB(i.e. NI's displaying like Events do...not in navtree, but in a portlet, etc.)03:53
elmodoes the website have any sort of query param stuff? 04:01
elmoi.e. urls like www.ul.o/foo?bar=baz&moo=bat 04:01
BradByep, that's common04:02
BradBi.e. for searching, for the portal status message, etc.04:02
BradBs/i.e./e.g./04:02
BradBwhy?04:02
elmoI'm poking nails into my eyes^W^W^W^W^Wsetting up awstats and it wants to know04:03
BradBelmo: do you have to say anything more specific about it than "Yes"?04:04
elmothe chracters used, it defaults to "?" and ";"04:04
elmowhich should be fine, I guess?04:04
BradByes04:05
sabdflBradB: turns out CREATE TABLE, then INSERT INTO ... SELECT f04:10
sabdflworked better for me04:10
sabdflmore control over table structure, primary keys etc04:10
BradBah, i was assuming you'd do a create table first even with select into, but hey, whatever worked.04:13
sabdflBradB: no, the select into actually creates the table04:14
sabdfland you don't seem to have much control over the table it creates04:14
sabdflso beter to create it, then INSERT INTO table SELECT04:14
BradBah04:16
=== salgado-lunch is now known as salgado
=== BradB is now known as BradB|brb
sabdflhmm... table renaming time again04:25
sabdflbradb, what did we run into last time that made it such a pain?04:25
sabdflwe had to rename all the indexes, sequences and keys04:25
sabdflanything else?04:26
carlossabdfl: all foreign keys04:27
sabdfli think the foreign keys that point at a table will be update automatically04:28
carlosreally?, didn't know that04:28
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: Reorganisation and clean-up of placeless auth and security. (patch-794)04:30
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: Added the login/logout links to the rosetta's main template (patch-795)04:38
=== salgado [~salgado@200-206-134-238.async.com.br] has joined #launchpad
=== kiko [~kiko@200-206-134-238.async.com.br] has joined #launchpad
=== BradB|brb is now known as BradB
BradBsabdfl: I don't think so. It was mainly the things you've mentioned that were a pain last time.04:52
sabdflok04:52
sabdflam refactoring the bugmessage system to allow one message to be associated with multiple bugs04:52
sabdfland vice versa04:52
kikosabdfl, is this for things such as changing a set of bugs in the same way?04:53
sabdflkiko: yes04:54
sabdflalso, allows us to model debbugs exactly, since debbugs allows this04:54
sabdflit's going to make our brains hurt on some issues though04:54
kikoI see. Yeah, I thought so too.04:54
kikowhat does it do for debbugs, I wonder?04:55
kikowe could just model it as replicated comments per bug, couldn't we?04:55
BradBone message attached to multiple bugs smells bad04:55
=== salgado_ [~salgado@200-206-134-238.async.com.br] has joined #launchpad
BradBparticularly at this early stage04:56
BradBI wouldn't recommend doing anything on Malone that doesn't push us closer to a first production release. This bugmessage change doesn't push us closer to a first production release.04:56
sabdflBradB: syncing debbugs is something i want for production, so i'm doing the work05:02
sabdflit's one of the big tools that the distro team uses05:03
sabdflthey sync debbugs to bugzilla05:03
sabdflso we need to be able to sync debbugs to malone05:03
KinnisonAnd I take it a sync to bugzilla and a malone->bugzilla watch isn't enough?05:03
sabdflKinnison: not really, not if we want the distro team to come over to malone during the conference05:03
Kinnisonrighty05:04
kikosabdfl, but can't we model this as just replicated comments in malone?05:05
sabdflunique rfc822msgid requirement :-)05:05
BradBsabdfl: this sets the bar that much higher than for a first release, which is another way of saying it'll take longer to get it out the door.05:06
kikosabdfl, that's how bugzilla handles change-multiple comments too by the way. it allows us to add comments like "changed product from foo to bar" which you can't do with a single message per set of bugs05:06
BradBSteveA: ping05:06
kiko(since the set of bugs may have a different original product)05:06
BradBs/than for a/then for a/05:08
sabdflBradB: i'll get it done shortly, or roll it back05:09
BradBok05:09
SteveAhi brad05:11
kikosabdfl, hmmm. so because of the message-id we *need* it to be a single comment?05:12
BradBSteveA: hi. any news on the selected values fix? if not, i'll continue what i'm doing now, which is to render the widgets with a schema somehow (borrowing ideas from the default-editform we have)05:14
BradBmaybe the schema way will be better anyway, so that i can validate, etc.05:14
SteveABradB: I'll be committing it shortly05:15
BradBcool05:16
sabdflkiko: we could remove the unique msgid and copy the comment, but i'd rather just refactor correctly now05:17
kikosabdfl, hmmm. I don't think it buys us very much, just that -- myself, I'd just remove the msgid and dupe the comment, since there are many bug tracking systems out there and who knows how intensely they can vary.05:18
carlosSteveA, sabdfl: could I create a interfaces/rosetta.py file to store a Rosetta specific object interface? (RosettaStats)05:38
=== carlos is killing idaf.py
BradBcarlos: look at the names of the other files in that dir. we don't want app-specific names for those files, but rather names that hint at the domain objects they contain.05:40
carlosBradB: I know, but that interface is used by Project, Product and Pofile05:41
carloshmmm, well, it's related to pofiles, perhaps it could be imported inside pofile.py05:41
carlosnot sure, that's why I ask :-P05:42
SteveABradB: it is done.  just about to commit.05:43
BradBcool05:43
SteveAso, the way it works is you can say:05:44
SteveA  request/htmlform:foo/selected/value   and get 'selected' if form['foo']  == 'value' else nothing05:45
SteveAyou can also say:05:45
SteveA  request/htmlform:foo/cheese/value   and get 'cheese' if form['foo']  == 'value' else nothing05:45
SteveAso, this will work for checkboxes too, I think05:46
SteveAwe can constrain this behaviour later, if we can think of anything else that the htmlform: namespace should provide05:47
BradBcool05:48
SteveAdaf: around?05:49
SteveAcarlos: do you know what happened with making rosetta alpha use the dogfood setup?05:50
BradBSteveA: related to what I was currently trying out: if i've got a schema IFoo, and an IField in their "bar", and a view IFooView, where I can read about hooking up that schema to that view to somehow render IFoo.bar's widget in a particular place in some custom HTML?05:50
BradBs/in their/in there/05:50
BradBmm, i think i might have found it05:54
SteveAI can't quite grasp what you're saying, so glad you've found it ;-)05:54
BradBSteveA: I've defined a schema, like this:05:55
BradBclass IFoo(Interface):05:55
BradB    bar = ...whatever field type...05:55
BradBI've got a view like this:05:55
BradBclass IFooView(object):05:55
BradB    ...some view methods...05:55
BradBNow, I'm writing some HTML for something that's going to be, well, viewed.05:55
BradB<html>...</html>05:55
BradBsomewhere inside the <html>...</html>, I want to render the widget that will collect a value for IFoo.bar.05:56
BradBi don't know who to ask (i.e. which method to call on which thing) to say "render bar's widget here -->"05:57
SteveAnot really IFooView(object)05:58
SteveAprobably just FooView05:58
SteveAthere's something in zope.app.forms (or somewhere like that) to do what you want.05:58
BradBer, yeah, sorry, but anyway, same conceptual brick wall05:58
SteveAI can look it up for you in a bit.  I need to go and get lunch RSN05:59
BradBi'm looking at the edit.pt now. <div metal:use-macro="context/@@form_macros/widget_rows" /> does all the magic, but i have no idea what context is.05:59
SteveAI was thinking of something at a lower level than that06:00
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: Implemented request/htmlform:fieldname/selected/?value for tales. (patch-796)06:00
SteveABradB: can you try out what dilys was just talking about?06:00
BradBsure06:01
=== BradB tla undoes
carlosSteveA: last notice about it was that daf was waiting for stub to import the users06:02
SteveAwhat about importing the pofiles ?06:09
=== kiko [~kiko@200-206-134-238.async.com.br] has joined #launchpad
carlosSteveA: same thing06:14
carlosSteveA: daf don't know where should it be imported06:14
carloshe was waiting for stub to know the database and the procedure to do the import06:15
=== BradB is now known as BradB|lunch
lulunight all :o)07:13
debonzilulu, night07:13
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has left #launchpad []
carlosSteveA: not sure if it's related to your latest changes to test_on_merge.py but the current output is really hard to read07:17
carlosit "eats" the new line char07:18
=== BradB|lunch is now known as BradB
BradBSteveA: where can i read about how to use your tales thing? e.g. i want to know how to call it when my value is in a variable (which will be the 99%-of-the-time common case)07:59
carlosBradB: https://wiki.canonical.com/ZopePageTemplates08:03
carlosI think we should move the document from lalo's server to our wiki or it will be lost...08:03
BradBcarlos: i'm referring to the change steve just checked in to provide a little adapter to make it not-insane to highlight "selected" values in, for example, search forms08:07
carlosooh, ok O:-)08:08
=== elmo is now known as elmo_away
carlossabdfl: ping08:31
dafSteveA: ping08:34
=== debonzi_ [~debonzi@200.158.100.251] has joined #launchpad
=== debonzi_ is now known as debonzi
SteveABradB: what do you need to know?08:48
SteveAcarlos: I think I can fix that08:48
SteveAthanks08:48
SteveAdaf: how is the "rosetta alpha on dogfood system" going?08:49
BradBhow to pass a "value" to your tales adapter stuff when "value" is a variable containing the value (which is the 99%-of-the-time common case)08:49
carlosSteveA: I sent the complete log to launchpad's mailing list08:49
dafSteveA: I'm just about to do the user import08:50
SteveABradB: you use the ? notation we discussed yesterday08:50
SteveAthis is not specific to what I have done, but rather a generic tales thing.08:50
SteveAso, request/htmlform:fieldname/selected/?value08:51
BradByeah, tried that already08:51
SteveAand what happened?08:51
BradBi'll do it again to give you the exact err msg08:51
SteveAok08:52
carlosSteveA: I have a doubt before I could kill idaf.py08:53
carlosSteveA: there is the RosettaProject class08:53
carlosthat seems like you did it to have a demo about "decorations"08:53
carloshmm, IRosettaProject interface more than a class08:54
carlosand then, we have a lib/canonical/rosetta/domain.py file that implements it08:55
BradBSteveA: http://paste.husk.org/2029 raw copy and paste of the tales, and the entire exception08:55
SteveAIRosettaProject can still go in interfaces, regardless of what else we decide to do what that code.08:56
carlosSteveA: where?08:57
carlosproject.py, pofile.py or a new rosetta.py?08:57
SteveAproject, I suppose08:57
carlosok08:58
SteveABradB: that's an interesting error.08:58
SteveABradB: I'm looking into it now09:03
BradBok, thanks09:04
SteveAthe tales code is behaving in an odd way in this case09:07
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: First implementation of DistroRelease Bugs Page. (patch-797)09:20
SteveABradB: I have worked around the issue I just chatted to Jim about09:21
BradBok09:21
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: Killed idaf.py (patch-798)09:29
carlosBradB: https://launchpad.ubuntu.com/malone/bugs/createdby?owner=name98 gives me an exception09:32
carlosI think because owner should be an integer instad of "name98"09:33
carlosValueError: invalid literal for int(): createdby09:33
BradBcarlos: that part of malone 1. isn't well-tested (in fact, it may not be tested at all) but 2. that's ok, because it's going away soon.09:34
carlosok09:34
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: Work around bug in tales and traversal. (patch-799)09:52
SteveABradB: care to try again?09:55
BradByep, just waiting on tla10:07
BradBcarlos: Dude, I'm amazed that your friends named their project "CVSAnalY".10:09
BradB"It has a web interface - called CVSAnalYweb - where the results can be retrieved and analized in an easy way."10:10
lifelessBradB: what is tla making you wait on?10:10
BradBlifeless: tla undo took 10 minutes. then tla star-merge.10:11
lifelessgarh. macos right ?10:11
BradBos x, yes.10:11
=== lifeless wonders about your inode cache cache
lifelessbsds have al these wonderful knobs, if you take the time to find them.10:12
kikothere's an inode cache cache?10:13
BradBlifeless: almost surely not. the problem is an implementation that depends on thousands of small files. this is extremely slow on linux too (when put side-by-side something like svn or cvs), but only magnified on HFS+.10:13
lifelessBradB: its sluggish on linux because it stats 3* over what it needs to.10:14
lifelessI can diff a full kernel tree here in 10-14 seconds, with optimised code I expect that to be 5-7 seconds.10:15
lifelessNow, I'm happy to have a debate about whether the small files are the real killer or not ... but I assure you, regardless, that performance will be improved.10:16
BradBlifeless: i don't think a full kernel has anything near what a revision library has in it, in terms of sheer number of small files.10:16
lifelessin a rev library, only 1 revision is hit to do tla changes, and at most 2 to do tla star-merge.10:16
BradBlifeless: are you sure about that? if so, why do i see output like:10:17
BradB* patching for this revision (rocketfuel@canonical.com/launchpad--devel--0--patch-799)10:18
BradB* patching for revision rocketfuel@canonical.com/launchpad--devel--0--patch-79710:18
BradB* patching for revision rocketfuel@canonical.com/launchpad--devel--0--patch-79810:18
BradB* patching for revision rocketfuel@canonical.com/launchpad--devel--0--patch-79910:18
BradB...10:18
BradBthat looks like N versions being hit10:18
BradBwell, N revisions of a version10:18
lifelessthats building a basis tree. In that case, its 1 hit to get the basis, a hardlink tree build to get the new one, then N patch applications.10:19
lifelessIn the incoming queue for baz, we increase patch application speed hugely, by caching relevant data between patches.10:19
lifelessbut yes, when a reference needs to be built, it does have more work to do.10:20
dafgaah, revision library corruption10:20
lifelessdaf: holy cow batman. Any idea what caused it? (Are you using hardlinked trees?)10:20
daflifeless: no, and yes10:20
lifelessif you use hardlink trees, use the userspace COW library10:21
dafbaz doesn't tell me which files are corrupted10:21
dafwhat userspace COW library?10:22
lifelessyah, you probably need to nuke that particular project from the tree10:22
dafCOW is what I need10:22
lifelessfl-cow10:22
lifelesshttp://xmailserver.org/flcow.html10:22
lifelessbah, project from the revlib10:22
lifelessits in debian too, I think.10:23
sabdfllifeless: morning!10:23
lifelessmorning10:23
sabdflBradB: nearly done with that refacotr on bugmessage10:23
BradBcool10:23
sabdflgood news, we can use the messages for all sorts of other things as well now10:23
BradBlike assignments and infestations?10:24
daflifeless: cunning!10:24
sabdfland bounties, and todo assignments...10:24
daflifeless: it would be nice to know what's causing the corruption, though10:24
lifelessdaf: right, its something that didn't break the link before modifying.10:25
daflifeless: and I don't see it in Debian -- if it's useful, I might ITP10:25
BradBsabdfl: is it possible to get someone to fix page test diff output, and to implement a browser:form directive?10:25
daflifeless: yeah, I know, but I don't remember using anything that doesn't unlink-on-write10:25
lifelessknow culprits include autoconf, vim without the 'set backcopy=no' option.10:25
dafhmm, not autoconf -- this is Launchpad10:26
sabdfldaf: go ahead and upload to ubuntu, anyhow10:26
dafsabdfl: ok10:26
dafwell, nuking the last 10 revisions from the revlib fixed it10:27
=== lifeless goes into grinstone mode
kikoBradB, need some help? "someone"?10:28
BradBkiko: "someone" as in "on billable time" :)10:28
kikohey, use salgado10:29
BradBkiko: these two bugs are costing more to not have than to create, i think.10:29
sabdflBradB: again, i thought stevea / stub had a plan for both10:32
sabdflif you have a better plan, holler10:32
sabdflkiko: is salgado not beavering away at the karma problem?10:32
BradBsabdfl: are you saying yes, they can go ahead and fix that stuff though? i already asked SteveA, but there were no specific plans.10:32
sabdfl"they"?10:32
BradBsabdfl: well, say, SteveA if he's up for it. :)10:33
sabdflsure10:34
kikosabdfl, yes, he's got a foothold on the foaf bits, but if it's urgent I can always assign him to help bradb.10:34
SteveABradB: the form directive is next on my big project list after getting ftp working for james.10:34
SteveAthe tales expression stuff should help you out until then.10:34
BradBi'm trying it now10:34
SteveAthere is a concrete plan for the context stuff10:35
SteveAwhich is next on the list after that10:35
BradBabsolute url, you mean?10:35
sabdflkiko: no, i'd prefer salgado to get cracking on the karma problem10:35
sabdflit's not a big job, the foundations should be laid by es-conf so we can just set policy10:36
kikookay.10:36
sabdflkiko: let's switch to private chat, spec out the karma stuff there for him10:36
SteveAbe nice if someone can look into page test output10:36
SteveAas to make it deal with ... in diffs nicely10:37
SteveAI'm not sure exactly what would be involved, though10:37
BradBmaybe stub could do that if sabdfl/stub agree. stub seems to have the second most Zope 3 core dev experience among LP'ers.10:39
SteveAcprov: what are you up to at the moment?10:39
SteveAthis isn't a thing that requires lots of zope3 ken10:39
SteveAit is more about text processing10:39
sabdflguys, i'm concerned that the pace of commits is dropping off10:40
sabdflexcept for bradb and stub10:40
carlosBradB: they have another tool with the word "rumps" in Spanish ;-)10:40
sabdfles-conf is where we have to prove to the distro team we can deliver god tools for them10:40
cprovSteveA: working on soyuz/people and  related permission issues10:40
SteveAdo you have time for a small project to improve the output of failing pagetests?10:41
cprovSteveA: yep10:42
SteveAgreat.  do you know what needs to be done?10:42
cprovSteveA: no, please explain 10:43
BradBSteveA: http://paste.husk.org/2030 # another raw copy and paste of what may be a problem with the "selected" adapter.10:44
BradBwell, htmlform adapter, that is.10:44
SteveAcprov: when you have a pagetest that fails, and that pagetest includes various use of ... to say "match whatever here", then the diff you get is hard to read10:45
SteveAcprov: it is hard to read because it is a diff of what is produced against literally what is in the page test text file10:46
SteveAcprov: so, it includes lots of lines starting with "+" where you have ... in the text of the page test10:46
SteveAwhat it should do is to take account of the ..., so that you don't have spurious +s10:46
cprovSteveA: I see10:46
SteveAthe way I'd approach the problem is to make a couple of page tests10:47
SteveAthat fail, but use ...10:47
SteveAand then to work on improving the output for these10:47
dilysMerge to rocketfuel@canonical.com/launchpad--devel--0: dynamic contruction of soyuz/people pages (patch-800)10:48
cprovSteveA: do you have any idea about what should be a "better output" for it ? 10:48
SteveAnot really.  you'll have to experiment a bit10:50
BradBcprov: one of the keys is that stuff like10:51
BradB-...10:51
BradB+foo10:51
BradB+bar10:51
BradB+baz10:51
BradBshouldn't show.10:51
BradBi.e. if the *only* "expected" was an elision, that's just a decoy, ignore it.10:51
cprovSteveA: BradB: I'll try something in that way this night, offline, then tomorrow morning I can show you something, ok ?10:53
sabdflpatch-800 :-)10:54
BradBcprov: sure, that'd be great10:54
SteveAcprov: that's great.  thank you10:54
=== SteveA finds the subtle bug in teh zope3 ftp implementation!
sabdflSteveA: is that for our upload system?10:55
BradBsabdfl: speaking of messages being used everywhere, i can already see that we need to be able to not only add a "note" field on assignments and infestations (which i mentioned mdz having mentioned before), but we want to be able to do that on every change we make on an assignment or infestation. e.g. i'm marking bugs "Closed" in Malone right now, i want to explain what the final decision was on them, but i have nowhere to put tha10:56
BradBt.10:56
cprovso, good night, see you tomorrow10:56
sabdflbradb: that can now be a message in the main bug, that is *also* referred to by the bugassignment10:57
BradBah10:57
BradBinteresting10:57
BradBthat's a useful aggregation10:57
sabdfllifeless: what time does stub usually come on stream?10:57
sabdflyes, having separate Message's is going to be fun10:58
sabdflwe can point at them from almost anywhere now10:58
sabdfl:-)10:58
SteveAsabdfl: yes, it is for the uploads thing that elmo wrote the policy part of10:59
sabdflSteveA: cool! looking fwd to having that capability up and running10:59
SteveAnow that I've found the location of this bug, I can fix it, push the fix upstream, stitch elmo's code into a stand-alone server, and give it back to elmo to hack on11:00
BradBdaf: when are we going to see dilys telling us bugs were fixed?11:04
BradBi'm marking a bunch Closed right now, and was hoping to flood the channel11:04
BradB:P11:05
BradBdaf: something like "$person fixed bug #$id "foo doesn't work"' would be dandy11:07
BradBs/id/id:/11:07
BradBooo, $person isn't quite simple yet, but anyway11:08
lifelesssabdfl: not sure, sorry.11:08
sabdfllifeless: call time?11:09
lifelessJust going into an arch team meeting. 30 minutes would be better.11:10
sabdfllifeless: ok11:15
BradBSteveA: did you take a look at that error i'm now getting on your new version of the tales patch?11:17
SteveABradB: what kind of object is term in ?term  ?11:23
=== daf out for an hour or two
BradBSteveA: ah, good point, it's not what i meant to put in there. /me makes a slight mod and tries again.11:25
SteveAbut, I guess I could coerce the object to be a string or something just in case11:28
SteveAthat would give you a more reasonable error I expect11:28
sabdflwhoot! message refactor passes all tests11:34
sabdfljust waiting for stub to approve the db changes11:34
lifelesssabdfl: ring me now please11:43
sabdflwhat's the way to specify the starting contents of a text input?11:44
sabdflvalue="xxx" doesn't work11:44
sabdfllifeless: pick up ;-)11:45
BradBsabdfl: write it in the textarea, i think11:46
BradB(i presume you meant a textarea)11:46
BradBsabdfl: did you intentionally remove the comment widgets, btw?11:51

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