[12:04] <sabdfl> lifeless: ok, bzr transition will start when you are settled in montreal
[12:04] <lifeless> sabdfl:sure.
[12:05] <lifeless> sabdfl: I'd like to have all the subprojects *except* launchpad transitioned in fact, before I fly.
[12:05] <sabdfl> kiko: i want to go live on soyuz on monday, but only if we can test it properly
[12:05] <kiko> lifeless, btw, I'm happy to take the pie if we end UBZ on bzr and I manage a successful merge.
[12:05] <lifeless> we've been through that rocky part already.
[12:05] <kiko> sabdfl, okay. my parts will be in place tomorrow
[12:05] <sabdfl> lifeless: are you absolutely sure about the other parts
[12:05] <sabdfl> ?
[12:05] <sabdfl> is the theory that those change less often?
[12:05] <lifeless> but launchpad is what people hack on, so transitioning that is what will give most tubulence
[12:05] <lifeless> yes
[12:05] <sabdfl> is it possible to fall back once you start transitionint?
[12:06] <kiko> lifeless, at the moment PQM is failing to process 100% of my merge requests with failures in some of the other trees
[12:06] <kiko> non-launchpad
[12:06] <lifeless> sabdfl: yes, just remove the merged stuff from the tip of the branches and switch the pqm config back
[12:06] <kiko> lifeless, can you check if there's something wrong there?
[12:07] <lifeless> kiko: looking at it
[12:07] <kiko> thanks dude
[12:07] <lifeless> I see one merge at 1am and one emrge at 141am my time
[12:07] <kiko> I can resubmit a merge if you like
[12:07] <lifeless> they both worked, one to prod, one to devel
[12:07] <kiko> mine both failed
[12:07] <lifeless> please submit one now
[12:07] <kiko> will do.
[12:08] <lifeless> when it fails, forward me the log.
[12:08] <lifeless> I'll go get breakfast
[12:08] <kiko> done.
[12:08] <lifeless> and hang around to debug.
[12:08] <kiko> I need to go home, lifeless :-(
[12:08] <lifeless> kiko: *I* will hang around to debug.
[12:08] <lifeless> it is saturday :)
[12:09] <kiko> lifeless, I need to work on gina, and I'm starved
[12:09] <lifeless> kiko: so go get some food.
[12:09] <lifeless> kiko: we're in hurry up and wait mode now anyway
[12:09] <SteveA_> what's happening?
[12:09] <lifeless> kiko has had two merges fail 
[12:10] <kiko> oh not much
[12:10] <kiko> lifeless, okay, I'll wait
[12:10] <lifeless> stubs and bjorns went through though
[12:10] <SteveA_> i've had two or three fail
[12:10] <nanouck_> bye (sleep)
[12:10] <kiko> SteveA_, what's the symptom?
[12:10] <SteveA_> something about contention on launchpad_ftest database
[12:11] <kiko> I got that too earlier
[12:11] <kiko> now I got something else
[12:11] <SteveA_> i need to land this before the next production update
[12:11] <lifeless> kiko: the request is processing
[12:11] <SteveA_> cos it has been cherrypicked
[12:11] <kiko> cool
[12:11] <lifeless> kiko: so go, get food.
[12:11] <lifeless> kiko: come back in ~20 to forward me the detailed error
[12:12] <kiko> sabdfl, note that testing soyuz also involves pushing all package uploads through the uploader
[12:12] <lifeless> if you dont eat, you wont' be effective anyway.
[12:12] <kiko> sabdfl, through the build system
[12:12] <kiko> sabdfl, and then republishing
[12:12] <kiko> by all package uploads I'd mean all breezy package uploads
[12:12] <lifeless> SteveA_: I have all of the rocketfuel archives active branches converted - zope, sqlos, sqlobject etc etc etc
[12:13] <kiko> sabdfl, if we don't do that it's likely we will see problems in production
[12:13] <lifeless> SteveA_: we can convert any of these to getting commits from bzr at any point.
[12:13] <lifeless> SteveA_: but I think we should let your and kikos pending merges get through the queue first.
[12:13] <kiko> lifeless, can you kill my merge?
[12:13] <kiko> I hosed it
[12:14] <kiko> I knew I should have gone home :-)
[12:14] <kiko> lifeless, I just submitted the right one
[12:14] <lifeless> sure thing
[12:14] <kiko> jordi, do you need anything else?
[12:15] <jordi> kiko: no
[12:15] <jordi> I need to leave actually
[12:15] <kiko> wonderful
[12:15] <jordi> or I'll be late
[12:15] <lifeless> kiko: better ?
[12:15] <jordi> and that means PROBLEMS with the gf
[12:15] <kiko> yes
[12:15] <kiko> much
[12:15] <kiko> jordi, even if you're not late, gfs are trouble :)
[12:15] <lifeless> but such wonderful trouble
[12:16] <jordi> kiko: YOU SAID IT
[12:17] <SteveA_> lifeless: so, want me to submit to pqm again?
[12:23] <lifeless> SteveA_: please
[12:33] <kiko> where's my failure goddammit
[12:33] <SteveA_> lifeless: sent
[12:35] <kiko> lifeless, sent failure
[12:35] <kiko> see ya
[12:47] <lifeless> kiko-zzz:   File "/home/pqm/arch/queue/workdir/rocketfuel@canonical.com/---launchpad--devel--0/launchpad/lib/canonical/ftests/pgsql.py", line 114, in installFakeConnect
[12:47] <lifeless>     assert _org_connect is None
[12:47] <lifeless> AssertionError
[12:47] <lifeless> kiko-zzz: nothing to do with pqm AFAICT
[12:48] <lifeless> SteveA_: is that what you were seeing ?
[12:51] <SteveA_> lifeless: yes
[12:51] <lifeless> I have not touched postgresql config nor launchpad config for postgresql use
[12:52] <lifeless> the last commit, from bjornt, does, but should be ricght
[12:52] <SteveA_> odd
[12:52] <lifeless> both you and kiko are failing in the same way at the same time
[12:53] <lifeless> after no config changes relative to the last working commits
[12:53] <lifeless> so :
[12:53] <lifeless> we should check with stub, and the admins, about changes re chinstrap
[12:53] <lifeless> but it aint bzr, nor pqm. sorry.
[12:53] <SteveA_> ok
[12:54] <lifeless> (sorry, cause if it was, I could fix it)
[12:55] <lifeless> ring me if there is something you need doing
[12:56] <SteveA_> i'm going to sleep now, but i'll try tomorrow
[12:57] <lifeless> ok
[12:57] <lifeless> I'll email the list
[01:04] <SteveA_> ok
[01:10] <lifeless> SteveA_: something has left the db open
[02:22] <sabdfl> lifeless: so, run me through this half-baz, half-bzr idea
[02:23] <sabdfl> should i be able to do:
[02:23] <sabdfl> cd lib
[02:23] <sabdfl> rm -rf zope3
[02:23] <sabdfl> bzr get sftp://wadawada/path/to/zope3/dev zope3
[02:23] <sabdfl> and it will just work?
[02:24] <lifeless> bzr branch sftp://chinstrap.ubuntu.com/home/warthogs/archives/rocketfuel/zope/3.0/test zope3
[02:24] <lifeless> yes
[02:24] <lifeless> or rsync
[02:24] <lifeless> stub: so, postgresql had a stale backend open on launchpad_ftesting :[
[02:24] <stub> Bah. I can't see any daily builds since the broken 20th ones. Which is blocking me. Anyone got some older ones lying around that have baz push?
[02:25] <lifeless> stub: use http://people.ubuntu.com/~robertc/baz2.0/bzrtools-baz2bzr
[02:25] <lifeless> stub: it has the fix
[02:26] <lifeless> uninstall the bzrtools package, mkdir -p ~/.bazaar/plugins;  bzr branch http://people.ubuntu.com/~robertc/baz2.0/bzrtools-baz2bzr ~/.bazaar/plugins/bzrtools
[02:27] <sabdfl> wtf is paramiko?
[02:28] <stub> lifeless: This is for use with breezy bzr?
[02:29] <lifeless> stub: ah. I see whats up
[02:29] <lifeless> sabdfl: paramiko is a sync sftp implementation, its a temporary sftp protocol for us
[02:29] <sabdfl> ok, cool
[02:29] <sabdfl> to be replaced with twisted?
[02:29] <lifeless> stub: you'll need to use jbaileys bzr
[02:29] <lifeless> sabdfl: yes, its looking very much like that.
[02:30] <sabdfl> ok. some reservations from the crowd, i saw
[02:30] <lifeless> martin dived in and played heavily yesterday
[02:30] <lifeless> and rung me up very positive about it
[02:31] <sabdfl> ok. that was the crowd i was thinking of ;-)
[02:31] <lifeless> :)
[02:31] <stub> Async would be cool
[02:31] <stub> * Contacting sftp://chinstrap/.....
[02:31] <stub> * Still waiting....
[02:31] <stub> * Goddamn your network is slow....
[02:31] <stub> * Ooh! An ack!
[02:31] <stub> * ....
[02:31] <lifeless> yes
[02:31] <ajmitch> sounds like my connection right now
[02:31] <lifeless> making the core async is a big step though.
[02:32] <lifeless> so, while its been frustrating having a looooooong conversation about it
[02:32] <lifeless> I think its important that all the key devs have time to experiment, and buy in
[02:33] <lifeless> my format-4 experimental branch was 7 times faster with twisted on http, and I expect similar returns with format 5
[02:34] <sabdfl> wow. 7 times faster for an initial pull, for example?
[02:34] <lifeless> question - if we write code to improve pipelining etc as we use twisted, can we contribute that back to twisted ? They use MIT licencing.
[02:34] <lifeless> yes, 7 times faster
[02:35] <lifeless> my pulls here of bzr.dev took ~12 minutes, down from ~90
[02:36] <sabdfl> what's the merging like in bzr right now?
[02:36] <sabdfl> especially mesh merging?
[02:36] <lifeless> much better than baz, it does not shortcut history
[02:36] <lifeless> not as good as codeville yet, we do not have weave merge in place today.
[02:37] <sabdfl> can we expect fewer surprises in the conflict department?
[02:37] <lifeless> yes
[02:37] <sabdfl> wonderful
[02:39] <Severian_> Howdy, I keep gettting "str: Signature has invalid format" when I try to sign the Code of Conduct.  I searched Malone, but did not find anything.  Any ideas?  My signed document looks good.
[02:40] <lifeless> sabdfl: question - if we write code to improve pipelining etc as we use twisted, can we contribute that back to twisted ? They use MIT licencing.
[02:40] <sabdfl> lifeless: i would rather we focused on features than peformance
[02:41] <lifeless> sabdfl: We are - but there is a balance. Below a certain threshold of performance, we lose folk.
[02:41] <mfuentes> As much as time delays Rosetta in accepting a po file? I'm waiting all day!
[02:42] <lifeless> sabdfl: for instance, we have some big-O scaling issues for big trees (launchpad isn't a big tree), that we need to address, and thats arguably performance
[02:42] <stub> Severian_: I don't think there is anyone around at the moment who can help with that (I think you want cprov of jamesh). I would suggest filing a bug with your signed document attached. I know there are issues with sign-only GPG keys, but apart from that I can't help.
[02:42] <sabdfl> lifeless: yes, but it's not in twisted, is it
[02:43] <lifeless> sabdfl: that one isn't.
[02:43] <Severian_> Thanks, stub.  I'll do that.  I thought I should ask here before submitting a bug.
[02:43] <lifeless> we'll be writing whatever we need in bzr.
[02:43] <lifeless> its just after writing it, some things would be good to feed back
[02:44] <sabdfl> lifeless: i don't think i've often declined that, but you know i prefer defined requests after the fact
[02:44] <lifeless> true
[02:44] <sabdfl> rather than vague open-ended invitations to be nice
[02:44] <sabdfl> do
[02:44] <lifeless> so I will do that when if we have specifics
[02:44] <lifeless> I dont recall you declining ever, as it happens.
[02:44] <sabdfl> rather focus on bzr itself, leverage 3rd party bits as they stand
[02:45] <sabdfl> i've been bitten before by "just a little bit more work on buildbot"
[02:45] <lifeless> will I ever be free of that ?
[02:45] <lifeless> :)
[02:46] <sabdfl> yes
[02:46] <sabdfl> of course :-)
[02:46] <lifeless> so.
[02:46] <lifeless> have you pulled out zope yet ?
[02:46] <lifeless> :)
[02:47] <sabdfl> slinky% du -csh                                                      /tmp/zope3
[02:47] <sabdfl> 33M     .
[02:47] <sabdfl> 33M     total
[02:47] <lifeless> heh, still pulling :0
[02:47] <sabdfl> slinky% du -csh                                ubuntu/launchpad/sourcecode/zope
[02:47] <sabdfl> 56M     .
[02:47] <sabdfl> 56M     total
[02:48] <lifeless> I'm writing some of the bzr things I'm doing as plugins, so they can be easily used while their final location is not decided (they can be used with different banches etc)
[02:49] <lifeless> I presume the same licence as bzr is appropriate? (This is a no-brainer, but checking)
[02:49] <stub> Is there a bzr cache if I need the same remote resource twice, or should I try an minimize remote gets by keeping a local branch of interesting rocketfuel stuff?
[02:49] <lifeless> specifics - email after commit, mirror after commit, switch.
[02:49] <lifeless> stub: there is no cache. but you can say 'bzr branch --basis LOCALBRANCH REMOTEBRANCH
[02:50] <lifeless> stub: which will use localbranch for history, then remotebranch for anything missing. Except its not currently doing that for weaves.
[02:50] <lifeless> stub: so I suggest you use 'bzr branch local-branch new-local-branch; cd new-local-branch; bzr pull --clobber remote-branch'
[02:50] <stub> ok.
[02:52] <sabdfl> lifeless: sure, though, if you find it takes much longer to pluginize...
[02:52] <lifeless> yes, well aware of the tradeoffs
[02:52] <sabdfl> cool
[02:52] <sabdfl> thanks
[02:52] <lifeless> np, and thanks
[02:52] <sabdfl> damn, i'm excited about bzr!
[02:53] <ajmitch> it is looking very nice
[02:53] <lifeless> me too, be nice to get it released, and then really ramp up the supermirror stuff
[02:54] <sabdfl> very high quality design and engineering. it feels really... smooth
[02:55] <sabdfl> interesting. lifeless, the zope3 tree in arch was 56mb. the bzr one is up to 56 before it even builds the working dir
[02:57] <lifeless> sabdfl: this is expected - remember you have a full copy of the tree in your .bzr subdir
[02:58] <sabdfl> ok. so it will be bigger, but faster, cleaner
[02:58] <lifeless> sabdfl: so in arch you have 56mb from source + commit metadata, in bzr you have 56mb from source + commit metadata + history-of-files
[02:58] <lifeless> the lp tree gets smaller because we nuke a bad-O algorithm in the logs
[02:58] <sabdfl> right. and i suppose that as the number of branches and commits goes up, arch became pathological while bzr scales more cleanly
[02:58] <lifeless> right
[02:58] <lifeless> bad-O is bad :)
[02:59] <sabdfl> bzr: ERROR: 'tuple' object has no attribute 'last_revision'
[02:59] <sabdfl>   command: '/usr/bin/bzr' 'viz'
[02:59] <sabdfl>   pwd: /tmp/zope3
[02:59] <sabdfl>   at /usr/lib/python2.4/site-packages/bzrlib/plugins/bzrk/__init__.py line 41, in run()
[03:00] <lifeless> bzrk needs an update :0
[03:01] <sabdfl> 'k. sure it will come tomorrow :-)
[03:01] <sabdfl> night all
[03:01] <lifeless> gnight
[03:07] <stub> Urgh. push uses rsync location syntax, bzr uses URL. 
[03:07] <lifeless> yes
[03:07] <lifeless> that will be fixed soon
[03:08] <lifeless> back in 10
[03:09] <stub> suck that pqm
[03:10] <stub> So I've converted my archive (well - the first half of it) as per the RocketfuelSetup page, made a branch of my converted dists--devel, pulled updates from the bzr rocketfuel/dists/devel, updated the staging config, committed, pushed and now should have a pqm request in the system
[03:12] <stub> I gots me a 'success' email but no detail
[03:16] <lifeless> mailman ate it
[03:17] <lifeless> una momento
[03:19] <lifeless> ok, should have hit the list now
[03:19] <lifeless> dilys needs an update to recognise it
[03:37] <micro_girl> hi everyone
[03:37] <micro_girl> listen, I joined yesterday and I have some questions, can anyone please help me with them?
[03:38] <micro_girl> first, I wanted to know... how do I know if a translation got accepted or not?
[03:41] <stub> 08:41:10~/production $ cm.py build configs/canonical.com/launchpad/production
[03:41] <stub> Traceback (most recent call last):
[03:41] <stub>   File "/usr/bin/cm.py", line 24, in ?
[03:41] <stub>     main(sys.argv)
[03:41] <stub>   File "/usr/lib/python2.4/site-packages/config_manager/__init__.py", line 211, in main
[03:41] <stub>     config.build(os.path.abspath(os.curdir))
[03:41] <stub>   File "/usr/lib/python2.4/site-packages/config_manager/__init__.py", line 57, in build
[03:41] <stub>     entry.build(dir)
[03:41] <stub>   File "/usr/lib/python2.4/site-packages/config_manager/__init__.py", line 102, in build
[03:42] <stub>     import pybaz
[03:42] <stub> ImportError: No module named pybaz
[03:42] <stub> lifeless: Is there a pybaz .deb needing installing that isn't mentioned?
[03:42] <jamesh> lifeless: your test bzr branch went through pending-reviews fine.  It would be good to test a branch that differs from mainline and one with conflicts though.
[03:42] <micro_girl> o_O
[03:43] <micro_girl> can anyone help me, please?
[03:43] <stub> micro_girl: jordi is best for rosetta queries
[03:43] <micro_girl> what's that?
[03:44] <jamesh> jordi is a who rather than a what
[03:44] <stub> A person on this channel. On spanish time so he might not be around yet. Most of the Rosetta people are on Spanish time
[03:44] <micro_girl> o_O is he from Spain?
[03:44] <micro_girl> 'cause I am from Portugal, so the time is not very different...
[03:45] <stub> jordi is in Spain
[03:46] <stub> lifeless: Ahh... i see.
[03:46] <micro_girl> nobody else knows what to answer me?
[03:49] <jamesh> micro_girl: I don't know the answer off hand, no.
[03:49] <lifeless> jamesh: sweet
[03:50] <micro_girl> ok...
[03:50] <micro_girl> I was really wondering about it, I don't have problems in translating lots of stuff, but I wanted to be sure they would use it!
[03:51] <jamesh> lifeless: it took a few goes -- first off the branch was being recognised as a baz branch (the regexp was essentially taking anything with an "@" in it)
[03:51] <jamesh> lifeless: after tightening that up and fixing a few other small issues it went through
[03:52] <lifeless> ok
[03:52] <lifeless> I'll do a trivial change now
[03:52] <lifeless> and we can see what it looks like
[03:52] <jamesh> but some of the code is short circuited if it detects that the branch has been merged, so it would be good to see what happens
[03:53] <lifeless> ok, I have done that and pushed.
[03:53] <lifeless> jamesh: have you changed the 'is merged' test as I described ?
[03:53] <stub> micro_girl: If you don't want to hang around for Jordi or Carlos there is a rosetta-users mailing list you can send your query to
[03:53] <jamesh> no.  I probably missed your description
[03:54] <jamesh> lifeless: what should the test do?
[03:54] <micro_girl> hum, so, where should I mail it to?
[03:54] <jamesh> micro_girl: information on signing up to the mailing list is here: http://lists.ubuntu.com/mailman/listinfo/rosetta-users
[03:55] <lifeless> to see if REMOTE is merged into THIS, 'if remote.last_revision in this.get_ancestry(this.last_revision())'
[03:56] <jamesh> lifeless: that's what it is doing right now, isn't it?
[03:56] <micro_girl> ok, thanks
[03:56] <lifeless> jamesh: the code I wrote did 'if remote.last_revision in this'
[03:56] <jamesh> it grabs the revid of the given revision number, and checks to see if that revision is in the branch in the given directory
[03:57] <lifeless> 'in branch' and 'in ancestry' are different
[03:57] <lifeless> the former is 'can the snapshot be constructed', the latter is 'is it merged'
[03:57] <stub> wah... more unsigned .debs to install over insecure protocols :-(
[03:58] <micro_girl> hum.... I get an error
[03:58] <micro_girl> Technical details of permanent failure:
[03:58] <micro_girl> PERM_FAILURE: SMTP Error (state 9): 501 <rosetta-users@lists.ubuntu.com.>: domain missing or malformed
[03:58] <jamesh> lifeless: the new one does get_rev_id() on the branch to be merged, then get_revision() with that ID on the mainline
[03:58] <lifeless> micro_girl: no trailing dot.
[03:58] <lifeless> jamesh: thats wrong
[03:58] <lifeless> jamesh: rather than get_revision with that id on the mainline, it should do 'in mainline.get_ancestry(mainline.last_revision)'
[03:59] <jamesh> okay
[03:59] <lifeless> erm, in mainline.get_ancestry(mainline.last_revision())
[03:59] <micro_girl> lifeless, what do you mean by that?
[04:00] <lifeless> micro_girl: you have a '.' at the end of lists.ubuntu.com. While its technically valid, it looks like your mail setup rejects it, so just use 'rosetaa-users@lists.ubuntu.com' instead.
[04:00] <lifeless> erm, spelling rosetta correctly of course
[04:00] <lifeless> jamesh: I've pushed a branch with a pending change, care to kick a run off ?
[04:01] <micro_girl> hym, ok...
[04:03] <jamesh> lifeless: will in a sec.
[04:09] <stub> So breezy bzr is good enough for the production systems, and will happily sftp branches from chinstrap and work with cm.py etc.?
[04:10] <stub> lifeless: Unless you want me to defer that until things are more solid
[04:10] <lifeless> stub: we should run bzr from source 
[04:11] <jamesh> lifeless: okay.  it seems to be doing the right thing, but the output is missing some bits
[04:11] <lifeless> for end users, they can use jbaileys packages
[04:11] <jamesh> lifeless: I'll update the script and do a full run
[04:11] <lifeless> but for our systems, we just unpack it and put a symlink to .../bzr on our path
[04:11] <lifeless> stub: there are lots of changes still coming, we will have grief if we do otherwise
[04:12] <stub> ok.
[04:12] <stub> So just config-manager and python-bazaar are the new things needed
[04:12] <lifeless> pycrypto is the only dependency (at the moment) that debs are needed for
[04:12] <stub> and pycrypto
[04:12] <lifeless> pybaz we should get installed via debs I think
[04:12] <lifeless> its quite stable and not churning much
[04:13] <lifeless> config-manager can run from source, or from debs.
[04:13] <lifeless> 0.1p123 in sid works with current bzr
[04:14] <stub> Running stuff from source rather than snapshots means we will end up with inconsistencies between what we are running on staging and what is used for rollouts and updates.
[04:15] <stub> So I think anything that won't need updating weekly can come from a deb
[04:15] <lifeless> ok
[04:15] <lifeless> though I worry it will give us gried
[04:15] <lifeless> *grief*
[04:15] <stub> cm.py from sid rather than the wget url on the wiki?
[04:16] <lifeless> I'd really rather we have a tarball of what we need in source, for production/staging/dogfood and we use that
[04:16] <lifeless> we can update that from rsync 
[04:16] <lifeless> i.e. the /home/warthogs/source subdir
[04:16] <stub> That sounds fine.
[04:16] <stub> We should push it from emperor though
[04:16] <lifeless> yes, cm.py from sid is usable now
[04:16] <lifeless> emperor ? 
[04:17] <stub> It is at the highest point in our attack tree (apart from our laptops)
[04:17] <stub> And any proxy servers and dns server since we are installing unsigned debs :-(
[04:19] <lifeless> uhm
[04:20] <lifeless> ok
[04:20] <lifeless> but I warn you, I'll be getting it onto emperor from chinstrap and people.u.c
[04:21] <stub> the source it is pulling should all be signed
[04:21] <lifeless> what are you trying to guard against? what vector
[04:22] <stub> If I'm pulling a tarball from, say, chinstrap and installing it onto emperor then anyone who can modify that tarball has access to the postgres user on emperor (which is everything important)
[04:24] <lifeless> right
[04:24] <lifeless> so we lock down who can modify that directory
[04:25] <stub> chinstrap is an insecure box, so locking down isn't that meaningful
[04:25] <lifeless> all of our source is stored and considered canonical on chinstrap
[04:25] <lifeless> lock down better bloody be meaningful
[04:25] <lifeless> or we are all already up the poo
[04:25] <stub> stored GPG signed so can't be futzed with I hope
[04:26] <lifeless> its signed by a key ON CHINSTRAP
[04:27] <stub> ok. which makes our whole network a flat security space as insecure as our general access box with lots of accounts with literally hundreds of attack vectors :-(
[04:27] <lifeless> a key that if lockdown works, you, me, elmo and znarl are the only people with access to
[04:27] <lifeless> yes it does
[04:27] <lifeless> I'm not defending that
[04:27] <lifeless> I'm just arguing against false-security sense 
[04:28] <stub> Yup. That makes my life easier anyway. Less pointless bending over backwards.
[04:28] <lifeless> putting this on emperor would not increase security, only increase difficulty.
[04:28] <lifeless> right
[04:34] <stub> Is PQM already sheduled to move to a different box?
[04:37] <stub> I recall someone mentioning a dedicated box for running tests which might go towards solving this too.
[04:37] <lifeless> no, its not
[04:38] <jamesh> lifeless: you've got conflicts! https://chinstrap.ubuntu.com/~jamesh/pending-reviews/
[04:39] <jamesh> (which probably means everything should work correctly now)
[04:42] <lifeless> cool
[04:42] <stub> https://launchpad.net/products/launchpad/+spec/securing-rocketfuel/
[04:43] <lifeless> compomized
[04:44] <stub> thats a technical term
[04:47] <lifeless> AIUI the plan was to move users off chinstrao
[04:47] <lifeless> not to move pqm
[04:50] <stub> ok. We can discuss it at ubz anyway. The Zombie Hordes scenario isn't possible yet.
[09:43] <zyga> morning
[11:01] <sivang> MOrning all
[11:39] <sabdfl> hey stub. so how's thailand treating you?
[11:40] <sabdfl> Keybuk: bzr viz is not liking me right now
[11:40] <sivang> hey sabdfl , how's saturday?
[11:40] <stub> Good enough so far. Been relaxing and enjoying Thai food in the main ;)
[11:40] <sabdfl> Keybuk: bzr: ERROR: 'tuple' object has no attribute 'last_revision'
[11:40] <sabdfl> lucky man
[11:40] <Keybuk> update both
[11:40] <sabdfl> sivang: off to a good start, but rather a lot of work to be done on the spec tracker :-)
[11:40] <Keybuk> there should be a new snapshot of both bzr and bzrk
[11:40] <sabdfl> Keybuk: i did, about an hour ago
[11:41] <sabdfl> from jbailey's daileys
[11:41] <Keybuk> you using jeff's daily snapshots?
[11:41] <sivang> sabdfl: :) 
[11:42] <Keybuk> sabdfl: dpkg-query -W bzr bzrk
[11:43] <Keybuk> hmm, actually, doesn't look like Jeff's packages are really up to date
[11:43] <Keybuk> when ping him when he's up
[11:44] <stub> This push? Lifeless had a new bundle of bzrtools that fixed that error in push for me
[11:45] <stub> in his people.ubuntu.com site somewhere...
[11:45] <lifeless> stub: actually, bzrtools is fixed on jbaileys site
[11:45] <lifeless> stub: but this is bzrk instead
[11:46] <lifeless> so stub, rollout stuff is now running with bzr ?
[11:46] <Keybuk> sabdfl: use http://people.ubuntu.com/~scott/packages/bzrk_0.1+20051022-1_all.deb for now
[11:46] <stub> Havn't got beyond my laptop yet
[11:48] <stub> I'll probably need help on getting bzr et. al. built from source. In particular where all the source trees for bzr, bzrtools, that other thing starting with p...
[11:53] <sabdfl> Keybuk: ah, rocks
[11:54] <lifeless> stub: ok, just ping/sms me
[12:01] <Kinnison> hey dudes
[12:01] <sivang> Kinnison: morning :)
[12:02] <Kinnison> Was I meant to be reviewing something for kiko?
[12:07] <Kinnison> ciao dudes
[12:10] <sivang> sabdfl: does it have anything in common with the katie tool?
[12:28] <lifeless> Keybuk: how did you get logging to shuttup about 'no handlers registered for bzr' ?
[12:29] <stub> lifeless: I need the bzr URLs to the bzr, pybaz, config-manager and pybaz branches that we want to run on the production and staging machines
[12:29] <Keybuk> lifeless: registered a logging handler for it
[12:29] <lifeless> Keybuk: thanks
[12:29] <Keybuk> logging.getLogger("bzr") ... add a handler to it, etc.
[12:30] <stub> lifeless: We might want 'production' branches so we can control when they are updated rather than using head of a dev branch
[12:30] <lifeless> stub: I will make them now.
[12:30] <Keybuk> you can also do logging.basicConfig(), that'll add a root handler which is sufficient
[12:30] <stub> ok
[12:42] <sivang> whois SteveA 
[12:42] <sivang> oops
[12:43] <Keybuk> sivang: only shows if you're on the same server
[12:43] <Keybuk> put the nickname twicw
[12:43] <Keybuk> ie. /whois keybuk keybuk
[12:43] <sivang> ah
[12:43] <sivang> :)
[12:43] <sivang> Keybuk: thanks
[12:43] <Keybuk> the second nick says "whatever server this guy is on"
[12:44] <Keybuk> (actually, the first does, but who's counting <g>)
[12:44] <jamesh> isn't IRC great?
[12:44] <sivang> yeah, I guessed that since this is the first info you get when you give only the first one
[12:44] <sivang> jamesh: ?
[12:45] <ajmitch> Keybuk: it'd be real nice if double-clicking a revision in bzrk brought up the diff window, do you think it'd be useful?
[12:45] <jamesh> sivang: having /whois do different things depending on what server you are on
[12:45] <sivang> yes..
[12:46] <sivang> Keybuk: is this the same way to find out someone's idle time on gimp as well?
[12:46] <sivang> ah right
[12:46] <sivang> it is
[12:50] <Keybuk> ajmitch: diff to which revision?
[12:50] <Keybuk> bzr isn't a changeset-based tool; you have to compare two revisions to get a diff
[12:50] <Keybuk> which is why there's multiple diff buttons where a revision has multiple parents
[12:50] <ajmitch> true
[12:58] <egoleo> Launchpad could not import GPG key, the reason was:.Check if you published it correctly in the global key ring (using gpg --send-keys KEY) and that you add entered the fingerprint correctly (as produced by gpg --fingerprint YOU). Try later or cancel your request.
[12:58] <egoleo> can someon ehelp me out
[01:07] <sabdfl> egoleo: is it a signing-only key?
[01:09] <jamesh> would probably have got an "oops" page if it was a sign-only key
[01:22] <egoleo> is my fingerprint which is given me that error
[01:22] <egoleo> mean while i have it
[01:22] <egoleo> sabdfl
[01:24] <Nafallo> egoleo: have you sent the key to subkeys.pgp.net?
[01:25] <Nafallo> (and waited for it to sync inside canonicals node)
[01:27] <egoleo> yes
[01:27] <egoleo> i have
[01:28] <egoleo> i have done that
[01:28] <egoleo> u can check it even
[01:30] <Nafallo> oddities then
[01:30] <egoleo> search string is what
[01:30] <egoleo> what
[01:33] <jamesh> egoleo: how long ago did you send it?
[01:33] <kiko> hey there
[01:33] <jamesh> egoleo: and what is the fingerprint?
[01:34] <jamesh> hi kiko
[01:34] <kiko> how's it going james?
[01:34] <kiko> managed to change your flight?
[01:34] <jamesh> yeah
[01:34] <jamesh> one less stopover on the way there too
[01:34] <egoleo> yesterday
[01:35] <egoleo> 578A 9920 F14C 2474 E126  4EEC 8156 5CE7 1445 0D1B
[01:35] <egoleo> that is the fingerprint
[01:36] <jamesh> http://keyserver.ubuntu.com:11371/pks/lookup?op=get&search=0x578A9920F14C2474E1264EEC81565CE714450D1B <- our keyserver has the key, so it isn't a problem of propagation
[01:37] <jamesh> might be bug 3052
[01:37] <Ubugtu> Malone bug #3052: GPG upload of newly-changed key fails because we cache the old key Fix req. for: launchpad (upstream), Severity: Normal, Assigned to: Nobody, Status: New http://launchpad.net/malone/bugs/3052
[01:38] <egoleo> so whats worng with my fingerprint
[01:38] <jamesh> egoleo: this might be a bug in the Launchpad code
[01:39] <egoleo> ok
[01:39] <egoleo> so how do i get myself in now
[01:40] <jamesh> actually, it wouldn't be 3052 -- that's only for cases where the version in the keyserver gets updated; not when it didn't exist before
[01:40] <egoleo> so what then
[01:49] <lorenzod> egoleo, maybe file a bug?
[01:51] <egoleo> at where
[01:52] <jamesh> egoleo: the problem is that your key won't be valid for another 2 years
[01:52] <jamesh> so it can't be importyed
[01:53] <jamesh> http://keyserver.ubuntu.com:11371/pks/lookup?op=vindex&search=0x578A9920F14C2474E1264EEC81565CE714450D1B <- lists it as being generated in 2006-10-21
[01:54] <jamesh> egoleo: I'd recommend revoking the key, checking your computer's clock and generate a new one
[01:54] <lorenzod> jamesh, that's another 1 year, or?
[01:55] <jamesh> lorenzod: my mistake.  It's 1 year off :)
[01:55] <lorenzod> jamesh: thank god, I was worried for a while :)
[01:55] <jamesh> lorenzod: I'm just living in the past
[01:56] <egoleo> what?
[01:57] <lorenzod> egoleo, your key starts becoming effective a year from now.
[01:57] <lorenzod> until then, it's invalid.
[01:58] <egoleo> why that
[01:58] <egoleo> so how do i revoke it
[01:58] <egoleo> and create new one
[01:59] <jamesh> egoleo: check your computer's clock: it probably thinks that it is 2006
[02:00] <jamesh> egoleo: to revoke the current key, run "gpg --gen-revoke 578A9920F14C2474E1264EEC81565CE714450D1B "
[02:00] <jamesh> and follow the prompts
[02:01] <jamesh> import the PGP lump into your keyring (which will revoke it locally), then upload your key to the keyserver with --send-key
[02:02] <egoleo> thnx
[02:02] <egoleo> changing the date
[02:02] <egoleo> now
[02:02] <egoleo> ok
[02:06] <egoleo> what is the revocation certificate
[02:09] <zyga> egoleo: it is something that can invalidate a key
[02:09] <zyga> egoleo: and optinally provide a message and a reason
[02:09] <egoleo> ok
[02:09] <zyga> egoleo: like, my laptop was stolen the key is now invalid
[02:10] <egoleo> ok
[02:11] <egoleo> thnx
[02:13] <egoleo> jamesh
[02:14] <egoleo> i have finsih with that
[02:14] <egoleo> so what next
[02:17] <egoleo> gpg --gen-key
[02:17] <egoleo> i should start with that?
[02:22] <kiko> ys
[04:36] <sabdfl> kiko: did you get my responses to your mail?
[04:36] <sabdfl> anybody know how to make a list spacing tighter?
[04:38] <sivang> sabdfl: have you thought about a deadline for suggesting more BOFs? (want to know in order to plan)
[04:38] <sabdfl> sivang: yes
[04:38] <sabdfl> mail on monday
[04:38] <sabdfl> 27th is the deadline
[04:38] <sivang> sabdfl: ok, cool that's plenty of time :)
[04:44] <sivang> sabdfl: maybe you want to wrap the list inside a table, and then define really small cell spacing/padding ?
[04:45] <zyga> gah!
[04:45] <jamesh> sabdfl: most of the text on Launchpad is using a 1.5em line height, which is probably why things are spaced as they are
[04:45] <zyga> tables as lists strike again!
[04:46] <sabdfl> thanks jamesh, am trying to figure out how to change that for lists-in-portlets, where it currently looks v crap
[04:47] <jamesh> sabdfl: ah.  the ".portlet li" CSS rule has margin-bottom: 0.5em
[04:47] <jamesh> DOM inspector is really useful for tracking these things down
[04:50] <sabdfl> jamesh: how do i use dom inspector?
[04:51] <jamesh> sabdfl: install firefox-dom-inspector, then go to a web page and type ctrl+shift+i
[04:51] <jamesh> the first icon on the toolbar lets you pick an element (in the original firefox window)
[04:52] <jamesh> if you click the icon in the top left of the second pane, you can switch it to "CSS Style Rules"
[04:52] <jamesh> and it will tell you which rules were matched, let you edit rules, etc
[04:59] <sabdfl> now. wtf did mpt add that?
[04:59] <sabdfl> jamesh: thanks very much, that's going to save me hours
[05:17] <kiko> sabdfl, yes, I got your replies, but I need think through your answers
[05:21] <uriel> is there any way to see which groups I'm member of?
[05:22] <sabdfl> uriel: your home page
[05:22] <uriel> (also, the "packages" link in my home page doesn't show anything even when I have registered two projects)
[05:22] <uriel> sabdfl: humm... that is where I was looking, probably not carefully enough :)
[05:22] <jamesh> uriel: packages aren't projects
[05:23] <uriel> sabdfl: ok, I'm blind, sorry
[05:23] <sabdfl> uriel: /people/  <--- start there
[05:23] <sabdfl> or just log in, then click on your name in the top right corner of any page
[05:23] <uriel> yes, I see now better :)
[05:23] <uriel> jamesh: ok, but how can I see what projects/products I'm part of?
[05:24] <kiko-fud> uriel, not at the moment. there's a bug filed on it though.
[05:24] <uriel> kiko-fud: ah, thanks :)
[05:25] <uriel> sorry, I'm a bit confused by the UI and still geting used to the launchpad concepts, I will shut up now :)
[05:25] <jamesh> uriel: the basics are that packages are things that distributions contain, which are created from upstream products
[05:26] <jamesh> uriel: collections of products can be grouped into projects
[05:27] <uriel> jamesh: ah, that clens up the relationship between 'products' and 'projects' a bit for me, thanks
[05:28] <uriel> a link to /projects/ and /products/ in the front page would be handy..
[05:29] <sivang> uriel: hi 
[05:30] <uriel> hi sivang 
[05:30] <sivang> uriel: what was the product that you registered against launchpad?
[05:30] <uriel> wmii and py9p
[05:31] <sivang> uriel: k, thanks
[05:32] <uriel> it's being part of a 'project' required for anything? 
[05:33] <sabdfl> uriel: it can let you set translation permissions etc on a whole bunch of products
[05:34] <sabdfl> in time it will be a nice way to display aggregated information across a bunch of products
[05:34] <sabdfl> so, bugs in all different launchpad products (rosetta, malone, etc)
[05:34] <sabdfl> for example
[05:35] <uriel> sabdfl: oh, I see, yes, it would be handy when you have more users and projects..
[05:35] <sabdfl> right
[05:35] <sabdfl> add a product and voila you have translators and permissions all configured already
[05:35] <sabdfl> but that part of the system is not very well exercised right now
[05:36] <uriel> only problem I see right now is that the terminology is a bit confusing, in particular "produduct", but I guess that is mostly a UI issue
[05:38] <sivang> uriel: grouping together products may be of help to you when you have several ones that play together to achive a higher goal, like the bits and pieces that construct on OS for example :)
[05:38] <sabdfl> SteveA: hmm... navigation question for you
[05:38] <sivang> uriel: so then you can track for example, all the bugs/translation/[..]  work that still need be done in order to satisfy the higher level goal. (of the project)
[05:38] <uriel> sivang: yes, makes sense
[05:39] <sabdfl> sivang: an example would be launchpad. we have the launchpad product, and rosetta, and malone, and the spec tracker...
[05:39] <sivang> sabdfl: Ubuntu as well :-) Although there are many more bits and pieces there
[05:39] <sabdfl> another example would be mozilla. they have gecko and necko and firefox and mozilla-app-suite...
[05:39] <sivang> right
[05:39] <sabdfl> sivang: we model distros directly
[05:39] <sabdfl>  /distros/
[05:39] <uriel> sivang: maybe it would be simpler to have a single conceputal entity "project" which can be nested(eg., sub-projects), but maybe that would just make things more complex in the end
[05:39] <sivang> sabdfl: ah right ;-)
[05:41] <sivang> sabdfl: hence the switch over from products/ubuntu to distros/ubuntu 
[05:43] <sabdfl> HIDEAWAY YOURSELF  FROM ALL MESS     What's  about a few days in   Thailand  ?If you are planning to spend a  vacation, and if   thailand   is one of your destination.     If You  are looking to be somewhere just to hideaway yourself from all mess,    allresortthailand.com  is pround to be   one of your choice to find a  place.
[05:43] <sabdfl> ^^ spam i just received
[05:43] <sabdfl> now we know what stub is doing in thailand
[05:45] <sivang> LOL
[05:49] <uriel> enjoying some bird-flu-chicken... now that will really hide you permanently from any mess
[05:50] <uriel> hummm.. the way the Title field in releases work is a bit strange, in the main page it's listed under "codename" but it always append the series name before it and then adds quotes around what one has set as title and around the whole string..
[05:52] <uriel> bug or feature? 
[05:55] <jamesh> australia has banned importing of live birds from Canada because of bird flu
[05:55] <jamesh> the canadians deny any problem
[05:57] <uriel> from canada? I thought they only had mad cows over there..
[05:57] <zyga> uriel: nah
[05:57] <zyga> uriel: the world just got better
[05:57] <zyga> apart from mad cows we have deadly birds and other cheerful flock :)
[05:58] <uriel> but no human zombies roaming in in the streets :(  oh, wait, we already have that... 
[06:00] <uriel> having to fill a version, title, summary, description, and changelog gets a bit tedious...
[06:06] <kiko-fud> man
[06:06] <kiko-fud> why is PQM such a piece of @#@!$@@!#
[06:08] <sivang> uriel: where are you from?
[06:09] <uriel> sivang: I'm from spain, living in Sweden at the moment, hopefully not for long, want to move to germany or canada
[06:09] <sivang> uriel: spain? cool! Btw you have a very israeli name :)
[06:10] <kiko-fud> afaik it's a common name in .sp
[06:10] <uriel> sivang: well, I don't think it's israeli, just that it's only pupular there AFAIK, never meet anyone with the same name, but I have heard it's quite common in Israel, yes
[06:10] <kiko-fud> err
[06:10] <kiko-fud> .es
[06:10] <sivang> uriel: sorry, not israeli, but hebrew sounding :)
[06:11] <uriel> kiko: don't think so, i lived in Spain for many years, and never heard of anyone called Uriel
[06:11] <Keybuk> sivang: uriel was the angel of fire, was it not?
[06:11] <sivang> kiko: actually, I came to know that many spanish people have hebrew sounding names. Like Mirial, Gabriel etc 
[06:11] <sivang> Keybuk: IIRC 
[06:11] <sivang> uriel: I have 3 freinds by that name :)
[06:11] <kiko> uriel, I have met 3 people named uriel in spain.
[06:11] <sivang> s/Mirial/Miriam/
[06:12] <uriel> sivang: it's an archangel, like Gabriel, Miguel and Rafael(IIRC), but it's apocriphous, that is why it's not very popular in xtian countries I guess
[06:12] <uriel> kiko: are you sure? that sounds very strange, sure you don't mean "Oriol"(which can sound similar) which is popular in Catalonia
[06:13] <kiko> nope
[06:13] <uriel> barcelona is a nice city
[06:13] <uriel> kiko: really strange then...
[06:14] <uriel> kiko: where are you from? and where did you meet such people, I never even heard of anyone called Uriel :)
[06:15] <uriel> Keybuk: yes, archangel actually
[06:15] <kiko> uriel, I'm from brazil. It's not a common name here, but IIRC I met one Uriel last year in Matar!
[06:16] <sivang> sabdfl: can I rename a spec's name after it was registered in spec tracker?
[06:16] <sivang> sabdfl: (referring to its launchpad-dashed-name)
[06:16] <uriel> kiko: most strange... oh well, I dont' know many people, so maybe its' that :)
[06:16] <sabdfl> sivang: no, but i can
[06:16] <kiko> heh
[06:17] <sivang> sabdfl: you the DBA for it? :)
[06:17] <sabdfl> it will take a little while to get the permissions all fixed up
[06:17] <sabdfl> no, there's an admin page that allows for renaming
[06:17] <sabdfl> i don't see any problem with letting people rename it
[06:17] <sivang> sabdfl: ah, does it depend on my key getting signed?
[06:17] <sabdfl> no
[06:17] <sivang> ok
[06:18] <sabdfl> i think the person who registered it would be able to do this
[06:18] <uriel> any chance that "Upstream Source Import" would allow plain source tarballs?
[06:18] <sivang> then I should talk to mdz then
[06:18] <sabdfl> uriel: the point there is to map cvs or svn into bzr
[06:18] <sabdfl> sivang: i can do it too, launchpad admins can rename most things
[06:19] <sabdfl> which spec, and what name do you want?
[06:19] <uriel> sabdfl: yes, there are many projects that don't even use a revision control system(or the one they use is not baz/svn/cvs)
[06:20] <sabdfl> uriel: then yes, we have a way to support those, as long as they may well-named releases
[06:20] <uriel> maybe Iw ill just create a bazaar branch out of it by hand, no big deal
[06:20] <sabdfl> uriel: use bzr (bazaar 2.0) from www.bazaar-ng.org
[06:20] <uriel> sabdfl: what is 'well-named releases"? :)
[06:20] <sabdfl> all of launchpad is being converted to use that
[06:20] <sabdfl> uriel: like foo 1.2.3, foo 1.2.4
[06:21] <sabdfl> you can say "here is the dir for foo, here is the glob for foo 1.2" and then it should work
[06:21] <sivang> sabdfl: in a sec, I'd like your feedback on it before acutally doing it
[06:21] <uriel> hmmm.. how good is bzr's backwards compati with baz? I'm using baz for various projects at the moment(specially at work) and I'm not sure I can migrate everything at once
[06:21] <sabdfl> uriel: ask Keybuk
[06:21] <sabdfl> uriel: there is a converter
[06:21] <uriel> oh, cool
[06:21] <sabdfl> bzr is much faster, cleaner, i think it will storm the rcs world :-)
[06:22] <uriel> ah, and I think I did the glob thing already, that is done in "Release Series" right?
[06:22] <sabdfl> uriel: yes
[06:22] <sabdfl> i think with a bit of luck that could be all you need
[06:22] <sabdfl> but check with keybuk
[06:23] <uriel> well, I have used tla(ugh... tom is smart too much an nut case), baz, git and darcs, and I'm not completely happy with any of them(no comment about svn, what an abomination)
[06:24] <uriel> sabdfl: thanks, will do
[06:24] <Keybuk> you can do a one-time conversion of your archives from baz to bzr
[06:24] <sabdfl> uriel: you will like bzr
[06:24] <uriel> Keybuk: my problem is that I probably need to stay backwards compatible, I have enough trouble having people at work switch to baz cvs(yes, they are stupid)
[06:24] <sabdfl> Keybuk: one-time in the sense that having got them to bzr you go "OH MY GOD THAT IS WONDERFUL" and never want to touch baz again?
[06:25] <Keybuk> pretty much
[06:25] <Keybuk> uriel: baz can't read bzr archives, and vice-versa
[06:25] <uriel> sabdfl: we will see, I was very disapointed to hear from lifeless that bzr uses XML in it's archive format
[06:25] <Keybuk> what's wrong with XML?
[06:25] <uriel> Keybuk: ok, cool
[06:25] <sabdfl> i must say i nearly danced around the house after playing with the zope-in-bzr test
[06:25] <uriel> Keybuk: what is right with XML? :)
[06:26] <Keybuk> uriel: it's a fairly easy to construct and parse file format that you can find bindings for in just about every language
[06:26] <Keybuk> and humans can read/write it too
[06:26] <sabdfl> uriel: it's a very simple usage, and solves a lot of issues w.r.t. unicode etc that Just Work
[06:26] <sabdfl> there's no real complex data in there
[06:26] <uriel> Keybuk: easy to parse? ugh? and humans can read it? ugh?
[06:26] <uriel> sabdfl: just UTF-8 plain text files work just fine
[06:26] <Keybuk> utf-8 plain text files don't have structure
[06:26] <sabdfl> uriel: you still need to delineate structure
[06:26] <sabdfl> for example
[06:27] <uriel> Keybuk: you are suposed to provide that ;)
[06:27] <Keybuk> so if you want to write a parser, you have to figure it out
[06:27] <sabdfl>  /home/foobar.txt id id 3442-342-422
[06:27] <uriel> most of the time key=val works well enough, and awk and sed parse it very well :)
[06:27] <sabdfl> imagine the filename is actually "foobar.txt id"
[06:28] <uriel> there are various ways you can do that, eg make the file name the last field(allowing \n in file names is not very good idea)
[06:28] <sabdfl> with xml the structure is there, and as long as you are sensible and resist the temptation to add all sorts of crack, its just fire and forget
[06:28] <sabdfl> last field?
[06:28] <uriel> or you can use a very simple quoting scheme
[06:28] <Keybuk> uriel: \n is an allowed character in filenames :p
[06:28] <sabdfl> until you want to add more fields :-)
[06:28] <sabdfl> and what keybuk said :-)
[06:28] <Keybuk> \0 is the only character you can absolutely guarantee isn't in a filename
[06:29] <Keybuk> and now you've just lost your plain text format and turned it into a binary format
[06:29] <uriel> sabdfl: well, you can use groups of fields, one per line, it all depends on what data you want 
[06:29] <uriel> Keybuk: and /
[06:29] <sabdfl> and how do you deal with \n?
[06:29] <Keybuk> unless you come up with a quoting scheme, and then the "learning to write a parser" cost goes through the roof
[06:29] <sabdfl> escaping!
[06:29] <sabdfl> and then... you end up with TLA
[06:29] <uriel> Keybuk: and are you really sure you want to allow people have \n in file names?
[06:29] <Keybuk> uriel: unix allows it, so bzr shouldn't stop you
[06:29] <Keybuk> "sorry, you can't name a filename foo"
[06:29] <Keybuk> that's the kind of thing tla used to do
[06:29] <sabdfl> uriel: are you really sure you want to write a version control system that can't version control any unix file?
[06:30] <uriel> Keybuk: yes, unix allows it, but lots of things will break.. 
[06:30] <Keybuk> "nope, you can't commit if you *gasp* have a core file in your tree"
[06:30] <sabdfl> uriel: bzr won't
[06:30] <sabdfl> anyhow
[06:30] <sabdfl> try it
[06:30] <sabdfl> it's very, very tasteful
[06:30] <uriel> I still there are many better ways to do it than XML
[06:30] <Keybuk> uriel: once you realise you need to store a tree of properties for filenames, you end up with a lot of parsing problems
[06:31] <uriel> and there are reasonable middle ground between the tla insanity and "anything is allowed"
[06:31] <sabdfl> apt-get install bzr; cd ~/mytexts/; bzr init; bzr info
[06:31] <Keybuk> and at that point, it's far easier just to pick a standard file format
[06:31] <sabdfl> anyhow, <--- #bzr
[06:31] <uriel> sabdfl: yes, I completely agree that should just work
[06:36] <SteveA_> hi
[06:37] <sivang> Hi SteveA_ 
[06:44] <sivang> phew.
[06:45] <sivang> brainstorming is intense, but fun :)
[06:45] <SteveA_> arse... looks like pqm is kinda hung again
[06:46] <sivang> sabdfl: inspired by mdz's proposel for policy decision archiving, I rolled https://wiki.launchpad.canonical.com/DistroPolicyTracker, so basically I want to change the spec name of https://launchpad.net/distros/ubuntu/+spec/archiving-policy-decisions , to +spec/distro-policy-tracker
[06:47] <mdz> sivang: you cannot change the name of a spec presently.  just change the URL if you have started writing a spec
[06:48] <sabdfl> sounds good. mdz, +admin on the spec should work if you registered it, or if you are launchpad.Admin
[06:48] <sabdfl> i will change it now
[06:48] <sivang> sabdfl: thanks :)
[06:48] <sabdfl> done
[06:48] <sabdfl> hey mdz
[06:48] <mdz> sabdfl: morning
[06:49] <sabdfl> i wish. the day has rather disappeared, and all i'm left with is a mockup of the spec filtering UI :-)
[06:49] <mdz> that's the most appropriate greeting I can manage on <4 hours' sleep
[06:50] <mdz> sabdfl: good to know about +admin; there are a few other specs I noted as needing to be renamed
[06:53] <sivang> oh, I can't change a spec that's been registered by someone else then myself ?
[06:53] <sivang> (tryin to edit text on that same spec)
[06:53] <sabdfl> sivang: we don't have a way to track changes, so we have not allowed "wiki mode"
[06:54] <sivang> sabdfl: ah ok
[06:54] <sabdfl> though, in general, i think we should let people edit anything except priority
[06:54] <sivang> understood
[06:55] <mdz> sivang: speaking of which, until we get the defaults set up appropriately, please set any new specs to wishlist and set them to be reviewed by me
[06:55] <sivang> I see, well, if tracking changes will be implemented it would probably worthwhile to enable it to rollback transactions, such that if someone spams something, there will be a way to go back...but that's probably future future plans
[06:56] <sivang> mdz: ah ok, sorry. I thought there was other "magical" way for someone to review them, even if you don't explicitly request review
[06:56] <mdz> sivang: the "magical" way is that I notice new specs in the list and manually review them
[06:56] <sivang> mdz: ok, can you tag reviewd specs as such?
[06:57] <mdz> any spec proposal which has been successfully reviewed will have my name attached to it somewhere
[06:57] <mdz> there is also the matter of which specs are associated with ubz
[06:57] <sivang> ok, cool. works for me
[06:59] <sivang> ah, well, there's a problem here. On all the ones I registered, I "Add to meeting"'d so they are all there IIRC. (JaneW added them, so I was sure they were of interest an thus approved but not announced
[06:59] <sivang> )
[07:01] <sivang> there = on the wiki
[07:28] <sabdfl> oh now
[07:28] <sabdfl> i've just found a case where a FooSubSet looks like a good idea
[07:28] <sabdfl> oh now
[07:29] <sivang> now=no? :)
[07:29] <sabdfl> yes
[07:33] <gualteri> hi, there's a way to contribute other translations than .po files?
[07:33] <sabdfl> sivang: we went through a phase where we kept creating "sets" of things
[07:33] <sabdfl> everything was a friggen set
[07:33] <sabdfl> and i got sick of it so i have been cleaning them out left, rght and center
[07:33] <sabdfl> because they were not needed
[07:33] <sabdfl> and now...
[07:34] <sivang> I see
[07:34] <sivang> :-/
[07:34] <sivang> ouch
[07:34] <sabdfl> i just found a place i want a SpecificationSet
[07:34] <sivang> like set of specs that relate to to the same feature?
[07:34] <sabdfl> no
[07:34] <sabdfl> the set of specs for a particular thing, subject to filters
[07:35] <gualteri> i mean some way to contribute thinks like user guides in other formats?
[07:40] <sivang> gualteri: IIRC there are plans to support other formas, as noted in https://wiki.launchpad.canonical.com/RosettaXLIFFSupport , however I think that for now it is mostly based on POs? Anyone can shed more light on this?
[07:42] <sivang> jbailey: how is the ubuntu documentation currently imported into rosetta? 
[07:43] <SteveA_> sabdfl: please call it a SpecificationSubset, not a SpecificationSet
[07:43] <SteveA_> that way, it is clear that not all specifications are available from there
[07:43] <SteveA_> or, a SpecificationCollection
[07:43] <SteveA_> or something that doesn't confuse it with a ContentSet as an entry-point into the database stuff 
[07:45] <sabdfl> hey stevea
[07:45] <sabdfl> ok, i'm trying hard to avoid it altogether
[07:45] <sabdfl> it makes everything else so ugly
[07:45] <SteveA_> yeha
[07:45] <SteveA_> yeah
[07:45] <sabdfl> but... here's the drill
[07:46] <sabdfl> i'm tyring to come up with this super-slick UI for filtering the spec list
[07:46] <SteveA_> i think there's a place for a browser-level 'filter' object
[07:46] <SteveA_> that is part of this filtering ui concept
[07:46] <SteveA_> rather than a database-level 'set'
[07:46] <sabdfl> but here's the issue
[07:47] <sabdfl> i want to express this filter through a series of portlets
[07:47] <sabdfl> for grouping, filtering, sorting, etc
[07:47] <sabdfl> make sense?
[07:47] <sabdfl> each portlet will invoke a new View class
[07:47] <SteveA_> portlets?  nope, lost track at that point...
[07:47] <sabdfl> ok, imagine the screen, with a loooong list of specs
[07:47] <SteveA_> k
[07:47] <sabdfl> you want to filter down
[07:48] <sabdfl> so you want to be able to click in one place to see only the specs that are pending approval, say
[07:48] <sabdfl> or, you want with a single click to sort by priority, rather than status
[07:48] <SteveA_> a bit like a canned query
[07:48] <SteveA_> but integrated into the ui
[07:48] <sabdfl> well, remember that example i showed you?
[07:48] <sabdfl> its not a canned query
[07:49] <sabdfl> the query is built up through a succession of clicks
[07:49] <SteveA_> right
[07:49] <sabdfl> at that point it can be bookmarked
[07:49] <sabdfl> and there ARE a set of canned queries, i call them "Default Views" or "Standard Views"
[07:49] <SteveA_> but, i guess, you can go from a canned query and modify it
[07:49] <SteveA_> to make a bespoke one
[07:49] <SteveA_> by clicking
[07:51] <sabdfl> https://wiki.launchpad.canonical.com/MarkShuttleworth
[07:51] <sabdfl> screenshot ^^^
[07:52] <sabdfl> don't get excited, its all just mockup, there's no code behind it
[07:52] <SteveA_> ok
[07:52] <SteveA_> i get the idea
[07:53] <jbailey> sivang-fud: No idea, sorry
[07:53] <sabdfl> SteveA_: there are some extreme trickinesses, though
[07:53] <jbailey> sivang-fud: One of the docteam folks arranged the import.  I only did the export.
[07:53] <sabdfl> like, to show the "current" ones you actually want a SET OF STATUSES not status > foo
[07:54] <sabdfl> sortorder of dbschemas gets very tricky
[07:54] <SteveA_> it's hard to change later too
[07:54] <gualteri> sivang: thanks, but I was looking for something in the direction of general documentation/guide not only translations of program strings
[07:57] <SteveA_> sabdfl: we can add a feature to dbschema to do schema-specific sorting of items.
[07:58] <SteveA_> sabdfl: that is, specify in the dbschema class how it is to be sorted, independently of what int values it may have.
[07:59] <SteveA_> anyway, we can talk about this with code / whiteboard on tuesday if there are any issues left for you by then.
[07:59] <sabdfl> sure
[07:59] <sabdfl> the thing that grates me with SubSet's is that your context item has changed
[07:59] <sabdfl> its like /people/<team>/+members
[07:59] <SteveA_> yeah, that's one problem
[07:59] <sabdfl> that page is horrible
[08:00] <SteveA_> also, there's been a problem with keeping state in these things, in the past
[08:00] <SteveA_> we need to get state in every request, or explicitly keep the state in the session
[08:00] <sabdfl> DOH!
[08:00] <sabdfl> hmm... i think i have a cunning plan
[08:01] <SteveA_> session?
[08:02] <sabdfl> SteveA_: http://localhost:8086/people/admins/+members
[08:02] <sabdfl> see how it's lost all its facets?
[08:16] <mfuentes> How I can add a new Translation for a software on the Launchpad/Rosseta?? (Spanich (Chile) (es_CL) on SchoolTool)
[08:16] <mfuentes> %s/Spanich/Spanish
[09:55] <sivang> SteveA_: how do you do UI mockups ? (ones like what sabdfl did)
[11:02] <SteveA_> sivang: you make a web page, using the launchpad CSS files, using the launchpad styles, but it is written in html
[11:02] <SteveA_> then you make a screenshop, maybe crop it in gimp
[11:35] <sivang> SteveA_: I see.
[11:51] <sivang> SteveA_: good night