(spiv/#launchpad) SteveA, lulu: registering through the plone site with a + in the email address seems to work fine, apart from an odd error immediately after signing up (and I had to explicitly ask for a password reset after signing up, too)12:07
SteveAspiv: did you see the subsequent email from lu?  the people mailing in were having trouble with mako's shipit, not with the main website12:10
SteveAbut, thanks for checking into it.  we should fix the odd error you uncovered12:10
(daf/#launchpad) spiv: lulu is not here12:10
(spiv/#launchpad) SteveA: Yeah, I did, but I thought it would be working checking just in case :)12:10
(elmo/#launchpad) steve: it's 11pm...12:10
(spiv/#launchpad) daf: Damn people with nicks that are too short to bother tab-completing ;)12:10
SteveAelmo: it is 1am12:11
(daf/#launchpad) spiv: damn them :)12:11
(spiv/#launchpad) SteveA: Also, this means the nick-generation stuff is live.12:11
(elmo/#launchpad) SteveA: blahblah, you know what I mean. where Lu is, it's 11pm12:11
SteveAcan you note the odd error in the bug report?12:11
(spiv/#launchpad) (I also changed the authserver to accept nicks as login IDs, alongside Person.id values and emailaddresses)12:12
SteveAelmo: ok, but it was spiv who addressed lulu12:12
(daf/#launchpad) aye, Lu clocks of pretty regularly between 5 and 612:12
(spiv/#launchpad) Hmm, it's midnight here, come to think of it...12:12
(daf/#launchpad) s/of/off/12:12
SteveAthat will allow us to switch between email address for login and nick, if we want to at some point12:12
=== spiv still isn't quite used to being on roughly the same timezone as other people ;)
(daf/#launchpad) :)12:13
(daf/#launchpad) being over here is weird12:14
SteveAyou mean you're not dead yet?12:14
(daf/#launchpad) stub tends to be saying "good morning" when I'm going to bed12:14
(daf/#launchpad) SteveA: not yet12:14
SteveAdoes it feel safe at night?12:14
(daf/#launchpad) Mark's estimation of my life expetancy notwithstanding12:15
(daf/#launchpad) it does, actually12:15
(daf/#launchpad) not that I've been out at night much12:15
(daf/#launchpad) safe, but cold12:15
SteveAI must try to sleep12:15
(daf/#launchpad) yes12:16
(daf/#launchpad) you must12:16
=== BradB just realized daf and co. are a few hours from Montreal
BradBNYC Mao Championship!12:18
(daf/#launchpad) :)12:18
BradBlast time i was in NYC was for the '96 NY Open Chess Championship...memories...12:18
BradBpictures of the twin towers, etc.12:18
(daf/#launchpad) gosh, 8 years12:19
=== carlos hates too much the functional tests...
BradBcarlos: why?12:21
carlosBradB: because I'm trying to fix one, that's all :-)12:21
BradBah...yeah, that's the fun part12:21
BradBfsdo "fun"12:21
(dilys/#launchpad) Merge to rocketfuel@canonical.com/launchpad--devel--0: implemented bug subscription listing (patch-632)12:26
carlosdaf: I detected a bug in pofile_adapters that I don't think it's a direct problem of my changes, should I fix it? (the functional tests are failing because it)12:35
carlosI mean, should I fix it or wait after the merge?12:36
(daf/#launchpad) if it's not related to your branch, you'll ideally fix it in the trunk and merge the fix onto your branch12:38
(daf/#launchpad) I don't know if that's feasible or not12:38
carlosdaf: it should be doable, I will take that approach tomorrow, I'm tired today and it's too late...12:39
carlosdaf: we need to do a review of all code, I was adding XXX in many places12:39
(daf/#launchpad) "all" code?12:40
carloswell, all code related to pofile.py12:42
carlosperhaps it's me, but there are some places where I have some doubts if it's correct...12:43
carlosdaf: I'm tired tonight, let me rephrase it tomorrow :-)12:44
(daf/#launchpad) sure :)12:44
carlosok, good night!!12:47
(dilys/#launchpad) Merge to rocketfuel@canonical.com/launchpad--devel--0: fixed adding of bug subscriptions (patch-633)01:04
lifelessspiv: around ?01:13
ddaalifeless: duh... just realised that the sql recipe you gave me to enable sync was wrong...01:14
ddaahad to dig into sourcesource.py, a job is a sync if sourcesource.syncingapproved is non-NULL instead of just processingapproved...01:15
ddaayou said: update sourcesource set processingapproved=NOW(), syncinterval='1 day' where name like 'foo%';01:15
lifelessthe recipe I gave you was syncingapproved=NOW() ...01:15
lifelessoh, oops.01:15
ddaathe force of copy-pasting :-P01:16
sabdfllimi has real issues with his tla revision library01:17
ddaabtw, I noticed that the taxi.py brokeness will prevent the mirror from ever being populated, since the mirroring is done there. You're sure that's not going to be a problem for testing?01:17
sabdflinode signature validation problems, etc01:17
sabdflcan i just blow away the revision library contents?01:17
ddaasabdfl: yes01:17
sabdflrm -r the directory/*01:18
ddaarm -rf revlib/*@*01:18
ddaaso you do not blow the =* files which store the options01:18
lifelessddaa: thats what I'm trying to track dow with spoiv01:18
lifelessddaa: and yes, the stuff that you are testing doesn't need the mirroring.01:19
ddaalifeless: ha... I thought that spiv was tasked to "make taxi.py sort of work again"01:19
lifelessapparently the sqlobject stuff had thread safety issues.01:20
ddaaho btw, I noticed that the slave bot tend to hang with a two zombie subprocs, on sh and one cvs... i would not be very surprised that the cscvs process handling stuff is making twisted unhappy...01:21
lifelessddaa: you tracked down a hang on that?01:22
ddaajust a guess01:22
lifelessI've had a suspicion about it, but haven't verified it. Can't fix a guess.01:22
ddaalifeless: that's exactly what I did with pyarch/twisted...01:23
ddaa"I guess that using twisted own process handling will make thing run more smoothly"01:23
ddaaand, surprise, it worked the first time01:23
lifelessddaa: with pyarch I had verified it as being a problem - I threw logging statements before and after pyarch calls.01:23
lifelessand it consistent broke there.01:24
ddaalifeless: oh ok01:24
=== ddaa goes back at putting zenity to sync
lifelessso far, its not been breaking *for me* around similar popen calls in cvs.01:24
ddaabtw, I made a hack here so buildbot binds to localhost only01:25
lifelessif you can track down a hang there, that would be great - I'll port over your process handling asap.01:25
ddaaso it does not listen to the wild internet on my non-firewalled ubuntu system.01:26
lifelessaw man, kdelibs has a file kdecore/libintl.cpp.orig01:26
lifelessanyone spot the problem there ?!01:26
ddaaI do01:26
ddaait will be moved to +conflicting-files or something, won't it?01:26
lifelessyeah, but the id remains.01:27
lifelessso you get a tree-lint error.01:27
ddaathat orig/rej handling behaviour in tla is soooo stupid...01:27
lifelessI don't agree.01:28
ddaait's moving stuff around even when the inventory tells it's source.01:28
ddaa"if it source it belongs there, user said"01:28
lifelessthe problem is that foo.c is patched by 'patch'. and patch created foo.c.orig and foo.c.rej.01:28
ddaalifeless: that does not happen in your case01:29
lifelesshaving those files present in a 'names' or 'tagline' with 'untagged source source' would result in them being commited.01:29
ddaaso it's creating a problem in your case.01:29
lifelessddaa: my case is irrelevant. its like commiting a dir called CVS to CVS.01:29
lifelessit can't do it.01:29
ddaaYou can't commit .orig and .rej file to arch? Weird, i already commited {arch}/=tagging-methog.orig, of course the result was a corrupt archive since the revlib would not build.01:30
ddaaI just cachedrev to work around it.01:31
ddaaAnd the revlib would not build because tla moved the file around.01:31
ddaaeven though it was source01:31
lifelesswell, more accurately, if you manage to do it, you get trouble.01:31
lifelessI *can* go to a cvs repository and create a dir inthe repo called CVS01:32
=== mdz [~mdz@69-167-148-207.vnnyca.adelphia.net] has joined #launchpad
lifelessand that similarly gives the system kiniptions.01:32
ddaaWhat causes trouble is that tla move source files when their name end in .orig or .rej. If the user says it's source, trust the user.01:32
lifelessddaa: heres where I disagree.01:32
lifelesstla should lift the semantic problems first. once that is done, your suggestion is viable. until then its just a can of corner cases.01:33
lifelessfor instance, we could reserver ,,filename.orig and ,,filename.rej for tla.01:33
lifelessas we already have reserved ,,* for tla.01:34
ddaaYup. Would be better.01:34
ddaaThere's probably no one around except tom perverse enough to use such names.01:35
ddaaYet I reckon the moving .orig files around causing breakage was hard to forsee for the arch designer.01:36
ddaathat's the kind of thing you think is perfectly reasonable until 01:37
ddaaa use case comes where it's not...01:37
lifelessmoving around was not the original behaviour01:37
lifelessit was a reaction to other negative behaivour...01:37
ddaaI was probably not there at the time...01:38
ddaawhat was the issue?01:38
lifelessIIRC the original one was them being committed to tla.01:39
lifelessso then they got moved out of the way.01:39
lifelessrather than out of the namespace at creation. :{01:40
ddaaThat was before the inventory classification?01:40
ddaaWas not, because that still need "precious" logic to work...01:41
lifelessinventory is way back 01:43
ddaaso... wrong solution... the right solution was to classify as non-source.01:43
lifelessbut the defaults were older still01:43
lifelessand no, classifiying as non-source doesn't fix anything.01:44
ddaait prevents the file from being commited01:44
lifelessbut not from overwriting a possible users file, and not from the user changing the naming methods, and not the naming methods for existing archives.01:45
ddaaoverwriting a possible user file: that's were the +conflict-file should trigger, not before01:46
ddaachanging the naming method: that's exactly my point, if I say those are source, they should be archived and handled correctly.01:46
lifelessddaa: we're back full circle. 01:47
ddaalifeless: yes... I was expecting it...01:47
ddaaso, you just need to special-case your code to say that .orig and .rej file cannot possibly be source, and if someone is perverse enough to actually use a .orig suffix for a real source file, then you're screwed.01:49
lifelesswell, I'm checking if thats what kdelibs do.01:49
lifelessor if its a glitch they would rather forget.01:50
=== ddaa lights a notional candle and notionally prays
ddaaTools that cause screwage are bad. Pyarch is bad for having a synchronous api, twisted is bad for causing other process handling schemes to break, sqlos is bad for having difficult thread safety problems, and tla is bad for messing around with .orig and .rej files.01:52
lifelesscongratulations, you have just channeled asuffield.01:53
lifelesshow do you feel?01:53
ddaalike the world is a big pile of steaming shit01:53
ddaaif asuffield feels like that all the time, I understand he's generally unfriendly.01:53
ddaabut I find the irony of it all funny :-D01:54
=== ddaa had blushed...
lifelessrevision 1.101:55
lifelessdate: 1998-06-03 21:04:23 +0000;  author: kulow;  state: Exp;01:55
lifelesstrue LPGL version of libintl. I'm almost sure, that this will cause major01:55
lifelessproblems, but has one big advantage: we have no longer mixed licenses.01:55
lifelessAnyway, I've added the .orig file, so in trouble, the user can copy the01:55
lifeless.orig file back01:55
lifelessthe kde folk overloaded .orig in their tree. 01:56
=== ddaa cackles
lifelessthe first patch failure they get, they'd be hosed.01:56
lifelessthen 25 days later, they nuke it.01:56
lifelessrevision 1.201:57
lifelessdate: 1998-06-28 22:18:05 +0000;  author: garbanzo;  state: dead;  lines: +0 -001:57
lifeless*.orig and *.new don't really belong in here, and they're not being used01:57
lifelessanyways, so I'd just as soon sweep em into the Attic.01:57
lifelessok, time to teach cscvs that .orig and .rej should be ignored.01:57
=== ddaa still thinks that's not the Right solution
ddaa<insert asuffield's rant about upstream being stupid and evil>01:58
ddaalifeless: Exceptions.RuntimeError, No CVS Commits have occured, cannot perform incremntal totla01:59
lifelessddaa: you know the right soluiton: alter tla to use ,,filename.{orig,rej}. update the move-conflictpatch files logic, update the default naming conventions.01:59
lifelessdo we want to do this for 1 repository ?01:59
lifelesswhich 6 years ago for one month had a brain fart ?02:00
ddaalifeless: that's not the right solution, i expect that will hose emacs diff-mode which handles .rej files by (i suppose) guessing the patch target from the name of the rej.02:01
ddaaand any other tool which does essentially the same thing.02:01
ddaaExcept, if the ,,filename.rej file is altered to be a proper patch.02:02
lifelessddaa: its the only solution that both prevents the user hosing their working tree and simultaneously allows them to put .orig and .rej files in the archive.02:02
lifelessin short, this isn't a trivial problem, and asserting that tla should 'just leave the files alone' isn't sufficient to fix it.02:02
lifelessyour exception - the lastFoo method has failed to retrieve the incremental starting point.02:03
ddaaI'm all in favor of letting the user hose the tree if the inventory is altered so .orig/.rej files are source. You know, the sharp knives / dangerous tools stance.02:03
lifelessddaa: we currently give people a bandsaw. And you want to make it worse ?02:04
lifelessI'm fully in favour of powerful tools, and *should they need to be* dangerous ones.02:04
ddaaSame thing as I said before. There should be something that is really a toolbox, and something that is really a user tool. The same tool cannot do both properly.02:04
lifelessah yes - cscvs.arch.findLastCSCVSCommit02:05
lifelessthat returned None, not the revision that was last commited to arch.02:05
ddaaYet, you are correct that this discussion is not very relevant, since existing tools and practices effectively route most people around the problematic use cases.02:05
lifelessyou should be able to just import it and execute it to see what the results are.02:05
=== jblack_ [~jblack@static-209-158-45-74.scr.east.verizon.net] has joined #launchpad
ddaaah... my fault... last time I tried to sync I had not set the syncingapproved and it nukedtargets then crashed because of the locked sqlite db.02:15
ddaa(which was locked because the previous run crashed on taxi.py)02:15
ddaaIt's tricky to get that thing to run.02:17
BradBsabdfl: wasn't the adding of comments to a bug already working? i thought it may have been but it isn't anymore.02:31
sabdflBradB: might have been broken with the skinning02:32
sabdflunderlying code might still work02:32
sabdflcheck for a BugMessage addform02:32
sabdflBradB: could you focus on email for this week?02:32
sabdfli'll keep cleaning up the basics02:32
sabdflsorry, got a bit lost on the artwork today02:33
sabdflbut i spent a lot of time on it over the weekend02:33
BradBsabdfl: that was my intent, so the first thing that seemed needing email notification was adding of comments.02:33
BradBbut adding of comments doesn't work.02:33
sabdflah :-)02:35
BradBi also fixed subscriptions earlier, because notifications are pretty useless if people aren't able to subscribe. :)02:35
sabdflBradB: i think they *do* work but the form is messed up02:35
BradByeah, that's why i asked here next02:36
=== daf [daf@muse.19inch.net] has joined #launchpad
=== justdave [~dave@] has joined #launchpad
ddaalifeless: portd/JobStrategy.py, line 180 in getCVSTempRepoDirPath02:53
ddaareturn os.path.join(self.getWorkingDir(self.aJob,self.dir), "cvs_temp02:54
ddaaexceptions.AttributeError: 'CVSStrategy' object has no attribute 'dir'02:54
ddaaI'm going to bed now.02:54
ddaaJust pointing out the problem. If you do not have the time to fix it, I'll do it tomorrow.02:55
=== ddaa [~ddaa@nemesis.xlii.org] has left #launchpad []
sabdflcheers guys, launch day tomorrow, need some sleep03:12
=== sabdfl [~mark@host217-37-231-28.in-addr.btopenworld.com] has left #launchpad []
(dilys/#launchpad) Merge to rocketfuel@canonical.com/launchpad--devel--0: fixed adding comments to bugs (patch-634)03:28
=== BradB is now known as BradB|away
=== jblack_ is now known as jblack
(dilys/#launchpad) Merge to rocketfuel@canonical.com/cscvs--devel--1.0: skip over .rej and .orig files in CVS repositories (patch-33)04:59
(dilys/#launchpad) Merge to rocketfuel@canonical.com/buildbot--devel--0: api update to latest cscvs (patch-60)05:21
(dilys/#launchpad) Merge to rocketfuel@canonical.com/buildbot--devel--0: restore setting the cscvs tree's logger (patch-61)05:38
stubstub@belch ~ $ tla -V06:47
stubtla tla-1.2-4 from regexps.com06:47
stubCopyright 2003 Tom Lord06:47
stubThis is free software; see the source for copying conditions.06:47
stubThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A06:47
stubReport bugs to lord@emf.net.06:47
stub# automatically generated release id (by arch-buildpackage)06:47
stublifeless: Before I go chasing why things are screwed at my end, is that correct?06:48
lifelessthats the standard ubuntu or debian build06:48
lifelesswe are generally using integration, but - whats the problem ?06:48
lifeless(Is it the one I mailed you back about already?)06:48
stubThe one I mailed you about (I think you were confused by by mail client helpfully word wrapping). But I'm getting the same error in launchpad, so something has changed between the last patch I committed yesterday and this morning. I was checking if a package upgrade had bit me without me realizing.06:51
lifelessthe (null)/ bit in your log was definately wrong06:52
jblackwhat tla are you using? 06:52
lifelessthat (null) will cause the lookup for the signing rule to fail.06:52
lifelessdo you see the same (null)/category--branch--version--patch-level in the launchpad corrupt checksum ?06:52
lifelessjblack: 1.2-4 - ubunut standard06:52
lifeless(where that (null) is, should have been the archive name - 'stuard.bishop@canonical.com')06:54
=== jblack looks up bofh...
jblackCosmic rays, stub.06:55
jblackMore seriously, very weird. Can I see the log? 06:55
stublifeless: No - there is no null in the launchpad one.06:55
lifelessstub: eek.06:56
lifelessbut its also not got the gpg lines around it ?06:56
=== lifeless hands over to jblack, as he's flat out
jblackFirst time I've heard of anything like this. Nothing even close.06:57
jblacktla bombs if it can't figure out the version involved.06:57
lifelessjblack: try 'tla init-tree', 'tla import -S $fqversion'06:58
lifelessthen  check checksum in the base-006:58
stub-----BEGIN PGP SIGNED MESSAGE-----06:58
stubHash: SHA106:58
stubSignature-for: stuart.bishop@canonical.com/cookiecrumbler--canonical--1.2--patch-306:58
stubmd5 log b42f0da30042d2c99a3492293a5a7fb706:58
stubmd5 cookiecrumbler--canonical--1.2--patch-3.patches.tar.gz aedf797c0b7536fd7043076990b4acd206:58
stub-----BEGIN PGP SIGNATURE-----06:58
stubVersion: GnuPG v1.2.4 (GNU/Linux)06:58
stub-----END PGP SIGNATURE-----06:58
lifelessI advised stuart to use the normal way which is 'tla init-tree $fqversion' ; 'tla import -S'06:58
stubThat is the checksum from a project I am sure hasn't been touched since it was working. Same error, so either my tla is screwed or I've screwed my config and don't remember doing it.06:59
lifelessstub: that looks fine syntax wise.06:59
lifelesscat $thatfile | gpg --verify-files -06:59
jblackmy patch-log looks right for init-tree $fqv ; tla import -S 07:00
lifelessit's signature-for line does not have (null)/.. ?07:00
jblackThough I'm using a newer gpg of course.07:00
jblackpardon, newer tla.07:00
jblackI didn't make a signed (duh) making07:01
lifelessjblack: hang on.07:01
lifeless'init-tree $fqv ; tla import -S ' is known good07:01
lifelessits 'init tree'; 'tla import -S $fqversion' that is suspect07:02
lifelessstub: did that cat work ?07:02
jblacksince when does import -S take an option ? 07:03
lifelessyear 007:03
jblackDoesn't improt here.07:03
jblackDoesn't improt here. "tla init-tree; tla import -S this--that--0" 07:03
jblackreports no patchlog. 07:03
lifelessbut its not the recommended way because things between init-tree and import need the patch-log dir etc07:04
jblackand import -S doesn't take a fqvn argument.07:04
lifelessheh, well stub got a bad checksum in the archive.07:04
jblackJust checked the code.07:04
lifelesstla import [options]  [[archive] /version] 07:04
lifelessis the help.07:04
lifelessstub: ping07:06
stublifeless: The cat worked07:06
jblackI can't reproduce his behavior here.07:06
lifelessok, stub, now cat your ~/.arch-params/stuart@canonical.com.check file07:06
jblacknot with my tla-dev, anyways07:06
stubI'm doing a tla get from rocketfuel@canonical.com-SOURCE - this should confirm if I have a corrupted archive or not.07:07
lifelessstub: hang on07:07
lifelesslets work through this methodically.07:07
lifelessdoing a get from -SOURCE *will not work*.07:07
lifelessyou are thrashing, which helps noone.07:07
lifelessstub: so, please cat that file.07:07
stubI don't have a stuart@canonicalcom.check - just an =default.check. It contails just 'gnome-gpg --clearsign'07:07
lifelessstub: ok, thats not what we recommend.07:08
lifelessbut, we can test if its working07:08
lifelessin fact.07:08
lifelessthats your problem.07:08
lifelessyour default *check file* is *signing*.07:09
lifelesswhich will never work.07:09
lifelessthe check file should be something like07:09
lifelesstla-gpg-check gpg_command="gpg --verify-files -q --no-show-notation --batch --no-tty " 2>&1 | grep "^gpg: Good signature from" 1>&207:09
lifelesswith extra params if you are checking a specific archive to restrict the keys that can be used.07:10
stubSorry - wrong file07:10
stubstub@belch ~/tmp $ cat ~/.arch-params/signing/=default.check07:10
stubtmp=$(mktemp tla-gpgout.XXXXXX)07:10
stubif ! gpg --batch --verify 1>"$tmp" 2>&1; then07:10
stub    cat "$tmp"07:10
stub    exit 107:10
stubrm -f "$tmp"07:10
lifelesswhere did you get that from ?07:10
jblackprobably me07:10
jblackwhich goes all the way back to the orignal recommendations of keychecking.07:11
lifelesssh ~/.arch-params/signing/\=default.check <good checksum file>07:11
stubAnyway - I just checked our a revision from chinstrap and things look to be working fine. I think my archive is screwed.07:12
lifelesssh ~/.arch-params/signing/\=default.check <  'good checksum file'07:12
lifelessthat will succeed or fail07:12
lifeless(good checksum file in your archive, obviously)07:13
stubsh ~/.arch-params/signing/\=default.check < /home/stub/.arch-archives/stuart.bishop\@canonical.com/launchpad/launchpad--devel/launchpad--devel--0/patch-271/checksum07:14
stubWorks fine07:14
lifelesstry this07:15
lifelesstla cat-archive-log stuart.bishop\@canonical.com/launchpad--devel--0--patch-27107:15
stub$ tla cat-archive-log stuart.bishop\@canonical.com/launchpad--devel--0--patch-27107:16
stub  archive: stuart.bishop@canonical.com07:16
stub  revision launchpad--devel--0--patch-27107:16
stub  checksum file: checksum07:16
stubtrouble reading checksum file for stuart.bishop@canonical.com/launchpad--devel--0--patch-27107:16
lifelessok, can you paste the checksum file please07:16
stubstub@belch ~/launchpad/launchpad $ cat  /home/stub/.arch-archives/stuart.bishop\@canonical.com/launchpad/launchpad--devel/launchpad--devel--0/patch-271/checksum-----BEGIN PGP SIGNED MESSAGE-----07:17
stubHash: SHA107:17
stubSignature-for: stuart.bishop@canonical.com/launchpad--devel--0--patch-27107:17
stubmd5 log bf098182919c00fb76eabd690f0ea42607:17
stubmd5 launchpad--devel--0--patch-271.patches.tar.gz 0550eecf8e2860babf1d61e55a80f64907:17
stub-----BEGIN PGP SIGNATURE-----07:17
stubVersion: GnuPG v1.2.4 (GNU/Linux)07:17
stub-----END PGP SIGNATURE-----07:17
stubstub@belch ~/launchpad/launchpad $ cat  /home/stub/.arch-archives/stuart.bishop\@canonical.com/launchpad/launchpad--devel/launchpad--devel--0/patch-271/checksum | gpg --verify-files -07:18
stubgpg: Signature made Mon 18 Oct 2004 18:35:14 EST using DSA key ID BAC6374A07:18
stubgpg: Good signature from "Stuart Bishop <stuart@stuartbishop.net>"07:18
stubgpg:                 aka "Stuart Bishop <zen@shangri-la.dropbear.id.au>"07:18
stubgpg:                 aka "Stuart Bishop (dropbear.id.au Domain Admin) <hostmaster@dropbear.id.au>"07:18
stubgpg:                 aka "Stuart Bishop (Work) <stuart.b@commonground.com.au>"07:18
stubgpg:                 aka "Stuart Bishop (Work) <stuart.bishop@canonical.com>"07:18
lifelessthat looks fine to me07:20
lifelessjblack: can you see anything?07:20
jblacklets md5 the files, and see which one mismatches.07:21
jblackmaybe its a doublecacherev or something.07:21
lifelessthat would spit out a different error07:22
lifelessstub: can you try patch-27007:22
lifelessplease ?07:22
stubstub@belch ~/tmp $ md5sum /home/stub/.arch-archives/stuart.bishop\@canonical.com/launchpad/launchpad--devel/launchpad--devel--0/patch-271/checksum 3fef8a3397c50797399d9a7956df99a9  /home/stub/.arch-archives/stuart.bishop@canonical.com/launchpad/launchpad--devel/launchpad--devel--0/patch-271/checksum07:22
lifelessjust cat-archive-log ... patch-27007:23
jblackinvalid syntax...07:23
lifelessstub: works ?07:24
stubNo - invaid revision name error07:24
lifelesstla cat-archive-log stuart.bishop\@canonical.com/launchpad--devel--0--patch-27007:24
stubstub@belch ~/launchpad/launchpad $ tla cat-archive-log launchpad--devel--0--patch-27007:24
stub  archive: stuart.bishop@canonical.com07:24
stub  revision launchpad--devel--0--patch-27007:24
stub  checksum file: checksum07:24
stubtrouble reading checksum file for stuart.bishop@canonical.com/launchpad--devel--0--patch-27007:24
lifelessok that works for me on chinstrap.07:24
lifelessso its /not/ a f*cked archive.07:24
lifelessits almost certainly a f*cked gpg check rule07:25
stubI havn't mirrored it since it was working07:25
lifelesspatch-270 is on chinstrap.07:25
jblack          else if (file_contents && arch_pfs_memoize_checksum_file (arch->arch.name,07:25
jblackarch->arch.official_name, revision, file_contents))07:25
jblack          else if (file_contents && arch_pfs_memoize_checksum_file (arch->arch.name,07:25
jblackarch->arch.official_name, revision, file_contents))07:25
lifelesswhich is why I asked you to check it. :)07:25
stubAnd the gpg check rule works file if I checkout someone elses stuff from chinstrap07:25
lifelessls ~/.arch-params/signing07:25
jblackso arch_pfs_memoize_checksum_file is returning 1.07:26
stubstub@belch ~/launchpad/launchpad $ ls -al ~/.arch-params/signing/07:26
stubtotal 2807:26
stubdrwxr-xr-x    2 stub     stub         4096 2004-10-19 14:54 .07:26
stubdrwx------    4 stub     stub         4096 2004-09-23 05:02 ..07:26
stub-rwxr-xr-x    1 stub     stub           22 2004-10-19 15:03 =default07:26
stub-rwxr-xr-x    1 stub     stub          131 2004-10-19 15:03 =default.check07:26
stub-rw-r--r--    1 stub     stub           28 2004-09-23 05:04 stuart.bishop@canonical.com-MIRROR07:26
stub-rw-------    1 stub     stub          183 2004-10-19 14:54 tla-gpgout.IYPB0S07:26
stub-rw-------    1 stub     stub          183 2004-10-19 14:53 tla-gpgout.OxzwWn07:26
lifelessstub: try this.07:27
lifelesstla cat-archive-log stuart.bishop\@canonical.com-MIRROR/launchpad--devel--0--patch-27007:27
lifelessif that works, your local disk has gone wonky in some respect.07:27
lifelessif that doesn't work, its almost certainly gpg related, and we can check by making your check script a no-op.07:28
stubstub@belch ~/tmp/foo $ tla cat-archive-log stuart.bishop\@canonical.com-MIRROR/launchpad--devel--0--patch-27007:28
stubRevision: launchpad--devel--0--patch-27007:28
stubArchive: stuart.bishop@canonical.com07:28
stubCreator: Stuart Bishop <stuart.bishop@canonical.com>07:28
stubDate: Mon Oct 18 16:49:54 EST 200407:28
stubStandard-date: 2004-10-18 06:49:54 GMT07:28
stubModified-files: lib/canonical/launchpad/database/person.py07:28
stub    lib/canonical/launchpad/scripts/nicole/database.py07:28
stub    lib/canonical/librarian/storage.py07:28
stub    lib/canonical/lucille/TagFiles.py test_on_merge.py07:29
stubNew-patches: stuart.bishop@canonical.com/launchpad--devel--0--patch-27007:29
lifelessok, this is kinda weird.07:29
stubSummary: Tabnanny putting on her jackboots for the whitespace impared07:29
stubI also just created a fresh archive locally and it is working fine for some simple tests.07:29
jblacklifeless: arch_pfs_memoize_checksum_file is failing one of two regexes. 07:29
stubYou want I tar up my archive and email it to you?07:29
lifelessstub: I'd like you do copy down the checksum file from patch-270 on chinstrap, and compare it locally.07:29
lifelessI have to leave shortly for the stug group I'm talking at tonight.07:30
lifelessso mailing to me won't do you much good.07:30
lifelessjblack: yeah07:30
stubstub@belch ~/tmp/foo $ scp chinstrap.warthogs.hbd.com:/home/warthogs/archives/stuart.bishop@canonical.com/launchpad/launchpad--devel/launchpad--devel--0/patch-270/checksum checksum270.chinstrap07:33
stubchecksum                                      100%  434     0.4KB/s   00:0007:33
stubstub@belch ~/tmp/foo $ diff checksum270.chinstrap /home/stub/.arch-archives/stuart.bishop\@canonical.com/launchpad/launchpad--devel/launchpad--devel--0/patch-270/checksum07:33
stubstub@belch ~/tmp/foo $07:33
stubThey are identical07:33
lifelessok, now that is plain old bizarre07:33
stubBrought to you by the user who first broke star-merge :-)07:34
lifelessjblack: can you please follow this through ?07:34
jblackI can try, but I'm rather lost.07:34
lifelessok, summary:07:34
lifelesshe can't access the revision ...-patch-27007:35
jblackbut he can remotely.07:35
lifelessbut he can when he does it via -MIRROR07:35
lifelessand the checksum is identical07:35
lifelesswe haven't had stub cross-check the md5s in the checksum against the files on disc.07:35
lifeless(stub can you do that now)07:35
stubI would qualify that to 'I can't access any of the revisions or branches I have tried in that archive'07:36
stublaunchpad--devel--0, cookiecrumbler--canonical--, etc.07:36
jblackstub: can we disclude obvious stuff, like you haven't played with permissions? 07:36
stubPermissions on the archive look fine and I havn't messed with them07:37
lifelessin fact there is an interesting idea, stub if you have sshd running, you could register the local archive via sftp and see if that fixes it.07:37
stubAnd I have disk space07:37
stubNope - I get the same checksum error if I access it via sftp07:39
jblackIts failing on either the revision, or on the official_archive search.07:39
jblackcould it be that the checksum is saying its for a different archive than the name the archive is registered as? 07:39
stubstub@belch ~ $ tla register-archive stuart.bishop@canonical.com-SFTP sftp://localhost/home/stub/.arch-archives/stuart.bishop@canonical.com07:39
stubstub@belch ~ $ cd tmp07:39
stubstub@belch ~/tmp $ tla get stuart.bishop@canonical.com-SFTP/launchpad--devel--007:39
stub* ensuring library has stuart.bishop@canonical.com-SFTP/launchpad--devel--0--patch-27107:39
stub  archive: stuart.bishop@canonical.com-SFTP07:40
stub  revision launchpad--devel--0--patch-27107:40
stub  checksum file: checksum07:40
stubtrouble reading checksum file for stuart.bishop@canonical.com-SFTP/launchpad--devel--0--patch-27107:40
stubstub@belch ~/tmp $ 07:40
lifelessstub, please stay with the cat-archive-log ....-patch-270 as the test07:40
lifelessas 270 is known good, 271 isn't.07:40
lifelessyou may have several things wrong.07:40
jblackFor your mirror, what is =meta-info/name ? 07:40
stubstub@belch ~/tmp $ tla cat-archive-log stuart.bishop\@canonical.com-SFTP/launchpad--devel--0--patch-27007:41
stub  archive: stuart.bishop@canonical.com-SFTP07:41
stub  revision launchpad--devel--0--patch-27007:41
stub  checksum file: checksum07:41
stubtrouble reading checksum file for stuart.bishop@canonical.com-SFTP/launchpad--devel--0--patch-27007:41
stubjblack: My mirror on chinstrap you mean?07:41
lifelessjblack: very interesting that sftp access to the local one also fails.07:42
jblacklifeless: Yeah.07:42
lifelessso the same code path, with the two archives, fails.07:42
lifelessand the checksum files are the same.07:42
lifelessI'll butt out now.07:43
jblackTo restate, he can get from his mirror, but not from his original archive.07:43
lifelessfollowing the tla code is probably the right thing. :007:43
jblackstub: =meta-info/name for both, please07:43
lifelessjblack is there a tla command to show that?07:43
lifelesstla meta-info-file or something right ?07:44
jblacknot listed in the help. 07:44
stubAm I supposed to have ~/.arch-archives/stuart.bishop@canonical.com/=meta-info ? If so, that might be the problem.07:44
jblackI seem to remember that ddaa uses something with pyarch though...07:44
jblackthere's a cmd-archive-meta-info.c07:45
lifelessstub: erm YES YOU ARE07:45
stublifeless: Ok. Then we have found the cause. It aint there.07:45
lifelessstub: copy the \=meta-info dir from chinstrap to yours07:45
jblacklifeless: And that's why the regex fails. :) 07:46
lifelessthen remove the single file called 'master'07:46
lifelesssorry, 'mirror'07:46
lifelessjblack: yup.07:46
lifelesswhat a mindblowing bad error-report from tla.07:46
jblackOh, I don't think so.07:46
jblackWell, yeah.07:46
lifelessyeah, that should be 'corrupt arhcive' right from the get go.07:46
jblackBut a reasonable screw up. The only way for =meta-info not to be there is for someone or something to rm it.07:47
stubShould I nuke the mirror file in there on my local copy?07:47
lifelessack on the screwup bit.07:47
lifelessstub: yes, only in the local copy07:47
lifelessdon't alter anything on chinstrap07:47
stubstub@belch ~ $ tla cat-archive-log stuart.bishop\@canonical.com/launchpad--devel--0--patch-27007:48
stubRevision: launchpad--devel--0--patch-27007:48
stubArchive: stuart.bishop@canonical.com07:48
stubCreator: Stuart Bishop <stuart.bishop@canonical.com>07:48
stubDate: Mon Oct 18 16:49:54 EST 200407:48
stubStandard-date: 2004-10-18 06:49:54 GMT07:48
stubModified-files: lib/canonical/launchpad/database/person.py07:48
stub    lib/canonical/launchpad/scripts/nicole/database.py07:48
stub    lib/canonical/librarian/storage.py07:48
stub    lib/canonical/lucille/TagFiles.py test_on_merge.py07:48
stubNew-patches: stuart.bishop@canonical.com/launchpad--devel--0--patch-27007:48
stubSummary: Tabnanny putting on her jackboots for the whitespace impared07:48
stubI suspect I should rsync from chinstrap to ensure nothing else is missing?07:49
lifelessstub: check the new imports and so on.07:49
=== jblack grumbles something about "Don't go into archive dirs and changing/removing files"
lifelessno, don't07:49
lifelessthat will bring across archive lock dirs07:49
lifelessany imports/commits during this period, you should check the checksums for (null)07:50
lifelessif they have (null) replace it with the archive name, and regenerate the gpg signature around it07:50
jblackjust make sure you have name and signed-archive in =meta-info on both.07:50
lifelessjblack can help if you need ot do that07:50
jblacklifless: Oh, and that explains the (null) too.07:50
lifelesspermitting that in the first place is a major bug IMO07:51
jblackI've already got up a postit to do more =meta-info checks07:51
stubI'm not worried about recent commits or anything, since none of them worked :-) More that whatever nuked =meta-info might have nuked bits and pieces elsewhere (although I supposed the checksums should see to that now they are working)07:51
jblackstub: Ok. Cheat.07:52
jblacksteal tla's archive check script.07:52
jblackThat will sanity check the archive. 07:52
jblack=gpgcheck.awk or somesuch.07:52
lifelessthat doesn't check the archive tough IIRC - it only checks for gpg issues07:52
lifelesswouldn't have helped here.07:53
jblackit doesn't check md5s? 07:53
jblacksure doesn't.07:53
lifelessno, its a wrapper script.07:53
jblackOh. I know. :) 07:53
jblackreally lazy way.07:53
stubHmm... the most reasonable explanation for it missing is my fingers slipping when I was removing branches trying to get my import working nicely (although I can't think how I managed to only remove a single file rather than the entire damn archive)07:53
jblacktry a get on every branch in your archive.07:53
lifelessomg StringIO is slow07:55
jblackmkdir test; cd test; tla abrowse stuart.bishop@canonical.com | grep -- --.*-- | xargs -n1 tla get07:55
stublifeless: You know about cStringIO ?07:56
stubjblack: ta. I didn't want to have to figure that out myself :-)07:56
lifelessstub: nope faster I presume ?07:56
jblackif any of the gets fail, then we'll fix it. If not, you're gtg07:56
stublifeless: Yes - part of the standard library. Doesn't handle unicode strings though.07:56
lifelesshow much faster?07:57
jblackWhile you're getting, I'm going to hit the local denny's for coffee and a burger, ok? 07:57
stubLots and lots faster07:57
stub(thats a technical term)07:57
jblacklike x86 over os x faster ? 07:57
lifelesslots n lots daddy07:57
stubJust use 'from cStringIO import StringIO' instead of 'from StringIO import StringIO'07:58
jblackstub: if you have a problem doing those gets, send email to jblackphone@linuxguru.net with a short ( <100 character) message ? 08:01
stubGets all ran fine except for one dummy branch I created to to help diagnose the problem, now nuked.08:05
jblackok. then you're cleared for flight08:06
=== justdave [~dave@] has joined #launchpad
=== ddaa [~ddaa@nemesis.xlii.org] has joined #launchpad
ddaaHello launchers.09:52
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
=== limi [~limi@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
=== Kinnison [~dsilvers@haddenham.pepperfish.net] has joined #launchpad
=== carlos [~carlos@69.Red-80-33-181.pooles.rima-tde.net] has joined #launchpad
=== sabdfl [~mark@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
KinnisonMorning sabdfl 10:58
sabdflmorning all10:58
sabdfllifeless: around?10:58
=== ..[topic/#launchpad:sabdfl] : lunchpad: home of the sandwich artists | fogo na bomba | "qorking along happily, egged on by SteveA"
Kinnisonmmmm eggs11:02
sabdflarch help, anyone?11:03
Kinnisonis it scary stuff, or might I be able to help?11:04
sabdflscary stuff11:04
sabdflsignature and checksum failures11:04
=== ..[topic/#launchpad:sabdfl] : lunchpad: home of the sandwich artists | fogo na bomba | "qorking along happily, with SteveA egging us on"
sabdflKinnison: is your "drop my changes rather than everyone elses changes" star-merge script on the wiki?11:07
sabdflhas it been blessed by an arch god?11:07
Kinnisonno and no11:07
Kinnisona version which doesn't automatically check for conflicts is in launchpad/utilities/arch/dsilvers11:07
Kinnisonbut it is not blessed11:07
sabdflisn't the default in launhcpad now to refuse commit if you have .orig or .rej lying around?11:08
Kinnisonone of stub or spiv was playing with that. I don't know if they committed it11:08
Kinnisonunrecognized ^.*(\.orig|\.rej)$11:09
KinnisonLooks like it is in11:09
stubNot me - I don't know arch that well11:09
KinnisonToday, I will be mostly generating override files11:09
sabdflmorning stub11:10
ddaasabdfl: I, jblack and bob2 are just out of team meeting.11:10
sabdflwe have.... limi arch problems!11:10
sabdflhe was using tla 1.2.0 on ppc, now upgraded to 1.2.111:11
jblacklimi! There you are. I have more questions for you on that subject.11:11
sabdfljust tagging off lp--devel--0 is failing11:11
sabdflwith checksum errors, inode errors, signature verification errors, it's a mess11:11
sabdflhave blown away the revision library11:11
=== ddaa suggests using 1.2.2rc2 that's definitely what works best
sabdfland tagged off launchpad--devel--0 into an entirely new branch, and even that did not work11:12
ddaait's not official by any mean, but it's the best release around.11:12
sabdflit's not available for ppc afaik11:12
jblacksabdfl: It builds on ppc.11:12
jblackbut that probably won't fix these problems. 11:12
jblackLets hit it a step at a time. 11:13
jblacklimi, are you here? 11:13
jblackWhich archive is this you're having problems with? Yours, or rocketfuel's ? 11:13
limihow can I find out? :)11:13
jblackby telling me which one you're trying to get from. 11:14
=== ddaa leaves the matter in jblack's competent hands, but will be monitoring.
sabdfli did tla tag -S rocketfuel@canonical.com/launchpad--devel--0 a.l@canonical.com--2004/launchpad--devel2--011:14
sabdflto get a brand new branch that limi could work on without disturbing previous branches11:14
limiand error msg is:11:15
sabdflit failed11:15
limi  archive: rocketfuel@canonical.com11:15
limi  revision launchpad--devel--0--patch-24811:15
limi  checksum file: checksum11:15
sabdfllast night, we were getting similar messages on the old branch too, during star-merge11:15
jblacksabdfl: You were tagging in limi's archive? Are you guys in the same place or something, or did you mirror him and then drop the mirror file? 11:15
sabdfljblack: i'm sitting next to him, typing on his computer11:16
jblackOk. Maybe his signature checker is wrong. 11:16
jblackfirst, can he get from rocketfuel, such as "tla get rocketfuel@canonical.com/launchpad--devel--0" ? 11:16
sabdflworks for about 280 patches, then fails?11:16
jblackwould you remember the patchnumber? 11:17
limitrying to do it again with 1.2.1 now, seems to get further11:17
jblackOk. To what revision in 1.2.1 ?11:18
limistill working11:19
sabdflok, seems to have got as far as starting to do the patches this time11:19
sabdfl1.2.1 seems better than 1.2.011:19
=== jblack smiles happily hearing that.
sabdfljblack: what's the latest public release of tla?11:22
jblackThere's two, the one I did, and then the one Tom did.11:22
jblackThe lastest one I made was 1.2.2rc211:23
=== lifeless_ [~robertc@dsl-] has joined #launchpad
sabdfland toms?11:23
jblackhis hosed 1.2.111:23
ddaathere are two 1.2.1, jblack's, on tom's. jblack's is the good one.11:24
jblackThere's a big problem in his 1.2.1. He took some patches that weren't ready yet that is a bit too severe with truncated checksums. 11:24
=== jblack waves to lifeless.
jblacklimi: still getting? 11:24
ddaaso, current sane tla = 1.2.2rc211:25
sabdfljblack: so if limi is using 1.2.1 which version of 1.2.1 is he using?11:25
sabdfland why do we only have 1.2 in warty?11:25
limijblack: still getting11:25
jblackYeah. There's a small bug in 1.2.2rc2, but it only affects 10% of the people in 10% of the time, and in a safe way.11:25
jblacksabdfl: I'll defer to lifeless on that.11:25
jblackActually, I won't.11:26
ddaasabdfl: probably because asuffield, who is the debian maintainer, tracks tom.11:26
jblackLifeless and I are avoiding a power struggle with Tom.11:26
jblackThe arch release process is just starting to get going again.11:26
jblackIf we start pushing a fork, we throw everything back into chaos.11:26
sabdflok, we're still going to do a public integration / community  build right?11:26
sabdflas discussed?11:27
jblackI've still got plans for that, yes. 11:27
sabdflspiv: around?11:27
(spiv/#launchpad) sabdfl: Just waking up, yeah.11:27
jblackAnd I'll act on that if you wish, but my recommendation is to wait about 3 weeks, and give the new merge process a fair shot.11:27
sabdflthis came in last night, was it from you?11:28
sabdfl@@ -132,7 +135,8 @@11:28
sabdfl         return {11:28
sabdfl             'id': personID,11:28
sabdfl             'displayname': displaynameOrig,11:28
sabdfl-            'emailaddresses': list(emailAddresses)11:28
sabdfl+            'emailaddresses': list(emailAddresses),11:28
sabdfl+            'salt': saltFromDigest(sshaDigestedPassword),11:28
sabdfl         }11:28
sabdfl     def changePassword(self, loginID, sshaDigestedPassword,11:28
sabdfljblack: if there's a new merge process let's pursue that11:28
(spiv/#launchpad) sabdfl: Yep.11:28
jblackYes sir. I'll make sure you're up to date as to how its working out.11:28
sabdflbut i'm losing patience with tom w.r.t. arch, and am starting to think it's inevitable that we put out a regular release11:29
sabdfla little competition is healthy, as you've seen11:29
ddaait's not making any public progress yet, but it's not right time to step out with a new integration branch. That could be perceived as sabotage.11:29
limi(still patching)11:29
stubIs the existing arch community large enough that its perceptions actually matter?11:29
sabdflddaa: yes, and has to be handled carefully, but tla has stagnated and unless this new process gets it going i'll risk that perception in favour of actually getting the tool usable11:30
jblacksabdfl: I'm agree with you. But the timing isn't quite right. If we push at this exact moment, we may not carry the community with us, and then you're paying for a lot of development you could otherwise get for free.11:30
sabdflspiv: where is the salt getting used?11:30
(spiv/#launchpad) sabdfl: It's handed back to the XML-RPC caller.11:30
sabdfljblack: understood, keep me posted11:30
sabdflspiv: why?11:30
(spiv/#launchpad) I added it there to be consistent the return value from everywhere else.11:31
sabdflwe should never expose salt11:31
ddaastub: i'm not sure what you mean. Tla is defined by what tom puts on gnu.org. And gets some non-trivial public coverage.11:31
(spiv/#launchpad) sabdfl: The salt is the only way the caller can generate a matching digest.11:31
sabdflSteveA and i discussed this at length and agreed to change the protocol11:31
sabdflthe caller should not be generating the digest11:31
sabdflthe caller gives credentials (username, password) and you then calculate the match yourself11:31
(spiv/#launchpad) Then the caller needs to send the password cleartext.11:31
(spiv/#launchpad) I'm happy for that to change, but it's the first I've heard of it :)11:32
(spiv/#launchpad) It'll also need changes on Roche's end.11:32
sabdflspiv: either use tls, or public key encrypt the credentials in transit, at your option, but don't expose the salt11:32
sabdfli nearly fell off my chair when i realised we were passing the salt around11:32
(spiv/#launchpad) sabdfl: I'm not sure why exposing the salt is such a big problem?11:33
sabdflspiv: salt is there as a last-minute defense11:33
sabdflno sense in giving it away11:33
jblacklimi: still going ?11:33
limijust finished11:34
jblackso you're good? 11:34
limi* Made cached revision of  alexander.limi@canonical.com--2004/launchpad--devel2--0--base-0 11:34
jblackOk. Are you using libraries? 11:35
sabdflspiv: your other option is to store the username and password in the clear11:35
limi"How can I find out?"11:35
jblackIf not, we should set you up with sparse greedy libraries. That'll speed you up dramatically.11:35
limi:] 11:35
sabdflthen to generate a random salt for every connection11:35
sabdflpass that salt to them11:35
sabdflhave them also generate a salt11:35
limiI think I am running greedy sparse11:35
stubddaa: Let me put it this way - if arch split into gnu-arch and sane-arch, and worst case every arch user outside of cononical stuck with gnu-arch, would sane-arch still attract more users over the long term? If sane-arch actually has a measurable uptake (unlike gnu-arch), it will smother it. I suspect a split might encourage new people to come over to arch (or refugees from arch comming back).11:35
(dilys/#launchpad) Bug 1918 resolved: implement XML-RPC authentication server11:35
(dilys/#launchpad) https://bugzilla.warthogs.hbd.com/bugzilla/show_bug.cgi?id=191811:35
sabdflthen they send you their salt plus the digest of credentials and both salts11:35
jblacktype tla my-revision-library. Do you get a directory? 11:35
ddaajblack: sabdfl rm'ed the lib because they had a inode corruption errors.11:36
(spiv/#launchpad) sabdfl: I'm not sure that a salt from both ends makes sense there -- surely in that case the salt is only good to protect against replay attacks?11:36
limi$ tla my-revision-library11:36
limi$ tla my-revision-library11:36
limi /opt/local/bin/revision-library11:36
limi /Users/limi/Work/Canonical/revision-library11:36
sabdflspiv: user generates own salt to reduce dictionary attacks by man in the middle11:36
jblackOk. for both of those, type "tla library-config <dirname>"11:36
jblackAnd just to make sure, neither of those are on nfs, right? 11:37
ddaastub: you only want to make a split if the company is willing to invest a substantial amount of the arch team time into developing it.11:37
sabdflsay a mitm send you a carefully crafted salt, which when used as a salt will in fact expose the credentials11:37
sabdflyou generate your own random salt11:37
(spiv/#launchpad) sabdfl: That's sounding excessively complex for note enough gain to me... we should just go for ssl/tls in that case.11:37
sabdflthat way you *know* your credentials are never exposed11:37
ddaastub: besides it's probably better to avoid such a solution as long as possible.11:37
limi* library /Users/limi/Work/Canonical/revision-library11:37
limigreedy? yes11:37
limisparse? yes11:37
sabdflspiv: i'm not telling you what to do, just telling you what your options are11:37
limi$ tla library-config /opt/local/bin/revision-library11:38
limitla: indicated library is not on library path11:38
limi  dir /opt/local/bin/revision-library11:38
(spiv/#launchpad) sabdfl: Sure. Just giving my opinion on the options :)11:38
sabdflthawte.com school of cryptography11:38
jblackLOL! I suppose you would an authority. :) 11:38
(spiv/#launchpad) SSL would be easy to do on the server end. I'm not sure how easy it is to do on the client end with out-of-the-box xmlrpclib, but I'm sure it can be done.11:39
ddaajblack: a signing authority in that case :-P11:39
jblacklimi: Sorry. Missed your answer. 11:40
jblackOk. I suggest going to sparse greedy libraries.11:41
jblackand I'd remove the library that doesn't exist as well.11:41
jblacktla library-config --sparse /Users/limi/Work/Canonical/revision-library11:42
jblacktla my-revision-library -d /opt/local/bin/revision-library11:42
ddaajblack: the lib was already greedy sparse :-)11:44
jblackand now it'll be extra sparse! 11:44
jblack(sorry limi. Getting tired on this side) 11:44
limithanks, seems things are under control again11:45
jblackOk. 11:45
jblackYou know how to reach me for emergencies? 11:45
=== ddaa missed what was done to fix the checksum errors
jblackhe went from 1.2.0 to 1.2.1, and the problem magically disapeared.11:48
jblackjust as a reminder, if you need to reach me during an emergency, send a short ( < 100 character) email to jblackphone@linuxguru.net11:50
jblackchances are good (but not 1.0) that I'll respond. 11:51
ddaaThat code cannot possibly work for syncs!!!11:55
ddaalifeless_: CSCVSStrategy.sync is emphy12:06
ddaais that normal, or is that result of some error?12:06
limijblack: thanks12:07
ddaaHow can syncs possibly work if the .dir, .aJob and .logger instance variables are not set?12:07
limiddaa: we also blew away my entire local setup before upgrading to 1.2.112:07
ddaalifeless_: I'm going to examine the history, but you might save me some time.12:07
ddaalimi: next time you have some time, upgrade to 1.2.2rc2, it's significantly better in the error reporting dept.12:08
limiwell, I tend to stick to what's available in my ports tree12:09
limicompiling arch was non-trivial the last time I tried it12:09
ddaaha... OS X.. last time I looked (back in the texmacs days) compiling random unix stuff just did not work. The build system apparently required some black magic...12:10
ddaaSince that, I no longer buy it when someon says "osx is just a bsd variant"12:11
ddaain my experience it's a horribly mutilated bsd variant if anything12:11
ddaa(but maybe the situation have improved)12:11
ddaa*has improved12:12
sabdflwhat's the shell magic to say "if there's a .rej or .orig file"?12:12
limiit has12:12
limionly arch that doesn't build ;)12:12
KinnisonFOO=`find . -name "*.rej" -o -name "*.orig"`12:13
ddaasabdfl: you prolly want something along "tla inventory -b | egrep -e '\.(rej|orig)$''12:13
Kinnisonif [ "x$FOO" = "x" ] ; then12:13
Kinnison # no .rej or .orig12:13
ddaaKinnison: no find, tla inventory12:13
Kinnison # some .rej or .orig12:14
Kinnisonddaa: feh; no context == generic answer :-)12:14
ddaasabdfl: unless that's one of those trees where rejects are classified as unrecognized, spiv did that to launchpad at a point.12:15
sabdflKinnison: thanks12:15
ddaaI dunno if it was reverted.12:15
sabdflso find doesn't give a useful exit code?12:15
ddaaIn that case it would be "tla inventory -u" instead of -b12:15
ddaasabdfl: egrep does, and tla inventory saves you the traversal of {arch}12:16
ddaajust "tla inventory" w/o option would do it as well in your case.12:17
ddaaif tla inventory -b | egrep -e '\.(rej|orig)$ ; then <rejects> ; else <no rejects> ; fi12:19
ddaaif tla inventory | egrep -e '\.(rej|orig)$' ; then <rejects> ; else <no rejects> ; fi12:19
=== ddaa realizes he was probably inaccurate with this statement about not traversing {arch}
sabdfldoes make check give a useful result code?12:26
ddaaYes, pqm relies on it.12:26
limistub: how do I set up the plpython stuff?12:30
sabdflstub, BradB|away: we've got limi up again but can't test anything till we get plpython running12:32
sabdflon macosx12:32
sabdflany tips?12:32
limii guess we need to rebuild postgres12:39
limiwith python support12:40
Kinnisoncomment it out of the makefile12:40
Kinnisonthey're not *needed* for now IIRC12:40
sabdflwhat was the resolution for finding a python apt_pkg on macosx?12:46
carlossabdfl: fink.sf.net12:59
sabdflcarlos: thanks01:03
sabdfllimi: can you look for python-apt on fink?01:03
stubRunning the makefile with the plpython commented out should work - it just means some database constraints won't exist atm.01:03
limiI need to install fink then - but, sure01:04
stubI'd suggest seeing if DarwinPorts (which I think limi is already running) has the python stuff though - I never had much success with fink's postgresql stuff (it never got out of unstable for a start)01:04
limiI tried, only found the ruby bindings in DP01:06
sabdflstub: we found an apt in darwin ports, not sure if that has hte python-apt module01:07
=== limi is not a big fan of fink either
stubIt would also be trivial to remove the dependancy on it at this stage - it just restricts us a bit in the future and means we will start having pl/sql code in the codebase01:07
sabdflplpython wasn't too hard01:07
limi(if it works :)01:07
sabdflbut it's python-apt which the soyuz guys use which we now need to solve01:07
stublimi: What is the error message you get when it tries to run createlang? There is a chance it is installed and something else is going wrong01:08
sabdflcould be permissions again, though limi is running pg_ctl start as his local user, so he should be postgres superuser too right?01:08
limicreatelang? haven't seen that error msg01:09
stubdarwinports seems setup to let you do everything as the localuser. 01:09
=== limi is downloading Fink to look for py-apt
ddaaPlease someone who has access to the production database tell me the output of:01:10
stubcreatelang is the command the makefile runs to make plpythonu available in the launchpad_test database. If the error message is from something else, it isn't a plpythonu problem01:10
ddaaselect name, cvsroot from sourcesource where name like 'zenity%' ;01:10
ddaaand then "select * from sourcesource where name like 'zenity%'"01:11
(spiv/#launchpad) ddaa: zenity-HEAD-import.job | http://chinstrap.warthogs.hbd.com/~jdub/cvsballs/zenity.tar.bz201:11
stubzenity-HEAD-import.job | http://chinstrap.warthogs.hbd.com/~jdub/cvsballs/zenity.tar.bz201:12
ddaaspiv: and what are all the fields?01:12
(spiv/#launchpad) ddaa: More than I'd like to paste on IRC ;)01:12
(spiv/#launchpad) privmsg?01:13
ddaaspiv: then paste on jabber please01:13
(spiv/#launchpad) Jabber, ok.01:13
Kinnisonddaa: any idea how the backbuilder stuff is going?01:18
ddaaabentley is using it for himself, but it's not being merged because it was not regression-tested.01:24
ddaaAnd if/when it breaks, it would break silently and severely (data loss)01:24
=== ddaa is out for lunch
sabdflwhat's the backbuilder?01:25
KinnisonIt an extension to allow tla to build patch-X from patch-(X+1) by reverse-application of patches01:25
ddaaactually, from patch-(X+N) and even across version boundaries.01:26
ddaahairy, and in a critical part, so to be handled with extreme caution.01:27
ddaaKinnison: btw, what's "merp"?01:27
Kinnisonddaa: it's a noise word01:29
Kinnisonddaa: say it out loud with a high-pitched voice01:29
Kinnisonddaa: Like 'meep' or 'erk' only different :-)01:29
=== debonzi [~debonzi@] has joined #launchpad
sabdflcarlos: any idea what to look for in fink for python-apt? is it in unstable only?01:33
carlossabdfl: no idea, I'm not using fink, I just know about it, sorry01:33
=== Kinnison loves approaching code the day after
=== Kinnison deletes two pointless classes; alters the SQL views and merges all the publishing logic into one place
sabdflthe joy of sleep01:35
KinnisonIndeed. This way there isn't pointlessly duplicated code01:35
Kinnisonand SourcePackagePublisher/BinaryPackagePublisher get collapsed into what was originally just a base class... Publisher01:35
Kinnison(all in canonical.lucille of course)01:35
=== cprov [~cprov@] has joined #launchpad
sabdflstub: do we want someone to be able to have multiple subscriptions to the same bug?01:41
sabdflwatch / cc / ignore?01:41
sabdfli think we should make (bug, person) UNIQUE01:41
stubThat depends on the behaviour of 'cc'. If you have 'cc' and you automatically get the same behaviour as 'watch' as well, then yes.01:41
Kinnisonwhat is the difference between watch and cc?01:42
stub(erm... yes... make it unique)01:42
stubMy interpretation is that watch makes the bugs appear on your reports (when they exist. The dashboard, 'my bugs' etc.). CC means you get emailed about all changes to that bug.01:42
KinnisonCan someone else add you to CC without necessarily knowing you're watching the bug?01:43
sabdflwe could define the apropraite behaviour01:43
=== Kinnison is concerned that while they have equivalent results; the two concepts are sufficiently different that you should allow both at once
KinnisonE.g. you might be watching all bugs in a given package yes? But that means something different to explicitly being in the CC list on a bug doesn't it?01:44
stubCC would be Watch with extra behaviour. Watching all bugs on a given package would be stored in a seperate table if implement that behaviour.01:46
sabdflwhat stub said01:46
sabdflrelationship between person and package is different to that between person and bug01:47
stubI'll go make it unique. We can replace it with a more lax constraint in the future if we implement more complex subscription types.01:48
=== Kinnison just thought he should pipe up in case :-)
sabdflcc is watch + email, i figure01:49
sabdflstub was that you that fixed the subscriptions portlet?01:49
stubNo - that was Brad I think01:49
KinnisonWe're using SQLObject 0.6 these days; aren't we?01:50
stubIt was working just fine last time I played with that one ;)01:50
sabdflKinnison: yes01:50
Kinnisonstub: 0.6 does non-integer IDs as follows01:50
Kinnisonin your class, put _idType = str01:50
Kinnisonwallow in the joy01:51
=== Kinnison now has almost certainly unique and non-specious id columns in his package publishing views
stubCan someone run 'make test' and let me know if there are a heap of failures bitching about not being able to find the Utilities component?01:55
=== stub runs it himself from a rocketfuel checkout
stubHmm.. those tests already broken. Cool... I guess... ;)02:01
ddaastub: what is the result of the following command on the production database?02:06
ddaaselect count(*) from sourcesource where cvsroot like '%.tar.%' or cvsroot like '%.tgz';02:06
stubddaa: You want a snapshot of the production database btw? There are hourly backups being made and I'm happy to push them somewhere as long as Mark, Elmo & Thom have no objections to where the data is escaping too.02:08
=== stub runs the query
stubddaa: 33202:08
ddaaBad news. 332 rows of the sourcesource table have broken data.02:09
ddaaGood news. We are going to fix it.02:09
ddaaWhat is the procedure to fix production data?02:10
ddaagenerate a sql script to be eyeballed and manually applied?02:10
stubPretty much, yeah. I'm happy to do it or help out, but you probably know the data better.02:11
=== debonzi_ [~debonzi@] has joined #launchpad
Kinnisonelmo: ping?02:13
stubddaa: It doesn't have to be an sql script btw. A Python script would work just as well.02:13
Kinnisonelmo: can you install man-db on zhongshan please?02:13
=== Kinnison goes shopping, bbl
(elmo/#launchpad) Kinnison: what on earth for?02:15
Kinnisonelmo: for reading of apt-ftparchive manpages02:15
ddaastub: I would have expected more anal retention...02:15
Kinnisonelmo: It's irritating to have to have another terminal up :-(02:15
(elmo/#launchpad) Kinnison: sorry, but you'll need to deal with that - the DC stays minimal02:15
stubddaa: It is easier to get Python code correct that SQL code :-)02:15
Kinnisonelmo: okay02:15
ddaastub: sorta makes sense...02:16
(dilys/#launchpad) Merge to rocketfuel@canonical.com/launchpad--devel--0: Vocabularies should be looked up by name (avoids circular import issues and they get a context too). Rationalize vocabulary/vocabularies package (patch-635)02:41
sabdflstub: i'm going to blast malone/browser.py into ordered parts this afternoon, ok?02:45
stubSure. Subsumed in the launchpad area or separate?02:46
sabdflstub: yes into launchpad browser/ database/ interfaces/02:50
sabdflthere will still be the core MaloneAppView etc in the old location i think02:51
stubHmm... I don't know if there is much point leaving it around. All the database code and the Z3 code is in the one spot, a few minor bits of bootstrap code around elsewhere seems to be a bit of a decoy.02:53
stubI guess see how it looks after02:54
=== debonzi [~debonzi@] has joined #launchpad
sabdfli tihnk we'll end up with launchpad/browser/malone03:01
sabdflwhich has just the bootstrap code for malone03:01
sabdfland launchpad/browser/rosetta03:01
sabdflat some "long distant future" time we may also want to distribute the lp components separately, and that will require a whole new component glue03:02
cprovelmo: ping03:02
stubI wonder if launchpad/launchad/lib/launchpad needs some thought... the swedish chef school of project layout ;)03:02
SteveAdists/launchpad/lib/canonical/launchpad ?03:03
sabdfli'll be someone has canonical/launchpad/launchpad/lib/canonical/launchpad :-)03:03
sabdflblech. circular imports03:05
cprovelmo: I request new password on mawson, but I still can't create a DB, either as "sudo -u launchpad .." (inserting crazy rand. gen. pass everytime is an issue, anyway)03:05
sabdflwhat's the lazy import thing?03:05
SteveAcprov: change your password perhaps?03:05
cprovSteveA: do you mean via passwd ? (doesn't work ...)03:06
stubStick the import statements in the function that needs it is the work around.03:07
SteveAsabdfl: the lazy import thing is a bit of non-standard magic I cooked up during the soyuz sprint.  I don't think it is checked in right now, but the code is around somewhere.03:07
sabdflbugs depend on assignments depend on bugs03:07
SteveAcprov: there's a "userdir-ldap" thing you can use to change your password.  I don't know how to access it though.03:07
sabdflstub: this BugContainerBase class, is that something you know all about?03:08
cprovSteveA: https://... stuff ? I saw, but like you, I don't know how to access 03:08
SteveAthe zope3 way to avoid circular imports is to use adapters and utilities to indirectly refer to objects via the interfaces you need.03:08
SteveASo, everything depends on interfaces, but doesn't have many interdependencies03:09
stubI think I wrote BugContainerBase - yeah.03:09
=== BradB|away is now known as BradB
limiI need your helpful Mac assistance ;)03:11
limiapt_pkg and plpython03:12
limihow? :)03:12
limiaka. python-apt03:12
BradBlimi: apt_pkg: forget it. Just create a stub for the module that has the two names that actually get imported set to None.03:12
BradBkiko filed a bug for what's wrong with it, but it won't get fixed anytime soon.03:12
sabdflBradB: can't wait for the soyuz boys to check in their page tests :-)03:12
BradBlimi: plpython: forget it too. :) I always just comment out that part of the Makefile when I work, then uncomment it before I check in again.03:13
cprovBradB: if you think necessary we can eliminate the apt_pkg dependency 03:13
BradBlimi: And, I'm hoping that extra complexity will be dropped, because it's overkill.03:13
BradBcprov: You'd have to ask sabdfl if it's worth it.03:13
limiI see03:14
=== limi is at one point going to forget that Makefile
BradBsabdfl: there are some already03:14
BradBI know, because there's one that always fails for me because of not having apt_pkg.03:14
limiis there any way to tell arch to ignore any changes to that file?03:14
sabdfli tihnk the package dependency links are awesome03:14
cprovsabdfl: what do you think, apt_pkg helps, but it is causing many problems to Mac people,03:14
BradBlimi: You wouldn't want to, because it gets updated somewhat frequently by other people.03:15
sabdflso yes, we can create smarter stubs for MacOSX that return lists etc instead of None03:15
sabdflthat should work03:15
cprovsabdfl: I suggest to write a simple DEB deps parser (that's why we need apt_pkg) and eliminate the dependency intead of write an imporved stub for Mac ..it will be easier and cleaner for everybody03:20
stub'try: import apt_pkg; except ImportError: import stub as apt_pkg' would work for now (and possibly good enough permanenty?)03:22
(spiv/#launchpad) stub: So long as we can make tests that depend on the real apt_pkg get skipped when it's not available, yeah.03:22
sabdflcprov: 03:22
sabdfljust use:03:22
BradBSteveA: Any word on when the page test generator will work again? Malone is costing a fair bit of coin for me to do the same things over and over again, because people are being allowed to checkin code that breaks things that already work, because I can't do page tests for that code due to the bugs filed in Bugzilla.03:23
BradBSo, today again, I have to go through and unbreak vocabularies that are looked up by name that can't be looked up by name, because they're vocabularies, not vocabulary factories.03:23
sabdfl    return [[('macosx', '', '')] ] 03:24
sabdflbradb: ^^03:24
BradBstub: Your vocab changes to Malone broke every screen that's accessed off a bug, btw.03:24
stubUrgh... 03:25
sabdflsame for ParseSrcDepends03:25
stubI think we fix that properly this time then03:25
=== debonzi [~debonzi@] has joined #launchpad
cprovsabdfl: ok, but as spiv said, we'll lack on ftests, btw is there a way to don't consider an <ul> ... </ul>, or it should be done just by line ?03:27
BradBsabdfl: Is that basically saying that the given package has no dependencies on a package in os x?03:27
sabdflBradB: it means that the pages will still run03:31
sabdfland we can bypass the ftests for that in macosx03:31
sabdflthis is just a stub that will pretend that EVERY package depends on a package called macosx03:31
sabdflfor fun03:31
sabdflBradB: what was the magic incantation to build postgres with plpython?03:32
BradBsabdfl: ./configure --help. it's either to add --with-python, or --enable-python; the former, I think.03:32
sabdflthere's no ./configure in the darwin ports dir that i can see?03:33
BradBOh, I just d/l'd the source of 7.4.503:33
KinnisonI think you have to invoke a specific target to get the ports tree to unpack and prepare the source tree03:34
sabdflKinnison: que?03:34
BradBlulu: ping03:35
luluBradB: How's our cookie issue?03:36
sabdflKinnison: how do i invoke a specific target?03:36
BradBlulu: I was just going to ask you if I can go ahead and do it again now. (I have to go grab the patch, but it should be easy this time)03:37
Kinnisonsabdfl: Not a clue; It's been years since I've used a ports tree03:37
luluBradB: Go for it. Thanks Brad.03:37
BradBlulu: thanks, i'll let you know in the next little bit when everything should be okay.03:38
luluBradB: Great! Do we need to log out?03:38
BradBIt'd be better if noone were logged in. It'll probably take me about 10-20 mins to get the patch and check it out before applying it to canonical.com.03:40
luluBradB: Ok - I'll log off. Tx!03:41
=== lifeless_ is now known as lifeless
=== jblack_ [~jblack@static-209-158-45-74.scr.east.verizon.net] has joined #launchpad
=== Kinnison pouts at this query doing seqscans which are probably sucky
Kinnisonoh well; it only takes 600msecs for now03:51
sabdflBradB: did you build with readline support?03:51
stubsabdfl: Should be unnecessary unless limi wants to use psql to talk to the database. Readline will be in /opt/local03:55
sabdflhow do i tell ,.configure where to look?03:56
stubSo I take it that it is createlang that is failing when limi tries to build the launchpad database?03:56
sabdfldoens't like --with-readline=/path03:56
sabdflstub: yes03:56
stubenv LIBS=-L/opt/local/lib ./configure blah blah blah03:56
sabdfl'k thanks03:57
sabdfli'm installing postgres *cough* 8.0.0b3 *cough*03:58
sabdfldon@t tell limi :-)03:58
stubTroublemaker :-)03:58
sabdflwill give it a quick shot and see if it works03:58
sabdflwe may as well start to cut our teeth on personal machines03:59
stubNeed to get martin to package it up for hoary packages so it is easy for us to test04:00
BradBsabdfl: Yeah, I built with readline, I think04:02
BradBstub: Your Plone changes were only in CMFCore/ presumably?04:04
stubYup - tla changes --diffs stuart.bishop@canonical.com/plone--release--2.0.4 should tell you exactly what (about 3 lines in CookieCrumbler.py and the new cipher.py module)04:05
=== BradB finds out how long that takes to run
stuboh... I can send you the diff04:07
(dilys/#launchpad) Merge to rocketfuel@canonical.com/launchpad--devel--0: Make vocabulary method produce factories, and move to vocabulary module (patch-636)04:08
BradBstub: I was just in the midst of undoing your vocab patch on my tree (not being entirely sure if arch will do what I think it should, but...)04:09
stubYes - just CookieCrumbler.py and the cipher.py module04:09
=== kiko [~kiko@200-206-134-238.async.com.br] has joined #launchpad
BradBThe amount of output coming from a "tla undo foo@bar/baz--patch-123" is definitely a bug.04:11
=== stub has never tried it
=== BradB looks through the diffs
ddaaBradB: if you have a revlib/pristine for the specified revision, the output is clean.04:14
ddaaMaybe the revision generation should only produce summary output if that's what you mean.04:14
ddaaMhh... even then... yes, the changeset should appear twice... once for generation anh once for application.04:15
ddaaMaybe the generation output should be cut off.04:16
BradBstub: So i guess this patch depends on PyCrypto? :)04:21
stubYes. I thought that would be a better approach than attempting to implement AES myself ;)04:22
=== SteveA wonders what's wrong with xor and a large one-time pad
stubIt needs someone who knows this stuff better than me to vet the cipher.py module to ensure I'm not on crack, but is better than what we have atm at least ;-)04:23
SteveA(and a large salt)04:23
stubSteveA: Because you know the plaintext (the passphrase) and can reverse the secret from the cipher text.04:24
SteveAhmm -- right, the point is to set a cookie with information that the person knows already.04:24
=== limi [~limi@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
BradBelmo: Presumably you're the guy to ask to get a python package installed on gentoo?04:26
BradBSteveA: Should I just install pycrypto somewhere under ~zope, or should I wait until someone can install it system-wide?04:41
Kinnison    ConfigurationError: ('Invalid value for', 'factory', 'Module canonical.launchpad.vocabulary has no global BugTrackerVocabulary')04:47
Kinnisonwill that go away if I star-merge?04:47
=== ddaa notes that undo does not display the changeset generation output, only application.
BradBddaa: I think that all the output I was seeing was due to having a greedy revlib.04:48
ddaaprobably... then I agree this output should be sumarized (only display "* building revision xxxx")04:50
SteveABradB: python-crypto is in ubuntu, so we should just get that installed on gentoo04:51
BradBSteveA: okay, i'll email elmo then04:52
SteveAok.  I just asked elmo and thom on #canonical04:52
SteveAbut, mail to admins is the "canonical" way to do it04:53
=== limi [~limi@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
KinnisonOkay, make check currently fails04:55
=== limi fills daf and mako with volcanicity
KinnisonMostly with: ConfigurationError: ('Invalid value for', 'factory', 'Module canonical.launchpad.vocabulary has no global BugTrackerVocabulary')04:55
Kinnisonanyone know what I can do to fix that?04:56
Kinnison(parsing ftesting.zcml -> configure.zcml -> vocabulary/configure.zcml04:56
sabdflmacosx has a funnny04:59
sabdflwc -l 04:59
sabdflgives an indented result04:59
sabdflwhich breaks some of stub's new magic04:59
sabdflhow do i get rid of the whitespace before the number?05:00
BradBsabdfl: yes!05:00
sabdflBradB: any suggestions?05:00
Kinnisonis this in shell?05:00
=== BradB was thinking of sed or awk
Kinnisondsilvers@petitemort:~$ echo $((    500))05:00
Kinnisonthat might help05:00
sabdfli guess i need wc -l | ???05:00
sabdflto get rid of leading and trailing ws05:00
sabdflwhat's the ??? foo?05:01
Kinnisoninstead of foo=`wc -l bar` do foo=$((`wc -l bar`))05:01
SteveABradB: thom has installed python-crypto on gentoo05:01
sabdflis that /bin/sh?05:01
BradBSteveA: cool, thanks05:01
stubHmm... is there a way of saying do a numeric comparison so whitespace doesn't matter?05:01
BradBah yes, echo `wc -l ...` seems to do the right thing.05:01
KinnisonBradB: there's that too actually; good call05:01
Kinnisondsilvers@petitemort:~$ dash05:02
Kinnison\u@\h:\w$ echo $((  4500))05:02
KinnisonI guess $(()) is posix shell05:02
stubKinnison: make check is working here.... and I checked in the last changes to vocabulary as far as I know05:02
sabdflBradB: we'll commit from limi's box to verify that he can actually do that05:03
sabdflstub: will you see if there's a better way to check if a db exists?05:04
sabdflalso, pg 8.0 bitches if you try to install a language twice05:04
sabdflplease could you find a way first to test if the language is installed, and then only try and install if it isn't?05:05
stubpsql -l is the most trustworthy way I think - the other way is to attempt to connect and catch the error.05:05
stubI didn't think the install language would run twice, since the database is being dropped and recreated by default (hmm... unless it has been added to template1...).05:06
stubI'll need to drop the makefile and replace with a python script I think, or at least some python helper scripts to use in the makefile.05:07
Kinnisonstub: Okay; so it's some of my changes magically causing the issue05:08
Kinnisonstub: Sorry for the noise on-channel05:08
=== BradB mutters something about converting to a Python-based build process
(dilys/#launchpad) Merge to rocketfuel@canonical.com/launchpad--devel--0: canonical.arch.infoUpdater, fix sourcesource.cvsroot from info files (patch-637)05:11
SteveAKinnison: if launchpad out of rocketfuel doesn't start at all, that means the "make check" before merging isn't working.05:11
sabdflthis is weird05:11
limistub: you are no longer running Mac OS X?05:11
KinnisonSteveA: noted05:11
sabdflthe $(()) trick works find at the command prompt 05:11
sabdflfor both bash05:11
sabdfland bin/sh05:12
BradBSteveA: unless he doesn't have something that the pqm box does.05:12
stubGood or bad mutters? I know they work for me but don't know what other people think.05:12
KinnisonIt seems that the real error message was "class Interface not defined"05:12
SteveAunless his environent is "broken", yes05:12
stublimi: Nope. Had to give my mac back to old work05:12
SteveAKinnison: didn't compile zope libraries05:12
sabdflbut it fails inside the makefile05:12
Kinnisonsabdfl: what is $(SHELL) ?05:12
KinnisonSteveA: Naah; it was that I have 'Interface' somewhere where i meant 'SQLBase'05:12
BradBstub: Lucky you. :P05:12
KinnisonSteveA: 'make check' works now :-)05:13
sabdflKinnison: at the command prompt it's bash05:14
=== stub misses his 17" G4 TiBook
Kinnisonsabdfl: and in the script?05:14
sabdflappropriately enough, from make it is "HELL"05:14
Kinnisonsabdfl: $$(SHELL)05:14
stubI also miss iPhoto and iCal :-(05:14
Kinnison(from make)05:14
BradBstub: is there any hope for HFS+ though? sometimes i wonder...05:14
BradBmaybe I'm meant to have Panther and UFS05:14
Kinnisonsabdfl: don't forget to double-up all dollar signs for shell-under-make05:15
sabdflhey, i know so little about make AND shell i'm not worthy of debugging stub's code05:15
stubBradB: ufs didn't seem nice when I tried it under 10.0, although I vaguely remember the problems from OS9 apps. I would want to see benchmarks on same hardware/different os before condemning HFS+ though.05:16
BradBstub: My "muttering" was my hinting that we need a Python-based build process to sanely and easily do the more complex dependency checks we're currently trying to shoehorn (in a cross-platform way) into a Makefile.05:16
sabdflhmm... if i put @ echo $$(SHELL) in the makefile it says:05:16
BradBAnd with a Python-based build, we then have a Makefile 10-12 people can maintain, instead of 1-2.05:16
stubsabdfl: You think I know what I'm doing??? I learnt when I started sysadmining so I never would have to learn sh, awk etc. and have spend the last 10 years with tcsh as my shell :-)05:17
sabdfl /bin/sh: line 1: SHELL: command not found05:17
stubBradB: Cool. +1 then :-)05:17
stub(ermm... learnt Perl that should be)05:17
BradBYeah, Perl precludes me from knowing all the different little shell programs that people actually still, well, use.05:18
sabdflstub: ok, the magic incantation appears to be:05:25
sabdfl     @if [ "$$((`psql....05:26
limi@if [ "$$((`psql -l | grep ${TEST_DBNAME} | wc -l`))" = '1' ] ; \05:26
limi            then dropdb ${TEST_DBNAME} ; \05:26
limi        fi05:26
BradBheh heh05:26
SteveAI suggest keeping the makefile strictly to handle dependencies, and using python scripts for the rest.  That is, the makefile targets are just python scripts.  That's what I did for test_on_merge.py and make check.05:27
SteveAit may be more verbose, but it is easier to understand, and less prone to sh-jockies writing incomprehensible stuff in the makefile.05:27
sabdflwhy would a fresh pull of rocketfuel have test errors?05:30
SteveAit won't05:30
sabdflit does05:30
SteveAnot page test errors, anyway05:30
SteveAhave you installed all the things required?05:30
SteveAis it on a machine that has run launchpad before?05:30
BradBsabdfl: What are the errors? :)05:32
sabdflit's db integrity error's during the page tests05:32
sabdflit seems as though it's running the page tests against a db that already has the page test data in it05:32
limi    IntegrityError: ERROR:  duplicate key violates unique constraint "productrelease_pkey"05:33
BradBsabdfl: what if you manually reset the DB and run make check?05:39
BradB(e.g. i don't rely on the make check rule properly resetting the DB here, because it doesn't seem to reset it properly on OS X, due to the indent issues with wc and such.)05:40
SteveAis this the optimisation recently introduced by stub not working on OS X?05:41
BradBSteveA: there are rules that are broken in the top-level and schema Makefile, and dependencies that have been introduced that break things on OS X (e.g. plpython), which would indicate that they were probably made by someone who wasn't working on OS X, if that's what you're asking. :)05:45
sabdfl<limi> would A-A-P be an alternative to make? http://www.linuxjournal.com/article.php?sid=721505:45
sabdfl<limi> Python-based and all05:46
SteveABradB: I noticed that stub had recently checked in some optimisations of the setup for functional tests and page tests05:46
BradBah, that, not sure yet05:47
stubThat won't affect this - it is creating the launchpad_unittest_template database, not the one used by the page tests05:48
SteveAgrep provides decent exit codes, so why use wc -l ?05:50
sabdflstub: problems was that ALL the places you have the new voodoo needed $$(()) love05:50
sabdflwe have it fixed now05:50
sabdfljust have to see if limi can actually commit and pqm05:50
sabdfldoes make check give a useful exit code?05:56
Kinnisonpqm relies on it05:57
sabdflshell would be...?05:57
SteveAecho $?05:59
sabdflif [ $? -GT 0 ] ; then06:00
sabdflsans caps on the gt, right?06:00
Kinnisonlooks good06:00
kikoyes, sabdfl06:01
(dilys/#launchpad) Merge to rocketfuel@canonical.com/launchpad--devel--0: More lucille-related db stuff and an example of how non-integer primary keys work (patch-638)06:15
Kinnisonkiko: ?06:21
kikohey Kinnison06:26
KinnisonI was wondering what you were laughing at06:27
kikosabdfl's kiki smirk. 06:28
=== BradB is now known as BradB|lunch
kikothey think it's funny to corrupt a person's name that way. 06:45
(elmo/#launchpad) err, pot, kettle, black, mister Trout06:45
KinnisonI see06:46
kikosabdfl, can I request elmo allow the creation of an account for salgado@async.com.br?06:46
=== Kinnison decides to call kiko 'koko' instead then
kikothat wasn't english. hopefully it's half-afrikaans.06:46
sabdflkiko: who's that?06:47
kikosabdfl, Guilherme Salgado, who will be starting after next month as per our phone discussion06:48
kikosabdfl, we'd rather he tagged off debonzi or cprov but we're not sure arch makes that safe enough.06:48
=== cprov thinks "koko" might sound funny/strange in a portuguese talk
kikosabdfl, if you would rather we pursued the arch route for this period, I'm okay with it.06:49
(dilys/#launchpad) New bug 2121 for Launchpad/Launchpad: product interface verification fails07:13
(dilys/#launchpad) https://bugzilla.warthogs.hbd.com/bugzilla/show_bug.cgi?id=212107:13
sabdflkiko: it does07:14
(dilys/#launchpad) New bug 2122 for Launchpad/Launchpad: branch interface verification fails07:15
(dilys/#launchpad) https://bugzilla.warthogs.hbd.com/bugzilla/show_bug.cgi?id=212207:15
kikosabdfl, hmmm. 07:16
kikosabdfl, "it does"?07:16
sabdfli'm starting to like arch07:16
sabdfli think he could tag off cprov, then cprov merges from him and pushes up to rocketfuel07:16
sabdflat least for a week or two07:16
kikoso I should try and get salgado to tag off cprov. 07:17
kikookay -- the only issue I see is gpg-signing the merged patches, but I think jblack_ can help us there.07:17
(dilys/#launchpad) New bug 2123 for Launchpad/Launchpad: dbschema unit tests fail07:17
(dilys/#launchpad) https://bugzilla.warthogs.hbd.com/bugzilla/show_bug.cgi?id=212307:17
kikojblack_, if you are around, we'd appreciate some help.07:17
kikosabdfl, I know jblack_ takes patches from elsewhere and merges them into RF, so I assume it is possible, we just never have.07:18
(dilys/#launchpad) New bug 2124 for Launchpad/Launchpad: "check" rule for top-level makefile should run unit tests07:21
(dilys/#launchpad) https://bugzilla.warthogs.hbd.com/bugzilla/show_bug.cgi?id=212407:21
=== lulu [~lu@host217-37-231-28.in-addr.btopenworld.com] has left #launchpad []
sabdflkiko: "elsewhere" could be tricky07:36
sabdflbut if he tags of cprov then there is no loop07:36
sabdflhe can only update when cprov updates07:36
sabdflessentially, cprov is his upstream, not rocketfuel07:36
sabdflhe doesn't mirror to chinstrap or merge to rocketfuel07:36
kikoyes, I understand.07:36
sabdflcprov merges from him and pushes to rocketfuel07:36
kikowe just were thinking if the fact that chinstrap won't recognize his gpg signature be a problem for cprov's RF request.07:37
(spiv/#launchpad) kiko: I'm not sure, but I think that may be ok, because cprov will have signed it.07:37
(spiv/#launchpad) kiko: But it's worth checking with our arch guys :)07:38
cprovspiv: ok, I'm not sure if the patches will be resigned, but anyway salgado should have access to my archive (in my laptop), it might be complex (WEBDAV maybe)07:42
(spiv/#launchpad) cprov: He only needs read access, so plain http would work (although you'd have to mirror it and make sure the mirror had .listing files)07:44
=== debonzi [~debonzi@] has joined #launchpad
=== spiv boggles as archzoom takes over a minute of cpu time to process one page request
=== BradB|lunch is now known as BradB
=== carlos hates current.sql, he had a hard to detect bug because the sample data :-(
daf"corrupt library (failed inode signature validation)"08:12
dafis there any way for me to find out which files were corrupted?08:12
dafddaa, lifeless, jblack_: ^^^08:13
ddaaNone that I am aware of.08:14
ddaaBut because of hardlinking, you should probably remove at least the whole version from the revision library.08:14
dafI'd really like to know what got corrupted so I can work out whether it was my fault and whether it's likely to happen again08:14
(spiv/#launchpad) ddaa: I've been in daf's position too. It'd be a really useful diagnostic.08:15
ddaaIf you are interesting in diagnosis, you can just move the revision out of the revlib, remove the whole version, then run "tla changes" in the tree.08:15
daf"remove the whole version"?08:15
(spiv/#launchpad) (for instance, there seems to be something that reguarly corrupts my zope checkout if I hardlink it, but I've no idea what, so I just don't hardlink that anymore)08:16
ddaarm -rf path-to-revlib/arch@host/category/category--branch/category--branch--008:16
(spiv/#launchpad) ddaa: It was the conflicting "move the revision out of the revlib" and "remove the whole version" that confused me :)08:17
dafalso, a way of automatically removing corrupt revisiosn would be nice08:17
dafremoving each one by hand is a pain08:17
ddaaIf you love shell one liners you could do something along "tla library-revisions $version | xargs -n 1 tla library-remove" or something like that08:18
ddaadaf: good point, I do not know how to do that.08:18
dafwell, wishlist bug08:19
dafdo we have a place in Bugzilla for bugs on Arch?08:19
dafwe should08:19
ddaaThere should probably be a tool which traverse the whole revlib, check the inode sigs, and remove and list corrupt revisions.08:20
ddaadaf: you can post a message to gau with a subject starting with "[BUG] ", that will put in in tla own bts, which is being written by asuffield.08:21
ddaaWell, it was beinf08:21
ddaabeing written by asuffield until not long ago. He does not seem very active on that atm. I've heard that tom pissed him off by changing his mind multiple times on some feature.08:22
ddaaarch is BIG on NIH08:22
dafthe model we've been using so far is this:08:22
dafif we have people at Canonical who are involved in some project we use08:22
daflike Steve for Zope, Andrew for SQLObject, etc.08:23
(spiv/#launchpad) (BradB for SQLObject, me for sqlos...)08:23
dafthen we file bugs in bugzilla and the appropriate people interface with upstream08:23
dafspiv: ah, ok08:23
ddaadaf: okay08:23
dafI think this could work for Arch also08:23
(spiv/#launchpad) daf: BradB has commit privs on SQLObject :)08:23
dafspiv: I bet you were happy to get rid of that one :)08:24
ddaaNo problem with that. I guess "the appropriate person" will end up being jblack.08:24
(spiv/#launchpad) daf: Hah. I'm still happy to look into SQLObject issues, but it's good having more help, not to mention someone that's a little more responsive than ianb...08:24
dafjustdave: how about a category in Bugzilla for Arch bugs?08:25
(spiv/#launchpad) An "Arch" category in bugzilla could potentially be a good place for PQM bugs/feature requests as well.08:25
dafthey're currently filed agains "Project Admin" or somesuch08:26
=== sabdfl [~mark@host217-37-231-28.in-addr.btopenworld.com] has joined #launchpad
ddaais that usual to use something of the form "<date> <author>" as the summary of cvs commit messages?08:29
=== daf shrugs
dafI tend to do a one-line summary of the commit08:29
dafwhich is usually "Updated Welsh translation." :)08:30
(spiv/#launchpad) ddaa: Not in my limited experience.08:30
ddaaI see many of those in zenity and yelp, so I'm not sure that's normal.08:30
=== BradB starts the scary canonical.launchpad.event namespace
ddaaI also see many summaries starting with a "* " which looks suspect...08:30
ddaabut... well, I'm not even sure that cvs has the notion of a summary line...08:31
SteveABradB: events?08:32
dafddaa: *-lines are probably copied out of the changelog08:32
ddaayeah... I guess I should ask lifeless...08:32
dafddaa: hah, true -- I've clearly been using Arch too much :)08:33
ddaaComing from cvs, I do not know what is expected crack and what is unusual crack.08:33
BradBSteveA: for things that are added or edited related to a bug08:33
dafthen again, that would imply that I haven't been using CVS enough, which is oxymoronic08:34
ddaa"my users hate arch, but they hate cvs even more"08:34
dafhmm: deleting the last 50 revisions fixed the corruption08:34
SteveABradB: good idea.  Don't bother using an interface for the events.  Use classes and keep them simple (no, or next to no logic in the event itself).08:34
SteveAIf you must use logic in the event, do it in the __init__08:34
dafddaa: precisely!08:35
SteveAsabdfl was unkeen on using events at this point when I brought up the idea in London.08:35
(spiv/#launchpad) ddaa: I'm pretty sure that cvs doesn't have a summary line concept. Many projects have software that mails commit messages with the first line as the subject, so the first line tends to be a de facto summary line.08:35
(spiv/#launchpad) ddaa: (But I am not a CVS expert :)08:35
BradBSteveA: it seems the most natural way...08:36
BradBthere are a total of about 13-14 things that we need to monitor08:37
BradBabout 7ish, but there's add/edit events for each (the only exception is perhaps comments, which aren't currently editable08:38
SteveAI agree.  If you add events.py...  it should be events not event, because like interfaces there are many kinds of event in the file.  It isn't like we have a domain object type called an "Event".08:38
BradBoh, ok08:38
SteveAWrite in the module's docstring about using just classes, not interfaces, and keeping them as free of logic as possible (as in, just carriers of information)08:39
SteveAand if there must be any logic in them, to do all the processing in __init__, just like with an exception.08:39
SteveAevents are a lot like exceptions, actually08:39
SteveApersonally, I'd put them in with interfaces08:39
BradBIs the only reason to avoid interface to reduce the amount of typing?08:39
SteveAalong with exceptions.  because they are a lot like exceptions, and form part of the interface to something.08:40
SteveAthere should never be more than one implementation of a particular event.08:40
SteveAthe event itself carries sufficient type information for routing the event to subscribers.08:40
BradByeah. i'll have one handler class that delegates to the appropriate method based on what happened.08:41
SteveAso, I'd say, put the events in with the interfaces08:41
SteveAyou can just have handler functions, when that makes more sense08:41
SteveAand, it often does08:41
BradBSteveA: why not keep them in canonical.launchpad.events? seems simpler than to group them in interfaces, which they aren't.08:42
SteveAexceptions aren't interfaces too08:42
BradBi'd put exceptions in an exceptions namespace :)08:42
SteveAbut, they are part of the public interface of a thing.08:42
SteveAand vocabularies in a vocabularies namespace?08:43
BradByeah :)08:43
BradBlike they are currently08:43
SteveAthe interfaces modules define the boundaries of a subsystem.08:43
SteveAthat boundary is not just the IWhatever interface, it is also the exceptions that can be raised when interacting with an IWhatever08:44
SteveAand the events that get produced when interacting with an IWhatever08:44
SteveAbut, really, I don't mind a lot either way.08:44
BradBi'll leave it in events for now, and if people find it that strange, i'll let someone else tla mv it.08:44
BradB(or do the conceptual equivalent :)08:45
SteveAthe point is, if you're looking for stuff to do with a Bug...08:45
BradBhm, true08:45
=== BradB hmms
SteveAthe other thing is one of dependency08:46
SteveAso, a subscriber to such an event needs to know about the event08:46
SteveAand about the interface of whatever the event is carrying08:46
SteveAa BugAddedEvent would probably carry the bug08:46
SteveAmaybe the IPerson that added the bug... maybe not08:47
SteveAanyway, some things for you to think about :-)08:47
BradBi'll check in some kind of code that works today08:47
SteveAKinnison: lib/canonical/lucille/tests is not a package08:51
SteveAit must be a package08:51
SteveAadd an __init__.py to it to make it into a package08:52
ddaawhat's the cvs magic to know whether a file has the binary bit on?08:52
(dilys/#launchpad) Bug 2123 resolved: dbschema unit tests fail08:54
(dilys/#launchpad) https://bugzilla.warthogs.hbd.com/bugzilla/show_bug.cgi?id=212308:54
(dilys/#launchpad) Merge to rocketfuel@canonical.com/launchpad--devel--0: Fix bug 2123, failing dbschema tests. (patch-639)08:58
ddaaOkay... knew that...09:05
ddaasomeone tell the zenity folks about -kb...09:05
=== ddaa is out
dafSteveA: we discussed this yesterday09:09
dafSteveA: Lucille's tests don't pass when run outside a specific directory09:10
dafSteveA: so Kinnison is deliberately not making it a package until he's fixed them09:10
SteveAI'd be inclined to make it a package, but not call it "tests"09:13
SteveAso, the test runner won't complain09:13
SteveAand I won't be mislead into thinking that they're standard launchpad tests ;-)09:13
dafI don't think it's worth worrying about it if it's a short-term problem :)09:13
(spiv/#launchpad) daf: Is it because it needs to access the tests/data directory?09:14
(spiv/#launchpad) Or is it more than just that?09:14
dafspiv: yes09:14
(spiv/#launchpad) Ok, that's fairly easy to fix, I would think.09:14
dafa volunteer! :)09:14
(spiv/#launchpad) Heh.09:14
dafare you still in Ma{j,ll,y}orca, spiv?09:15
(spiv/#launchpad) It'd be easier to fix with Twisted's test runner ;)09:15
(spiv/#launchpad) Yeah, for a couple more days.09:15
dafand then on to Prague?09:15
(spiv/#launchpad) Yep.09:15
dafit's cold here, how's Spain?09:15
(spiv/#launchpad) Good :)09:15
(spiv/#launchpad) It's not really swimming weather anymore, but it's not far off...09:16
(spiv/#launchpad) There was plenty of people sun bathing on the weekend :)09:16
SteveAspiv: you're in spain?09:17
jblack_kiko: I'm here09:17
(spiv/#launchpad) For a couple more days, yeah.09:18
SteveAmainland or island?09:18
(spiv/#launchpad) SteveA: See my travel itinerary on the wiki ;)09:18
(spiv/#launchpad) Island.09:18
jblack_cprov, like I told kiko, I'm here09:18
=== SteveA fixes one of the lucille tests
(dilys/#launchpad) Merge to rocketfuel@canonical.com/launchpad--devel--0: imrpoved project search; various tidyings-up (patch-640)09:36
dafcarlos: around?09:42
carlosdaf: yes09:42
dafhow's your branch looking?09:43
carlosdaf: better, but not as good as it should :-(, I had a bug on the sample data and I expend too many hours with it09:46
dafit's fixed now?09:47
carlosI'm with the export and import functional tests, seems like the functionality is now in place, but with some minor errors09:47
carlosdaf: yes, the sample data bug is fixed09:47
carlosI also detected that the functional tests need some love09:48
carlosbecause I imported a pofile and it was empty in the database and the functional test said it was right09:48
SteveAcarlos: you haven't merged your branch yet? 09:48
carlosSteveA: no :-(09:49
SteveAany idea when it will be merged?09:49
SteveAKinnison: please please no UTF8 source files!09:50
BradBSteveA: do events that get trigged by a foo getting added to a bug belong in lib/canonical/launchpad/zcml/foo.zcml?09:50
BradBEvents are one of the things not mentioned in the example.zcml.09:50
SteveAthat's because we don't have any events, and mark was unkeen to start using them09:51
SteveAI don't know what a foo is09:51
SteveAbut, decide on the best place to put them that answers the question:09:51
carlosI cannot give a concrete estimation, I think I have studied all code now so it should be easy because I understand all, my plan is don't go to sleep until it's fixed, I'm starting to be bored of this patch09:51
SteveA"If I'm a person who has spent only 1 week on the project as a whole, where would I go looking to find it?" 09:52
SteveAcarlos: can you break the job down into smaller parts that you can merge?09:52
=== daf wonders what the aversion to find/grep is
carlosdaf: I thought that I prefer if you merge your changes to pofile.py because It will be easier If I merge it with my branch than if you should do it...09:53
dafcarlos: is there something I could help with that you make your job easier?09:53
=== BradB goes for bugevents.zcml
dafBradB: no '-'?09:53
carlosSteveA: no, the problem is the database change if we change the schema, all the changes are needed09:53
SteveAhow can I open a .txt file encoded in UTF-8 and save it without screwing it up? 09:53
dafSteveA: use a decent editor09:53
daf:se encoding=utf-809:54
SteveAI'm using gvim.  I think a bit of :set encoding=utf8 will do it09:54
carlosdaf: perhaps you could start validating my code, I'm working on it too much time and perhaps you could catch the errors I don't see...09:54
SteveAbut, I'll repeat... All source code files should be in ascii09:54
dafcarlos: ok09:54
carlosSteveA: use recode09:54
dafcarlos: how should I go about validating it?09:55
dafcarlos: what does recode do?09:55
carlosdaf: I will do a star-merge now to get latest unittest fixed09:55
carlosdaf: change the encoding of a text file09:55
dafcarlos: that doesn't help for editing it09:55
carlosrecode latin1..utf8 file.txt09:55
carlosit converts it into non utf-809:55
carlosand you can edit it later09:56
dafwhat if there are non-latin-1 glyphs in the file?09:56
carlosI thought that was what SteveA wants to do 09:56
dafSteve doesn't want Latin 1 either09:56
carlosdaf: change latin1 with the encoding :-P09:56
dafhe wants ASCII09:56
carlosbut that will break the file removing chars, right?09:57
dafif you have (say) "" in the source code, you can't convert it to Latin 109:57
carlosInstead of "Perell Marn" he will get "Perell Marn"09:57
dafbecause Latin 1 doesn't have such a character09:57
daf and  are in Latin 1, and so they can be converted09:58
carlosdaf: dude, the latin1 string was just an example it should be changed to the needed encoding, of course if you want to strip out the non ascii chars... I don't have any idea about how to do it :-)09:58
dafoh, an example :)09:59
dafI think Stee was saying that he wants to edit the file09:59
dafwithout changing the encoding for now09:59
carlosIn fact the command I pasted is to convert a latin1 file into utf-8 :-)09:59
dafcarlos: heh, I thought it might be :)10:00
dafanyhow, this is getting off topic10:00
dafany suggestions for reviewing the changes you have made?10:00
dafalso, you said I should merge my changes to pofile.py?10:01
carlosyes, please merge it and I will review the merge into my branch10:02
carlosI think it will be easier10:02
dafwell, it's not a critical change10:02
dafso I can merge it after you have merged your branch10:02
carlosas you want10:02
dafI think it will let us merge your branch quicker if we delay that change10:02
carlosabout the suggestions to review the changes... not sure, let me merge the rocketfuel changes into my branch and looking the functional tests for one more hour, perhaps It's finished already, because seems like it's beeing imported the file already10:03
SteveAplease get merged as quickly as you can10:03
dafcarlos: you'll report back to me in 1 hour?10:04
carlosdaf: yes10:04
carlosat 21:00 UTC, is it ok?10:04
daflater, then10:04
dafI'll be finishing work today at 21:25 or so10:05
justdavedaf: arch product created.10:07
carlosI need to get some food, I'm back in 10 minutes10:08
(dilys/#launchpad) Merge to rocketfuel@canonical.com/launchpad--devel--0: Some soyuz fix and sql.py cleanup started. (patch-641)10:11
dafjustdave: great, thanks!10:12
(dilys/#launchpad) Merge to rocketfuel@canonical.com/launchpad--devel--0: Make lucille tests run as part of the main launchpad unit tests. Reformat lucille test code to pep8. Change utf8 encoded file into ascii encoding. (patch-642)10:15
(dilys/#launchpad) New bug 2125 for Arch/general: Arch leaves a revision lock when signature fails10:21
(dilys/#launchpad) https://bugzilla.warthogs.hbd.com/bugzilla/show_bug.cgi?id=212510:21
(dilys/#launchpad) Merge to rocketfuel@canonical.com/launchpad--devel--0: fix makefile for Mac OS X (patch-643)10:21
(dilys/#launchpad) New bug 2126 for Arch/general: cleaning broken revisions from one's revision library is painful10:27
(dilys/#launchpad) https://bugzilla.warthogs.hbd.com/bugzilla/show_bug.cgi?id=212610:27
carlosspiv: someday you should explain me why we should use SQLObject.selectBy(fooID=foo.id) instead of just SQLObject.selectBy(foo=foo) or am I doing anything wrong?10:49
dafcarlos: BradB knows SQLObject well also10:50
carlosBradB: someday you should explain me why we should use SQLObject.selectBy(fooID=foo.id) instead of just SQLObject.selectBy(foo=foo) or am I doing anything wrong?10:51
(spiv/#launchpad) carlos: Because SQLObject is pants.10:52
BradBcarlos: Because of a bug in sqlobject. ;)10:52
carlosfunny, SQLObject is a really good idea but it sucks...10:52
BradBSteveA: Looks like I'm creating a package called canonical.launchpad.events anyway, to hold the classes that implement event interfaces (since interfaces are required for events.)10:56
dafcarlos: nice idea, shame about the implementation?10:58
carlosdaf: well, I think it needs some bug fixing :-) but I can live with it if I know how to workarround the bugs10:59
BradBcarlos: It's a hell of a lot better than not-sqlobject, at least.11:01
dafperhaps we should have a bug open in our Bugzilla about this SQLObject issue11:01
carlosBradB: true11:01
dafcarlos: BONG! 21:00 :)11:01
carlosdaf: let the test I'm running finish and I will give you an answer :-)11:02
=== carlos is not sure but thinks it's all fixed but two easy to fix bugs in the exporter
=== BradB looks forward to moving LP to python 2.4 and multi-line imports
carlosdaf: the main problems I had was the fooID=foo.id thing11:03
dafBradB: multi-line imports?11:04
dafBradB: they sound good11:04
BradBsurrounding imports with brackets Does The Right Thing11:05
BradBno more:11:05
BradBimport foo, \11:05
BradB    bar, \11:05
BradB  baz, \11:05
BradB(with step indentation for added effect :P)11:06
carloswow!! it worked (more or less....)11:06
carlosdaf: I have now minor bugs to fix, so what do you prefer?, check the code now or as soon as those minor bugs are fixed do the merge into rocketfuel? (tonight for sure)11:07
ddaaBradB: why not just one import per line???11:07
ddaaand I believe that's what pep8 recommends.11:08
BradBer, more specifically i meant the from imports.11:08
dafddaa: because this is annoying11:10
daffrom canonical.launchpad.foo.bar.baz import corge, grault11:10
daffrom canonical.launchpad.foo.bar.baz import flarp, bling11:10
sabdfldaf: should i be able to see the current code running on mawson?11:12
dafsabdfl: yes11:12
dafmawso's code is currently 27 minutes old11:13
sabdfli get "forbidden"11:13
sabdflon /11:13
dafdid you install the SSL certificate?11:14
sabdfli have the launchpad client cert11:14
sabdflnot the second one11:14
dafthat should be enough11:14
dafit works for me 11:14
dafI have no idea how to go about debugging this sort of thing11:15
sabdflheisenbug, works now :-)11:15
dafheh :)11:15
sabdfltls i can debug :-)11:15
sabdflthat code appears to be massively out of date11:16
dafwhy so?11:19
dafoh, hmm11:19
sabdflchanges i made over the weekend and though had been merged11:19
dafmaybe the update is broken11:19
dafyeah, there was a Makefile.orig lying around11:20
dafok, try again now11:22
=== daf goes out
SteveABradB: I don't think interfaces are required for events11:26
carlosdaf: should I merge the branch when it's ready or should I wait for your review?11:26
BradBSteveA: They are. Jim said so. :)11:27
BradBSteveA: The idea is that classes should be usable, but they aren't yet.11:28
SteveAah -- that's just in the directive11:28
SteveAnot in the underlying system11:28
SteveAI'm doing something a bit different with email, Brad11:37
SteveAbecause I want to integrate testing sending email with pagetests11:38
SteveAso, I suggest you make a function in canonical/launchpad/mail.py for sending mail11:38
SteveAuse the standard python libs for it11:38
BradBI had it in mailnotification (where all the subscriber functions are)11:38
SteveAthe stuff that subscriber functions do should be pretty minimal glue stuff, imo11:39
BradByep, they're simple11:39
SteveAvarious other things will need to send email, for example, the forgotten password pages11:39
SteveAI'm writing more page tests for the forgotten password stuff11:39
BradBcanonical.launchpad.sendmail, perhaps?11:39
SteveAbut I want to get it so that I can test sending email from there too11:40
=== BradB shifts some code around
SteveAbut, I'd be inclined towards canonical.launchpad.mail.send for the function11:40
SteveAor canonical.launchpad.mail.sendmail for ease of importing11:40
BradBi'll do the latter11:40
SteveAI'll sort out getting the zope transactional stuff hooked up, but we can manage without that at present11:41
BradBnot sure if python's stdlib blocks or not11:42
BradBthat was another feature of the z3 way11:42
SteveAit blocks11:42
SteveAbut we want that right now11:43
SteveAkeep it really simple right now11:43
BradBi see what you mean11:43
SteveAprobably when we're developing stuff, we'll want to keep it blocking11:54
BradBthe events work now; now i've just got to go and implement 15 different handlers :P11:54
BradBThe handlers are admittedly really simple; making sure an event is published on, e.g., an edit, may be slightly less simple.11:55
sabdflKinnison: need to split up publishing.py, it's getting a little overloaded11:57
Kinnisonsabdfl: which one?12:00

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