/srv/irclogs.ubuntu.com/2008/09/02/#bzr.txt

=== poolie is now known as pooliex
jmlis this the one causing all the oopses?00:12
mwhudsonno00:14
edencaneHi.00:17
edencanesomeone sent me a diff file to apply to my tree...00:17
edencanethey said use the 'patch' command, however there is no patch command in 1.600:18
wgrantedencane: The patch command is part of bzrtools.00:18
lifelesspooliex: sorry, was in the zonr00:19
edencaneok... (-:00:19
edencanethanks wgrant00:19
pooliexmwhudson, i'm going to look at #261315 today00:32
pooliexlifeless, np00:32
mwhudsonpooliex: cool00:36
jelmerhah, pushing the exact same branch from scratch over both bzr+ssh and svn+ssh to the same server is faster over svn+ssh now >-)00:38
jelmerthe difference is not very big, and the bzr server side is running bzr 1.0 (bzr.dev on the client)00:39
lifelessspiv: how did you go with streams?00:43
* jml submits a patch00:50
lifelessclassic - http://steve-yegge.blogspot.com/2008/08/business-requirements-are-bullshit.html?showComment=1218561660000#c571339268347815308300:55
warren hmmm, does bzr have anything like git where you can export checkins as diff files with metadata?00:58
pooliewarren, 'bzr help send'00:58
jmlpoolie: hello00:59
abentleypoolie: wb00:59
pooliewe had it first i think00:59
warrenthx00:59
jmlpoolie: welcome back.00:59
pooliethanks, both of you00:59
warrenthx01:03
poolielifeless: hi01:07
poolienice rant if somewhat longwinded01:07
lifelessho01:07
poolieis the comment directed at me though?01:07
lifelesspoolie: no01:07
lifelesspoolie: but it did make me smile01:07
pooliei would say the main article is somewhat in the category of 'intentionally misconstruing the question'01:08
teratornanyone know of a way to interactively tweak where 'bzr shelve' decides to place hunk boundaries?01:15
teratornquite often I need to break up the changeset differently :/01:15
jmlteratorn: I think shelve gets it from diff.01:16
teratornyou're probably right01:18
teratornone day when I'm rich I'm gonna hire someone to follow me around on IRC and implement all the stuff I complain about01:18
Hydrogenyou jus gotta complain to the right people!01:21
teratorncomplaining is hard work01:21
lifelessabentley: ping01:21
lifelessabentley: I want hunk-editing and stuff in bzr core01:22
lifelessabentley: what do you think of the shelf editor code - is it lovely, and what you'd build for bzr core, or should I take the concepts and write something new?01:22
abentleylifeless: I've never had much need to look at the shelf editor code.  So it must be good.01:23
teratornwhat is this shelf editor code of which you speak?01:24
abentley(Originally written Michael Ellerman.  I just maintain it.)01:24
lifelessabentley: I poked at it, I found it a little obstruse, but not terribly so; I don't know if it will scale to hunk splitting and so on, which I do want us to get to.01:24
lifelessteratorn: its the hunk selector in 'bzr shelve'01:24
lifelessteratorn: bzr shelve's hunks are those output by 'bzr diff'01:25
teratorn*nod*01:26
teratornyeah that would be way cool01:26
abentleylifeless: I've always figured that sub-hunk territory was best handled in an editor.01:26
lifelessabentley: so fire up an editor with some markers, perhaps the basis & current text seperate, let them edit till it has what they want,then use that to do a new diff and shuffle stuff ?01:28
teratornbasically all you need to do is to be able to split the hunks01:28
teratorna simple line editor that lets you add some "<<<<<" markers, or something01:28
teratornand move them around.. up or down01:28
abentleylifeless: Currently, for that purpose, I stop using shelve, and start using bzr vimdiff01:28
jampoolie, spiv: Good to have you guys back. Today is "Labor Day" in the US.01:30
lifelessabentley: I'm sneaking up on tree marks. I want something that doesn't need specific things like vimdiff that may not be readily available for some users, or which will not bind well for IDE's and GUI's.01:30
abentleypoolie, spiv, jam: In Canada, today is "Labour Day" ;-)01:35
jamabentley: I guess that means u work harder01:36
abentleyjam: lol01:36
lifelessabentley: I guess I'll send a mail to the list about hunk editing/selection. Using a callback may be the right interface.01:37
jamit seems like you could evolve the "shelve" interface if you really wanted to go that route01:38
jamjust have a "split hunk" option01:38
jamthough I agree, vimdiff (or an editor) is probably a more comfortable ui for it01:39
jamanyway, I'm only just walking by, back to family time01:39
jamoh, and poolie, spiv, igc, lifeless, abentley, vila, beuno, jelmer, LarstiQ, fullermd, etc, etc.... Feature freeze is tomorrow, so I encourage you to do some reviewing01:40
pooliejam, oh, right01:41
pooliere Labo[u]r Day01:41
lifelessabentley: the other thing we should discuss - rich-root; *I* thought it was waiting on a patch from you, you're saying its blocked on me. Lets sync01:43
lifelessoh damn01:43
fullermdReviewing?  You must have me confused with somebody who knows what they're doing   :p01:46
rockyjelmer: best version of bzr to use with TracBzr is 1.5 ?01:56
jelmerrocky, probably01:56
rockyjelmer: does TracBzr support trac 0.11 ?01:56
jelmerrocky, yeah01:57
rockylatest release of TracBzr or do i need to grab a branch?01:57
jelmerrocky, there are no releases, you'll have to grab a branch02:09
rockyjust grabbed trunk02:09
lifelessjam: why does branch.get_revno_map use the old graph abstraction?02:12
rockyjelmer: any particular reason you haven't merged over the trac0.11 branch into trunk?02:14
jelmerrocky, it is merged into trunk02:15
rockyoh... sorry i'm still getting familiar with launchpad's very very complicated interface02:15
rockyseemed to indicate it hadn't been merged02:15
rockyhttps://code.launchpad.net/~trac-bzr-team/trac-bzr/trunk/+merges seems to show it hasn't been merged02:16
jelmerrocky: I'm not the maintainer of trac-bzr btw, I do the occasional merge when I need it myself though02:16
rockyoh gotcha02:16
jelmerrocky, since nobody appears to be particularly looking after it these days02:16
rockyi might be interested in helping ... particularly if i integrate it with cluemapper02:16
jelmerah, cool02:16
=== mw is now known as mw|out
=== Snaury__ is now known as Snaury
jamlifeless: because merge_sort doesn't allow ghosts02:33
poolielifeless: please use more contentful subject lines than 'review feedback' thx02:34
Hydrogenyes02:35
Hydrogenlike02:35
lifelesspoolie: please patch bzr send to give me more contentful subject lines!02:36
Hydrogendu du du02:36
poolielifeless: is this the bug about not being able to override the subject line if you use the builtin mail-sender?02:37
lifelesspoolie: actually, I didn't look at the subject at all02:37
lifelesspoolie: and as there is one, evo didn't bitch at me02:37
poolieif you're sending through evo i think you can override it and i'm asking that you do02:38
lifelessbesides which, BB knows its a follow on patch, it can give extra content.02:38
lifelesspoolie: I normally do. I forgot, once.02:38
lifelessand got jumped on.02:38
poolieoh np02:38
poolieno stomping was intended02:39
jelmerlifeless, when you have time, any chance you can reply to the "[MERGE] Move install_revision(s) onto the Repository object." thread?02:55
jelmer(http://news.gmane.org/find-root.php?message_id=%3C20080804032617.GA19075%40vernstok.nl%3E)02:55
lifelesspoolie: ok02:55
lifelessjelmer: is it stuck?02:56
jelmerlifeless: Sortof - you voted resubmit but I wasn't entirely sure what I had to change02:56
lifelessjelmer: right found it.02:57
lifelessjelmer: what was unclear?02:57
jelmerlifeless: The tests for install_revisions() were already inside repository_implementations02:57
jelmereven though install_revisions() didn't live on Repository but was generic02:57
lifelessah02:57
lifelesswow02:58
lifelesswe have 1 test02:58
lifelessand its bare bones02:58
lifelessuhm02:59
lifelessit really needs to obey the full protocol on per-file graph support etc02:59
lifelessI hesistate to ask you to extend it to be sure of that, but I can think of so many ways it could be broken and pass the current test.02:59
lifelesspoolie: I've dropped you a mail, there is a little bit of administrivia needed fairly urgently03:00
jelmerlifeless: Ok, so it just needs more tests?03:00
lifelessjelmer: yeah, I think so03:01
* poolie chases indirections03:01
lifelessjelmer: I think I'd structure them self-referentially - thusly03:01
poolielifeless: is this at google again?03:01
lifelessjelmer: use the default format to build a branch with a file, dir, symlink (only where symlinks are present), that have the following occur to them03:01
lifelesscreated03:01
lifelessmodified03:01
lifelessmodified in two branches and merged03:02
lifelessmodified in one branch merged to the other branch03:02
lifelessthese are the basic corner cases for last-modified revision assignment03:02
lifelessthen copy those revisions over to the repository format that is being tested03:02
lifelessthey should end up identical03:03
jelmerthanks03:04
jelmerI'll leave it alone for now though, it seems like too much trouble to avoid 20 lines of code duplication in bzr-svn03:07
lifelessI'll note that the bugs in bzr-svn recently about last-changed etc will be avoided if you do this03:08
lifelessits not a good idea to leave it alone and hope :(03:09
jelmerlifeless, last-changed?03:09
jelmeryou mean the text revids? That would be the bit I would override in bzr-svn03:09
lifelessits the bit you need to make sure the rules are absolutely in sync with bzr03:09
jelmerSure, but this is just code sharing, it's not test sharing03:10
lifelessright03:10
lifelessI'm looking for a review on http://bundlebuggy.aaronbentley.com/project/bzr/request/%3C1219204485.31549.89.camel%40lifeless-64%3E03:12
jelmerSo I don't see how that would help here; I would override install_revisions() for bzr-svn anyway, but that would allow using an existing InterRepository implementation that uses install_revisions() rather than writing my own.03:12
lifelessjelmer: so, I guess I'm thinking about test sharing more03:13
lifelessI'm hesitant about install_revisions as it stands, there are still #XXX's in it03:13
lifelesslast I checked03:13
jelmersure, but it's already being used at the moment. I'm just moving it.03:14
lifelessso my comment was, that by moving it we're making it be at higher risk - bugs in it will be more exposed03:15
lifelessand anyone implementing Repository will be expected to implement it, so test coverage matters substantially more03:15
spivlifeless: I can review that03:16
spivlifeless: as a general comment, I'm in favour of bringing things in incrementally though, so don't share jam's concern there.03:17
jelmerlifeless, ah, ok03:32
spivlifeless: review sent.03:32
lifelessspiv: thanks03:33
* beuno -> sleep03:36
lifelessspiv: replied03:36
beunog'night all03:36
lifelessspiv: I'm not sure where the 'if in tests is a bad smell' meme is coming from, but its either too simplistically phrased, or wrong.03:37
lifelessI've seen it a couple of times recently, I think its new.03:37
spivlifeless: well, I can elaborate why I think this particular if is bad; I agree they can be ok.  But by default treating with some suspicion is justified.03:39
lifelesswhy is it justified?03:39
spivlifeless: as to the source of the meme, the xUnit Test Patterns book lists it ("Conditional Test Logic")03:39
lifelessor, whats the justification03:39
spivIn this case I think it's basically just that you're using the if statement to squeeze multiple tests into one test method.03:42
lifelessyou've seen my reply?03:42
spivWhich isn't as clear at communicating intent as it would be as two separate tests.03:42
spivNot yet; I'll do that now.03:42
lifelessbecause I'm not doing that03:42
lifelessI'm testing the single behaviour of an interface with optional output03:43
spivOk.03:43
lifelessthe first column must be either all None, or not None at all03:43
spivSo I think you can express that intent more clearly.03:43
lifelessas I've defined it03:43
spiv(And without an if statement in the test method)03:43
spivBy:03:44
spivnames = sorted([result[1] for result in read_result])03:44
spivself.assertEqual(expected_names, names)03:44
spiv# (so far, same as before)03:44
spivself.assertAllNoneOrAllNotNone([result[0] for result in read_result])03:44
lifelessugh03:45
spivThere would be an if statement in the assertion method, obviously.03:45
lifelessThats less clear03:45
spiv(The xUnit book points out that this is a good thing because you can write tests for your test helpers, whereas writing tests for test methods leads to madness)03:46
lifelessI'll change the test around a bit, see if you like it03:46
spivI'll be interested to see what it looks like.03:46
lifelesswell, the xUnit book, frankly, should smoke less camel toenails. Its equally untested even with a helper test, because you may simply fail to call the right helper, or pass incorrect parameters in03:47
lifelessat a certain point you have to assess the code in front of you on its own merits03:47
spiv:)03:47
lifelessI do write helper tests, for helpers that deserve it03:48
spivRight, I agree.03:48
lifelessso its not a critique of doing that. Its a critique of using that facility to support an argument that 'if' is bad in test methods03:48
spivI nearly said so originally, but I felt like I was already waffling :)03:48
lifelessbet you the authors don't like 'goto' either.03:48
spivPerhaps, but the index gives no clue either way :)03:49
lifeless:>03:49
lifeless(goto is very good practice in C for function cleanups)03:49
spiv(agreed)03:50
spivSkimming the Conditional Test Logic section of the book, it is a touch vague but boils down to "conditional logic == complex code == harder to understand/trust == less confidence".03:52
lifelesssounds like an indictment of both 'if' and 'objects' all at once03:54
spivWhich I think is right.  It's a mild smell for me; it can be a sign that the test could be better, but I don't consider it to be a 100% reliable indicator of trouble.  Sometimes the test is clear enough even though it has conditional.03:55
spivWell, complexity sucks. :)03:55
lifelesssee, this is the bit where I think its process insanity03:55
lifelessthats the sort of thing thats so inane, I'd never put it in a talk03:55
spivOne of the neat thing about tests is that you can often write several simple tests that you individually trust to gain confidence in a larger, complex system.03:56
lifeless"I find your test hard to read" >>>> "your test has if in it"03:56
lifelessspiv: that ignores the potential for skew03:56
spiv(Keeping in mind that you may have gaps between your simple bits...)03:56
lifelessyou have to be sure they are aligned right, and thats hard to test03:57
spivRight.03:57
spivI said it's a "neat thing", not a "magic bullet" :)03:57
spivAnyway, back to the case in hand... I *did* find the purpose of the test a little confusing.03:58
lifelesswhich is fine, fixing.03:58
spivPartly because I worry a little that a casual reader might not pick up on the fact that that test is parameterised, which is helpful in figuring out why the "if" might matter.  I wonder if we should have some convention to flag parameterised tests that are outside the per_* and *_implementations directories?04:02
spivPerhaps the answer is just that a casual reader that gets confused should just read more closely :)04:03
lifelesswell, the test, when it runs, shows the parameters04:03
lifelessspiv: mail sent to the list04:04
spivYeah.  So people reading the test because of test failures will know.04:04
spivWhich is probably most casual readers.04:04
spivlifeless: that tweak is better, thanks.04:08
lifelessthe difference from a helper function is that this is clearer04:08
lifelessa non-reused helper is just a new function to remember, and the name would signal what it does, not why it does it04:09
lifelesswhy is what matters04:09
spivSure.04:09
spivI wasn't wedded to using a new function, but it was a lot easier to type into IRC :)04:10
pooliewow04:10
pooliei got sucked in too04:10
lifelesspoolie: ?04:12
poolieto the 'if in tests' thing04:12
lifelesshehe04:12
pooliesmell doesn't mean 'never do this'04:12
mwhudsonpoolie: not sucked into wow, i hope04:13
pooliei guess overall, why not hide the sorting by inodes inside the function you're testing04:13
poolienup04:13
lifelesspoolie: performance04:13
poolieheh04:13
pooliecare to expand on that?04:13
lifelesssure04:13
lifelesssorting costs, its cheaper not to sort unless you need to04:14
poolieso if a caller wants the directory without caring about sorting by inode, surely they'd like to also avoid consing and then removing all the tuples?04:15
lifelesspoolie: I'll be a second, buffer overflow04:16
lifelesspoolie: so, I think the thing about smells, is that if you bring them up in a comment, it muddies the actual discussion that should take place.04:22
pooliethe reviewer should keep inside their head the fact that it's a smell and just either give a concrete reason or say nothing?04:23
lifelessyes04:23
lifelessunless they want to just say 'it smelt to me, if it smells to you too please fix it'04:23
spivSo I mentioned it as a shorthand way of explaining what I thought was problematic.04:24
spivClearly this failed as a way to explain myself concisely :)04:24
lifelesslike pattern languages, unless its shared, it fails04:24
poolieit may bifurcate the conversation into a discussion of whether it's a general problem or not, and what to do in this case04:24
poolieas has happened here04:24
pooliethey may go in different directions04:25
poolieanyhow, coming back to the specific thing here04:26
poolieit seems to me that callers want either a directory listing in random order, or a listing sorted for optimal access to the files (if possible)04:27
lifelessjust waiting for a push to finish then I'll have the code up in front of me again04:27
pooliedear lazyspiv: getattr won't be called if the attribute is defined in a base class?04:29
spivHeh.04:30
spivThe __getattr__ hook?  Right.04:30
mwhudsonpoolie: you mean __getattr__ right?  and yes, pretty sure04:30
pooliei do04:30
pooliethanks04:31
pooliethat was my reading of the docs, it just contradicts something jam said so i was checking04:31
poolielifeless: the other thing here, which is kind of mission creep, is that i think you can actually return the file file kind from readdir, which your comment waves towards04:32
lifelesspoolie: its not a win today04:32
lifelesspoolie: I ripped that code out04:32
pooliebut it might take a bit of code change to use it, and it probably isn't enough to avoid stat04:32
* spiv -> lunch04:32
lifelesspoolie: so, sometimes we want to sort, sometimes we don't care. Having multiple interfaces is less appealing than a single if its cheap04:34
=== lamont` is now known as lamont
lifelesspoolie: we would allocate inode, string tables to sort anyway, so there isn't <much> of a saving in hiding that04:34
pooliemy point is that if you care about avoiding the sort when the client doesn't care, shouldn't you want to avoid allocating all the data structures needed to sort too?04:38
lifelesspoolie: yes, I didn't disagree with your point04:39
lifelesspoolie: but we'll need another tested interface to implement it, and that has its own cost; I don't really want to duplicate the C code unnecessarily04:40
pooliei think it would be clearest to have list_dir(..., sort_hint=None) or something04:42
lifelessthat will be quite tricky to test04:44
=== mario_ is now known as pygi
lifelesspoolie: so, spiv has given bb:approve, i'm blocked on a little clearer messaging from you04:58
=== abentley1 is now known as abentley
=== abentley1 is now known as abentley
=== abentley1 is now known as abentley
poolielifeless: ok05:05
pooliein what way is that trickier to test?05:05
poolieat the moment you're not testing that it is sorted in any way at all05:06
pooliei think if you do this it will address john's just-posted concern that this is not a good api for pyrex05:06
lifelesshe doesn't say its not a good api for pyrex; hes saying its not all-thats-needed-to-be-really-fast05:13
lifelessbecause we need to fix the overhead of stat05:13
lifelessand we may actually want a full pyrexed walkdirs implementation05:13
poolieso is that clear or not?05:16
jmlso, I'm having a problem with this bzrdir patch.05:17
lifelessso the change you propose is really unrelated to John's concern about pyrex, which I've replied to05:18
jmlIf I add another BzrDirMetaFormat1 to the tested formats, I get this error: http://pastebin.ubuntu.com/42594/05:18
lifelessjml: you shouldn't add another BzrDirMetaFormat1 to the tests05:19
lifelessjml: as its already tested05:19
jmllifeless: ok.05:19
lifelessjml: like I said yesterday, just change the formats it tests with to be the latest ones, rather than the defaults05:19
jmllifeless: changing the existing format to use stackable branches and repositories makes the 'does default work' tests fail05:19
* jml looks for the right shelf to get the test output05:20
lifelessjml: give me a diff somewhere05:20
lifelesspoolie: so, I can do it, but I think we're polishing the knob a little early05:20
jmlhttp://pastebin.ubuntu.com/42595/05:20
jmllifeless: ^^05:20
lifelesspoolie: what I have is the shrunken version of 'get the file kind from C's readdir()'05:21
lifelessjml: what for are you fiddling around in there05:22
lifelessjml: BzrDirFormat.known_formats() is the function to change05:22
lifelesspoolie: no its not really clear; I can't tell if you are voting comment: or tweak:05:23
jmllifeless: I'm sorry, but I have no idea how to change that in a sane way05:23
jmllifeless: what's a control format?05:23
lifelessjml: BzrDir4/5/6/7/BzrDirMetaDir/RemoteBzrDir/SvnDir05:24
lifelessHgDir05:24
lifelessGitDir05:24
lifelessetc05:24
jmlok. I still don't get how to change known_formats.05:25
lifelessso05:25
lifelessI can paraphrase the problem differently I think.05:25
lifelessthe reason your tests did not fail after you wrote them is that the BzrDirMeta1 type supports stacking, even though the bzr 'default' format does not05:26
* jml nods05:28
lifelessI am saying, change the default, for all these tests05:28
poolieok, i reviewed the new one05:28
jmllifeless: how do I change the default for the tests without changing the default for bzr?05:30
lifelessso, known_formats is only used for testing05:31
lifelessif you look at the loop05:31
lifelessits returning all the specific types known by each control type05:32
lifelessso, all the flavours of BzrDir, all the Flavours of GitDir etc05:32
lifelessyou want the BzrDirMeta1 flavour returned to be parameterised with a branch and repo type05:33
lifelessbasically, I think you change05:33
lifeless__default_format = BzrDirMetaFormat105:34
lifelessway down in the file05:34
jmlok.05:34
lifelessand check 'bzr init' doesn't break surprisingly. (I don't think it will)05:34
lifelessoh, or upgrade05:34
lifelessit shouldn't actually change the default, due to various things05:34
lifelesspoolie: where did you see the copyright thing?05:36
pooliereaddir.h05:36
lifelessand whats wrong with it (other than it saying Bazaar-NG, which I've fixed)05:37
poolieit's also 2008 now :)05:39
lifelessthat file has not changed since 200605:39
poolieok05:40
poolieit's newly added so i thought it was new05:40
lifelessAm I misunderstanding (C) rules?05:40
pooliebut maybe it's been sitting on your disk since then05:40
pooliein which case it's fine05:40
jmlimport sucks05:41
lifelessjml: ?05:45
jmllifeless: would you expect http://pastebin.ubuntu.com/42600/ to cause http://pastebin.ubuntu.com/42601/05:47
jameshlifeless: usually copyright relates to publication date rather than creation date05:48
jameshso a 2008 copyright might be appropriate if that's when it first gets published05:48
lifelessits been on the interwebs since london 200605:49
lifelesswhy is something so simple such a long process05:50
lifeless1/2 a day on one patch05:50
lifelessjml: yes, I would05:50
jmllifeless: for my part, it's because of a lack of familiarity :)05:50
lifelessjml: I wasn't referring to your patch05:50
lifelessthis readdir one of mine05:51
lifelessEFRUSTRATION05:51
jml:)05:51
lifelessI feel like saying, meh, I'll come back to it in another 2 years05:51
lifeless(This patch was the reason I wrote the pyrex stuff for setup.py in the first place, way way way back - it was to enable bringing in such extensions)05:51
lifelessjml: anyhow, your patch. bzrlib.branch is probably lazy importing bzrdir05:52
lifelessand those default setting lines are too high up05:52
poolielifeless: i feel like that sometimes too05:52
lifelessjml: try changing bzrlib.branch.BranchFormat.default05:53
lifelessjml: instead, I think it delegates by default05:53
poolielifeless: want to talk? any ideas about what to do differently?05:55
lifelesspoolie: I'm feeling a tad time pressured. The idea of a process chat right now is not appealing05:55
poolielifeless: take 3 is ok with me if you really don't want to change it06:10
pooliei guess i'd be more relaxed if it were marked private06:10
lifelesspoolie: it is now, its _read_dir06:11
poolieam i one patch behind?06:12
lifelessno06:12
lifelessyou're probably confused by the modules06:12
lifeless_readdir_pyx.pyx -> thats a private module06:12
lifelessit has read_dir() in it06:12
poolieoh, you mean _readdir06:12
lifelessbzrlib.osutils._readdir06:12
* jml looks into changing the repository default06:12
pooliefairy nuf06:12
lifelessis where it is exposed, and its exposed _ prefixed.06:12
pooliehttp://bundlebuggy.aaronbentley.com/project/bzr/request/%3C1219204485.31549.89.camel%40lifeless-64%3E has osutils republishing it as read_dir06:13
lifelesstry:06:13
lifeless    from bzrlib._readdir_pyx import read_dir as _read_dir06:13
lifelessexcept ImportError:06:13
lifeless    from bzrlib._readdir_py import read_dir as _read_dir06:13
poolieok06:14
pooliewrong tab06:14
lifelessso my view is - there is one user; it obvious that it is doing a sort, so the costs are visible to readers06:15
lifelesswe can triangulate when there are multiple users of the interface06:15
lifelessjam: bug 26256506:22
ubottuLaunchpad bug 262565 in bzr "Old resolved conflicts resurrected" [Undecided,New] https://launchpad.net/bugs/26256506:23
lifelessjam: I suspect you've spent the most time looking at that set of problems..06:23
lifelesspoolie: for squid patches, in the web ui you can retarget them rather then rejecting them06:24
lifelesspoolie: it would be nice if you could change your vote to comment06:24
lifelesshttp://bundlebuggy.aaronbentley.com/project/squid/request/<1220137897.6703.4.camel%40henriknordstrom.net>06:24
pooliesure06:25
lifelessthanks06:28
poolieout to the shops, biab07:00
lifelessjonnydee: sorry that your patch wasn't merged. It was approved, just not sent to the gatekeeper07:06
philnhi08:16
philni can't manage to checkout a bzr:// branch via a ssh tunnel.. is there something specific needed to setup that?08:17
philnto setup the tunnel i do: ssh -nNL 4155:bling:4155 sshhost08:17
pooliephiln, hi, do you want to tunnel ssh over ssh, or have bzr listening on a tcp port on the other side of the tunnel08:18
spivI wouldn't think anything special would be needed.08:18
philni have bzr serve listening on the remote side08:18
poolietry adding -v to ssh and see if it tries to connect?08:18
philnwhen i do telnet localhost 4155 it wors08:18
pooliepotentially silly question, why not just use bzr+ssh?08:18
philnok08:18
lifelessjonnydee: your bugfix has landed in bzr.dev08:19
philnerr, dunno ;) i should try that maybe ;)08:19
spivphiln: and so you're trying to checkout using "bzr co bzr://localhost/..."?08:19
philnyes08:19
spivphiln: well, if telnet localhost 4155 works, then there's no reason why bzr://localhost shouldn't work.08:20
philndebug1: Connection to port 4155 forwarding to bling port 4155 requested.08:20
philndebug1: channel 2: new [direct-tcpip]08:20
spiv(at least, no reason related to SSH tunnelling)08:20
philni'll try bzr+ssh08:20
philnbzr+ssh works, fair enough..08:21
spivWhat error were you getting?08:22
philnfor bzr:// ?  well bzr was just hanging, nothing displayed, even with -v option08:22
spivYou could try adding the -Dhpss option and then looking in ~/.bzr.log08:24
spivOr you could try08:24
spivecho 'hello' | nc localhost 415508:24
spiv(Which should get a reply)08:25
lifelessspiv: did you see my query about streaming this morning ?08:26
philnit displayed ok208:26
spivphiln: ok, then the SSH tunnelling is definitely working as intended, so if you wanted to know more, then -Dhpss & ~/.bzr.log option would be the next step.08:27
philni see no error in that file08:27
spivlifeless: oh right.  Slowly, but that's due to sinus congestion rather than code :)08:27
spivphiln: pastebin the last 10 lines?08:27
spivIt should indicate what part of the network conversation it is hanging on.08:28
philnhttp://pastebin.com/m6c72427308:28
philnif i interrupt i get a traceback in the file08:29
philnhttp://pastebin.com/m26331e2d08:30
philnthis is bzr 1.6 from your ppa08:30
spivHuh, that is weird.08:30
poolielifeless: do you want to go to both uds and fosscamp?08:31
lifelesspoolie: yup08:31
spivphiln: FWIW, random testing over an SSH tunnel works ok for me here.08:32
lifelesscalling it a day folk.08:33
lifelesslater08:33
spivphiln: At this point, I'd probably start resorting to tcpdump :/08:34
spivphiln: or, more pragmatically, use bzr+ssh://, seeing as that works already...08:34
philni'll just use bzr+ssh and work done ;)08:35
philnhave a good day08:35
Peng_Shouldn't osutils.pump_string_file use xrange instead of range? It could potentially be a large range, right?08:38
pooliePeng_: i can't find a method of that name...08:46
lifelesspoolie: pydoc xrange08:47
poolie:)08:47
poolievery funny08:47
pooliei meant pump_string_file08:47
lifelessPeng_: possibly, OTOH 5MB chunks from a string -> if its GB's in size, it will be a problem for other reasons08:47
lifelesspoolie: oh, pull bzr.dev then08:47
poolieoh, merged since this morning?08:48
lifelessyes08:48
lifelessquite a few patches landed today08:49
pooliespiv, are you still here?09:27
poolievila, hi/09:31
poolieare you online?09:31
vilapoolie: Hi !09:31
pooliecould we talk in a bit?09:31
vilasure09:31
poolieneed to go and pick up stephane at the moment09:32
vilapoolie: when you want09:32
stianseHi all. When I use "bzr branch", how should i configure the branches so that configuration (like the one you find in branch.conf) is copied to the new branch?09:48
stianseRight now I'm using bzr-shell-hooks plugin and have a section of [hooks] in my branch.conf of which scripts to run. It would be nice if there was a way to copy such information. Or probably specify it somewhere else?09:49
Odd_Blokestianse: I think the accepted way to do that would be to have a plugin which installed the hooks that you would install wherever you wanted that stuff setup.09:50
Odd_BlokeThough I don't know a great deal about shell hooks.09:50
stianseOdd_Bloke, but using a plugin would affect all my bazaar branches, right? I only want these hooks on a few branches.09:52
Odd_Blokestianse: Yeah, I'm not sure how we handle this case.09:53
Odd_BlokeI've never run into needing it, so have never looked at it.09:53
stianseOdd_Bloke, ok no problem. Thanks anyway.09:55
hmelandWould moving the [hooks] section from .bzr/branch/branch.conf into ~/.bazaar/locations.conf work?09:56
hmelandProbably not, if the README of bzr-shell-hooks is accurate.09:57
=== jelmer is now known as Guest12522
=== Guest12522 is now known as jelmer
poolievila, hi, still here?10:34
vilasure10:34
vilabut if it's late for you we can talk tomorrow, your call10:35
=== acuster is now known as avc_work
loxs[]folks, I'm having a problem... first I made a branch, then I checkout the branch... then I add some files to my checkout and then bzr add, bzr commit... it says everything is fine... then I go to the parent branch and the files are not there.... then I do a bzr log in the parent branch and surprise... the log is ok, as if the commit was successful. Do you have any idea what's going on?10:58
loxs[]probably the problem is that the files are binary? they are doc files10:58
james_w;10:59
james_wloxs[]: could you try running "bzr update" in the parent branch?10:59
loxs[]ghm, strange james_w, now it adds the files there o_O11:01
loxs[]can't it be done automatically?11:02
james_wloxs[]: not really11:02
james_wit's not easy to do that remotely, and really bad for performance11:02
loxs[]it's not that remotely... it's inside a novell environment... I mean, both places are part of the filesystem11:03
james_whmm, maybe it doesn't do it locally either11:04
james_wI'm more used to "push" than checkouts11:04
loxs[]what is going to happen if someone edits something in the 'central' repo? without doing a bzr up before that?11:04
=== Bambi_BOFH is now known as Kamping_Kaiser
loxs[]yeah, I must start thinking in bzr ways :)... the 'parent' and the 'child' are of equal priority... even the 'parent' can be 'out of date'11:31
uwsloxs[]: you can also use checkouts, in which case you can use the "centralized workflow" (a la svn, cvs)11:44
uwsloxs[]: then your "parent" cannot be out of date, only the "child"11:44
uwsloxs[]: since all commits are automatically pushed "upstream" to the parent11:44
uwsloxs[]: See "bzr help checkout" and "bzr help update"11:45
uwsloxs[]: and "bzr help bind"11:45
loxs[]well, that was the problem.... see above :)11:45
loxs[]the parent doesn't get automatically updated upon commits11:45
uwsloxs[]: it will if you use a checkout11:46
loxs[]it doesn't11:46
uwsloxs[]: it should, and it does everywhere I use it.11:46
loxs[] first I made a branch, then I checkout the branch... then I add some files to my checkout and then bzr add, bzr commit... it says everything is fine... then I go to the parent branch and the files are not there.... then I do a bzr log in the parent branch and surprise... the log is ok, as if the commit was successful. Do you have any idea what's going on?11:46
uwsloxs[]: So it's likely something in your setup is not right11:46
uwsloxs[]: You need to "bzr update" the parent branch11:47
loxs[]yeah, that's the thing :)11:47
uwsloxs[]: But usually you don't need a working tree in the parent branch (e.g. it's on a central, backed up server)11:47
loxs[]in this case I need a working tree there11:47
uwsloxs[]: you can use "bzr remove-tree" if you don't need it.11:47
uwsloxs[]: Ok, then "bzr update"11:47
loxs[]the problem is that i can't be sure that every developer will bzr update the parent every time11:48
uwsloxs[]: is this a website perhaps?11:48
loxs[]and sometimes some of us make changes on the parent... and then we have a problem11:48
uwsthere's a "bzr upload" plugin i think11:48
loxs[]bzr automirror... I'm looking at it now11:49
uwsloxs[]: make changes on the parent branch, or on the parent working tree?11:49
loxs[]I'm not very sure what's the difference11:49
loxs[]working tree I suppose11:50
LarstiQloxs[]: the crux of the problem should be answered by finding out why you need the central branch to have a working tree?11:50
loxs[]well, speaking strictly we don't...11:50
LarstiQok, so why not nuke it then?11:53
loxs[]because my colleagues will wonder what's happening :)11:53
LarstiQfor publishing revisions you only need the branch part, not the working tree.11:53
LarstiQloxs[]: happenening in what case?11:54
LarstiQloxs[]: you can certainly have a workingtree present on your central branch, but it makes things more complex.11:54
LarstiQso unless you really really need it, I advise against doing that.11:54
loxs[]well, if I get it right, the central repository will not contain the actual files, only the .bzr and the history...11:54
LarstiQloxs[]: right11:54
loxs[]some of my colleagues, especially my boss, don't care much about bzr... they expect to be able to see what's going on by visiting the central directory (it's a Novell environment)11:55
loxs[]it's central and it's being backuped and so on11:56
LarstiQso this is more of an education/workflow thing.11:57
LarstiQloxs[]: you could use a 'central' working tree that is in a different location than the 'central' branch, and have the former autoupdated.11:58
uwsloxs[]: You shuold setup something like Trac or Loggerhead11:58
loxs[]yes, that exactly am I asking... how to do the autoupdating :)11:58
LarstiQloxs[]: cron :)11:58
uwsloxs[]: that is MUCH more useful for browsing the files and history11:58
loxs[]cron... it's windows :(11:59
uwsloxs[]: how do you push to it? sftp?11:59
LarstiQloxs[]: other options are bzr push-and-update and bzr upload, but again probably not on windows.11:59
loxs[]no uws, the central repo is part of the filesystem (it's Novell environment)... just simple directory path12:01
loxs[]yeah, LarstiQ, these two commands are not present12:04
LarstiQloxs[]: they are plugins, but afaik both require ssh.12:05
loxs[]yes, automirror also required ssh :/12:06
LarstiQloxs[]: see http://bazaar-vcs.org/BzrPlugins12:06
loxs[]looking at ti12:06
loxs[]*it12:06
LarstiQloxs[]: so, if you decide to keep your central working tree, when people make changes to it but don't commit, they will be merged when you run bzr update12:06
loxs[]when I run bzr update on my checkout copy you mean?12:07
LarstiQloxs[]: if they try to commit when the working tree is out of date, bzr will tell you so and you have to update first.12:07
LarstiQloxs[]: no, this is all speaking about the central one12:07
loxs[]yes, I tried it, I know... and its fair thing as far as I see12:08
LarstiQloxs[]: if people make uncommited changes to the central one, there is no new revision, and hence update on a different checkout will do nothing.12:08
loxs[]I'll resolve the issues when they emerge12:08
LarstiQloxs[]: you will still have to run update on the central copy to bring it up to date.12:08
loxs[]yes, there is probably no other way12:08
loxs[]thanks12:09
LarstiQreally, I do think you're best off without it.12:09
uwsyeah, loggerhead or trac will give much better information12:09
LarstiQand as uws said, loggerhead is a much better solution for seeing what the status is12:09
LarstiQloxs[]: and I would try to teach people how things might be different from what they expect.12:10
loxs[]I will try that, for sure :)12:10
uwsjust not having a central working tree means there can't be any confusion12:10
loxs[]yeah, if everyone is familiar with bazaar :)12:11
LarstiQloxs[]: if they are not familiar with bazaar, they see an 'empty' directory, or one with just a .bzr/ dir beneath it.12:12
LarstiQloxs[]: I hope your colleagues aren't in the habit of randomly deleting things that look like empty directories to them.12:12
loxs[]yeah, and they start to recover from the backups :)12:12
loxs[]it happened today :)12:13
LarstiQdoh.12:13
LarstiQloxs[]: but even if they do, you have a branch of your own and can easily recreate the central branch, there is nothing special about it perse.12:13
loxs[]how, LarstiQ ?12:14
LarstiQloxs[]: if it so happens that they delete the central branch, from your copy just 'bzr push location/to/central'12:15
loxs[]hmm... I start to understand how much Bazaar rocks :)12:16
LarstiQloxs[]: that will put the .bzr/ back in place. Won't give you a working tree (but since in this scenario the dir got deleted because your colleagues didn't see a working tree anyway, no problem)12:16
* LarstiQ heads off to visit his dentist.12:18
loxs[]one more question.... let's say I checkout a branch.... then I checkout from the checkout.... What happens if I try to commit in the 'grandchild'?12:30
LarstiQloxs[]: bzr will complain that what you're trying to commit to is bound to something else in turn.12:33
jelmerLarstiQ, your dentist has IRC ? :-P12:34
jelmerjames_w, do you think it would be possible to get bzr-svn 0.4.12 into Intrepid?12:37
uwsLarstiQ, loxs[]: what I do with branches on shared storage with empty directories (i.e. no working tree), is putting a README file in there explaining that ppl shouldn't removed the directory12:38
loxs[]that's exactly what I'm doing at the moment uws :)12:38
uwssomething like "This is a Bazaar branch without a working tree. All files are in the .bzr/ directory. Please do not delete it."12:38
LarstiQjelmer: it seems I failed at getting away.12:42
james_wjelmer: possible yes, you'd have to ask12:58
viladamn, is there a way to cancel a pqm-submission ?12:58
beunovila, move the submitted branch?  :p12:59
beunohi  :)12:59
jelmervila, get some canonical sysadmin to knock over the pqm machine? :-P12:59
vilaI just reviewed http://bundlebuggy.aaronbentley.com/project/bzr/request/%3C20080712104527.GA16321%40mutt.xyzz.org%3E and after sending the submission I realized there was a related bug and in the comments it was decided to wait for other fixes13:00
vilabeuno, jelmer: yeah thanks for the support :)13:00
LarstiQhmm, iirc in the past I had the queue edited13:01
LarstiQvila: I don't recall any other support for it13:02
vilaI just commited on that branch some sabotage that should make the submission fail, hopefully13:02
vilaLarstiQ: Hi !13:02
vilaI know a lot of work has occurred on pqm but I think we still use an old version13:03
vilabut I'm not sure the queue handling has been developed anyway13:03
* LarstiQ nods13:03
LarstiQvila: hey :)13:03
viladamn, pqm catch my branch to soon :-(13:07
vilas/catch/merged from/13:07
vilajam: any advice ?13:07
vilame/ reads 'LarstiQ heads off to visit his dentist.' and wonders what the point is to visit a dentist without its head...13:09
vilas/its/his/13:09
uwsvila: ever heard of handheld devices with an internet connection? ;)13:11
vilauws: you mean Larstiq's head is hand held ?13:13
LarstiQvila: 'heads off (to)' is an idiom for going away/somewhere.13:14
LarstiQuws: nah, I'm still at home.13:14
LarstiQvila: earlier today a jawsurgeon removed two wisdomteeth, now I'd like to bring the OPG photos back to my dentist.13:15
uwsLarstiQ: dus je pwaat een beetje mwoeilijk?13:15
LarstiQuws: it's not that bad, it's surprisingly easy to talk through clenched teeth.13:16
vilaespecially on IRC...13:17
LarstiQ:)13:17
uwsonly bad thing is that you only have half of your wisdom left.13:17
LarstiQthey'll be gone the 8th of october.13:20
quicksilvervila: I believe LarstiQ removed his head and sent *only* that to the doctor.13:21
quicksilvervila: cheaper.13:21
quicksilverdentist.13:21
quicksilverwhatevr.13:21
vilaquicksilver: aaah, I thought the dentist connected via internet or something13:22
vilajam: should I re-submit with a reversed patch ?13:24
lifelessvila: what happened ?13:24
vilaI just reviewed http://bundlebuggy.aaronbentley.com/project/bzr/request/%3C20080712104527.GA16321%40mutt.xyzz.org%3E and after sending the submission I realized there was a related bug and in the comments it was decided to wait for other fixes13:25
vila:-/13:25
lifelessdid you munge the branch ?13:26
lifelessor has pqm landed it ?13:26
vilapqm is currently running the tests, I tried modifying my branch but it was too late13:26
lifelessok13:26
vilarats, pqm has already finished :-(13:27
lifelessits not running anything :P13:27
lifelessreset13:28
vilalifeless: merged on  http://bazaar-vcs.org/bzr/bzr.dev, I just received the 'success' mail from pqm13:31
lifelessyes13:32
lifelessI just uncommitted13:32
vilalifeless: thanks ! problem closed ?13:32
lifelessshould be :P13:32
vilapfew13:33
vilasorry for that :-/13:33
=== mw|out is now known as mw
lifelessjam: bug 262565 - I think its falling between us right now, please let me know if you need me to dive into it (though its a little daunting)14:24
ubottuLaunchpad bug 262565 in bzr "Old resolved conflicts resurrected" [Undecided,New] https://launchpad.net/bugs/26256514:24
alsurenI have a project in bzr, and I would like to add 2 levels of directories above my current top level directory (for buildsystem and python namespace package support)14:57
alsurenwhat's the best way to do this?14:58
sabdflalsuren: make the directory, then bzr add it15:02
alsurenand then just move everything from my tree into that directory?15:03
alsurenwill that fuck up my bzr ignore rules?15:03
Peng_alsuren: Sure, but you can edit .bzrignore.15:06
Peng_If subtrees weren't all experimental, you could create a new branch and use "bzr join". Hm.15:07
alsurenwhen are subtrees going to become mainstream?15:09
alsurenI think I might just just keep the namespace package hierarchy out of version control for now15:10
Peng_It's normal to have "build" and "mypackage" dirs in your source control.15:11
alsurenI know. I will put them in once I have it working outside of version control. Right now, I'm adding a testing framework15:13
=== mark1 is now known as markh
=== kiko is now known as kiko-phone
=== AnMaster_ is now known as AnMaster
techtonikHmm.. Is it possible to change commit message in bazaar history without reverting and recommiting all changes?16:42
techtonikAlso, how can I delete one revision from repository in a convenient way?16:47
Jc2ktechtonik: bzr uncommit?16:48
Jc2kuncommit deletes a revision16:48
Jc2kuncommit is probably also the easiest way to chage a commit message, but does mean you are effectively reverting and recommitting..16:49
techtonikdf16:50
techtonikI need to change log message deep in history16:50
SteveAhi16:51
techtonikuncommit reverts only last revision16:51
SteveA I have a branch, and I want to make a bundle of the last 2 committed revisions16:51
xifHi.16:51
SteveAI tried to use bzr send and bzr bundle, with -r-2..16:51
SteveAbut, it gives me an error "bzr: ERROR: No submit branch known or specified"16:52
xifIs there a way to set a bzr branch, so that `bzr st` would always imply `bzr st -V`?16:52
ajaksuçç16:53
ajaksuoops16:53
techtonikxif: to hide unversioned files branchwide use "bzr ignore"16:54
xiftechtonik: hm, but then I'd need to `bzr ignore` any new file added to the branch, right?16:55
jamSteveA: generally with send, you just want to keep 2 branches16:57
techtonikxif: you need to ignore only files that you do not want to be added to branch, but still present in your working copy16:57
jamone as a mirror of theirs16:57
jamand the other as your working branch16:57
SteveAjam: is 'send' the same as 'bundle' ?16:57
jamSteveA: not entirely16:57
jamthey create the same kind of objects16:57
techtonikxif: and you may use file masks16:57
jambut have a slightly different ui16:57
jamand "bzr bundle" itself is mostly deprecated16:57
SteveAall I want really is a command which means "create a bundle out of revisions 9 and 10 of this branch"16:57
jamSteveA: so unfortunately that is16:58
techtonikme too.16:58
jambzr branch -r 8 . ../other_tip16:58
jambzr send ../other_tip -o ../outputfile.patch16:58
SteveAwhy do I need ../other_tip?16:58
jamSteveA: because abentley wants to make sure you include the right revisions in the request16:58
jamhe felt it was too easy to send the wrong ones16:58
SteveAthat's kinda confusing16:58
jamso he requires another branch to reference16:58
jamSteveA: If you try "bzr send -r 8..10 ."16:59
SteveAI feel like I just made these revisions, and now I want to send them :-)16:59
jamit would see that all revisions are in the branch16:59
jamand send an empty bundle16:59
techtonikconfusing a lot16:59
SteveAhmm, trailing dot16:59
SteveAok16:59
xiftechtonik: OK, is there a simple way to tell bzr to ignore everything except foo.py and bar.py?16:59
jamSteveA: abentley basically feels that people make mistakes, so he wants you to use an explicit branch for reference16:59
SteveAI think this is a UI mistake16:59
jamSteveA: we've had a lot of discussions on it, I'm hoping to invoke him now :)17:00
SteveAbecause I'm trying to explain to someone a really simple workflow of "you make revisions, then you send them to me"17:00
abentleySteveA: Not requiring a branch was a bigger UI mistake.17:00
SteveAand now I need to say "you track my branch and you do other stuff"17:00
jamOne suggestion was that a bundle should always include the explicitly referenced revisions17:00
* LarstiQ does agree with abentley that it's very easy to make bundles that won't apply17:00
abentleyBecause people kept submitting bundles that were unusable.17:00
SteveAI don't really mind if the bundles won't apply17:00
SteveAI can just ask for more revisions17:00
SteveAnot a problem in my case17:00
SteveAI can see it being a problem in the "a community of loosely collaborating people" case17:01
abentleySteveA: The whole point of bundles is to be mergeable.  Perhaps you want patches instead.17:01
xiftechtonik: OK, looking at the bzr ignore docs, looks like there should be. thanks.17:01
SteveAI don't think I want a normal patch17:01
SteveAI want to be able to re-merge the other way too17:01
SteveAso, I'm now confused as to what I need to do17:02
jamSteveA: so Aaron's point is that if you don't mirror their branch17:02
jamthen you'll sometimes guess wrong17:02
abentleySteveA: "bzr bundle" is a strict subset of "bzr send".  They use the same implementation.17:02
jamand you'll actually need 7-917:02
jamrather than just 8-917:02
techtonikxif: only with regexps - i.e. "RE:(?!foo.py|bar.py)"17:02
jamand the bundle won't actually be usable17:02
xiftechtonik: yup :)  thanks.17:02
jamuntil they request again17:02
SteveAif I've got the other branch, maybe I can just say "bundle what's missing" ?17:02
jam*I* feel like that is ok17:02
jamSteveA: If you do "bzr send ../other-branch" it will do the right thing17:02
SteveAthat would make it worth tracking the other branch17:02
jamAnd once you've done a send17:03
SteveAok17:03
jamI believe it will default to tracking the other branch17:03
jamso you can just do "bzr send"17:03
SteveAok17:03
jam(no arguments)17:03
jamYou need a shared repo, for efficiency at this point17:03
jamwhich is a level of complexity...17:03
SteveAoh, that means moving directory structures around17:03
abentleyjam: Or stacking :-)17:03
techtonikabentley: I want patches. 10-15 patches - one for each revision to apply them carefully one by one.17:03
SteveAthis is a small project17:04
SteveAso I think having 2 duplicated branches is okay17:04
techtonikabentley: ..after I change my log message17:04
abentleytechtonik: Perhaps you should have a look at the "rebase" plugin.17:04
SteveAthanks jam and abentley17:05
abentleySteveA: np17:05
abentleySteveA: We do get occasional complaints like yours.  My current plan is to add a "--base-revision" parameter.  That revision and all its decendents which are ancestors of the tip revision would then be included in the bundle.  If supplied, it would remove the need for a branch.17:08
SnauryHello, can I replay changes in one branch on another branch without doing merge? (the branches are unrelated, it's just that the same project was started from the same sources again, i.e. it's as if the old .bzr directory was removed and a new bzr init was done, now I'm trying to merge those histories)17:08
SteveAabentley: ok.  I tried -r17:08
techtonikabentley: sounds complicated.. and there is no windows version. I just need to fix one little revision (or better replace it with another revision) deep in history without reverting and recommiting all subsequent revisions manually.17:08
SteveAabentley: I wouldn't have thought to try --base-revision17:08
xiftechtonik: looks like `bzr ignore 'RE:(?!foo.py|bar.py).*' works17:09
xifthough I wonder why `bzr ignore 'RE:(?!foo.py|bar.py)$'` did not.17:10
abentleySteveA: Well, I agree that it should be *possible* to override the auto-determination of which branches to include.  I don't think it's the right default.  I'm open to other ideas of how to make it possible.17:11
abentleySteveA: s/branches/revisions17:13
techtonikxif: because former is assertion that says "ignore everything that does not have foo.py or bar.py at start" and latter says "ignore empty strings if they are not prepended by foo.py or bar.py"17:17
abentleytechtonik: what you are asking for is exactly what rebase was designed to do.  Are you sure that you need a windows-specific version?17:18
SteveAabentley: how will the other guy keep his copy of my branch up to date, when I'm also sending him bundles?17:18
SteveAabentley: does he have to know that he pulls every bundle I send him into his copy of my branch, and then merges my branch into his own branch?17:19
abentleySteveA: If there's no public copy of your branch, that would make sense.17:19
SteveAok17:19
techtonikwell, I am on windows 2000 and virtualbox ceased support for this platform, so I am pretty sure I do not have any other systems at hand right now17:19
abentleytechtonik: Most bzr plugins work on all platforms.  Are you sure that rebase does not?17:20
techtonikabentley: Oh, sorry. I've forgot the bzr is in Python. Usually windows stuff is not distributed in sources, so when I looked at page with variuos Linux packages I thought it is not there. Will check this tomorrow. Thanks. Unfortunately need to go.17:22
xifOK, is there anything one should do, beyond deleting the .bzr directory, to turn a Bazaar branch into a regular directory of files?17:25
luks`bzr export` can make a new directory17:26
Jc2kyou could also just do bzr export17:26
Jc2ksnap17:26
jamvila: on the "make init-repo take '.'" did you read the ML thread?17:27
jamI was pretty sure we decided *not* to merge it17:27
jambecause of problems with accidentally creating a repo at the wrong location.17:27
xifright, but if I don't want to create a new copy of the directory, just stop versioning it, I should just remove .bzr, correct?17:27
vilajam: yup, but I read it too late, AFAIK lifeless uncommit it from bzr.dev17:28
jamvila: ok, I just saw it in the commit logs17:28
jambazaar-commits@17:28
vilaI tried sabotaging my integration branch when I realized but too late too :)17:29
SteveAabentley: still having problems17:30
SteveAbzr: ERROR: Your branch does not have all of the revisions required in order to merge this merge directive and the target location specified in the merge directive is not a branch: ../steve_branch17:30
vilaI also voted resubmit on the submission in to avoid further overzealous reviewers :-/17:30
SteveAthat was from trying this workflow where we both have a copy of each other's branch, and we pull bundles into that branch, then merge from our local copy of the other's branch17:31
SteveAit worked for 0.75 of a cycle17:31
SteveAthen I got that error17:31
SteveA ../steve_branch is the name of the local copy of my branch on the other guy's machine17:32
SteveAso I don't know why I'm seeing that in the error message on my machine17:32
jamvila: I don't see it on "bzr log" though, so it sounds like he did uncommit it17:33
jamand yeah, thanks for doing resubmit17:33
vilajam: yup, same here17:33
LarstiQSteveA: 'the target location specified in the merge directive is not a branch' looks a bit suspect.17:35
SteveAfor some reason, when I do "bzr pull /tmp/bundle5.diff", it's looking at ../steve_branch as part of doing that17:36
SteveAand sure enough, in bundle5.diff, there is the line17:36
SteveA target_branch: ../steve_branch17:36
SteveAI don't understand what that means though17:37
SteveAthat's a local branch of the guy who sent me the bundle17:37
SteveAand now I have the bundle, I obviously don't have that local branch17:37
SteveAif he was going to send me that branch anyway, then I wouldn't need the bundle at all17:37
jamLarstiQ, SteveA: That is the "fallback" code, which attempts to use a "public branch" to fill in any revisions you might be missing.17:38
jamI believe it uses:17:38
jam1) Revisions in the target17:38
jam2) revisions in the bundle17:38
jam3) Revisions in the "public branch" of the submitted directive17:39
vilaSteveA: I used that exact workflow on a previous project, setting things up was a bit painful, but once we had correct mirrors of each other, it worked flawlessly17:39
jamThe idea being, if you've published your branch (as most people do *for bzr*)17:39
jamthen even if the MD isn't complete17:39
jamwe can still fill in the gaps17:39
jamIn this particular case, I'm not sure if the error message is helpful or just confusing.17:39
vilaThe trick is to lie to bzr making it believe that one mirror is really the branch of the other guy17:40
SteveAjam: this is not public code17:40
jamSteveA: I understand that17:40
jamI'm giving you the logic that is used when merging a bundle17:41
vilaMay be I should have talked about it on the list so that *this* workflow is easier to setup, but I thought it was really an obsur edge case17:41
SteveAjam: and I thought using bundles would be an easy way for us to exchange revisions17:41
jamvila: It would be good to have it clearly documented17:41
jamSteveA: I think it should work17:41
jamwe just need to figure out what steps you are doing17:41
vilaI have it clearly documented :-) In french but easy enough to translate17:41
abentleyjam: 3) is actually the target_branch in the directive.17:41
SteveAI started off doing a bzr branch http://hismachine/thebranch17:41
SteveAbecause we're in the same office17:41
SteveAand I can do that now17:41
SteveAfrom that point on, assume we're disconnected, and have only email17:42
abentleySteveA: It is only trying to use the target branch because the bundle was incomplete.  It would otherwise just use the bundle.17:42
SteveAI need to go now, unfortunately.  vila, if you get this online somewhere in english, please let me know, and I'll try it out17:44
jamabentley: right, I'm trying to figure out how an incomplete bundle was generated.17:44
jamMy first guess is that the revisions are in "mybranch" but not in "mymirror"17:44
jambecause he isn't using a shared repo17:44
vilajam: I didn't use a shared repo and it worked17:44
jamvila: did you ever fetch the revisions between the two branches?17:45
jamwith a fake "bzr merge"17:45
jametc17:45
vilaNo, but I had trouble at first because he didn't have an exact mirror of my branch17:45
jamI know how I would set it up and expect it to work17:45
jambut as I didn't actually test it17:45
jamI'm hesitant to give exact details17:45
loxsfolks, I have a problem. I create a repo with bzr init-repo --no-tree sftp://bla. Then I push a branc: cd branch, bzr push sftp://bla/branch. After I checkout the branch from somewhere else with bzr co sftp://bla/branch I get the following structure /branch/branch/content instead of /brach/content17:48
vilajam: The trick is that since there is no public branch to share, each site needs to keep a mirror of the other one and work in its own branch. Then each site needs to name its mirror as the branch of the other site and use *relative* paths to trick bzr.17:49
vilathen, the workflow is as SteveA said: pull in mirror, merge17:50
jamvila: sounds like a bug in our code17:51
jamif you have to do the naming trick17:51
jamI would be happy for you to document it17:52
jamwrite a bug17:52
jamand have us fix it17:52
loxsvila, jam, are you talking about my case? because I suppose so, but I am not very sure :)17:52
jamloxs: no17:52
jamI have the feeling you did your "init + add" incorrectly locally17:52
jamspecifically you should do:17:52
jammkdir local17:52
jamcd local17:52
jamcopy content here17:53
jambzr init17:53
jambzr add content17:53
jambzr commit -m "content"17:53
jamloxs: make sure that doing17:53
vilajam: bug ? Because we don't expand the relative path into a full one in the bundle header ?17:53
jam"bzr branch local_branch another_location"17:53
jamvila: because pulling bundles into a local mirror fails to get things that it really does want17:53
jamvila: you should be able to track someones branch17:53
jamwithout having to play tricks with your local branch names17:54
jamnow, it *may* be that using a shared repo solves it well enough that we'll defer fixing the bug17:54
jambut if someone does "bzr send ../my-mirror-of-them" I would expect them to be able to do17:54
jam"cd the_real_other_branch; bzr pull the-patch"17:54
jamsorry,17:54
jambad terminology17:55
loxsyeah, still wondering are you talking about my case or not :)17:55
jamUser A has 2 branches: mirror-of-B, A17:55
jamloxs: I'm talking to 'vila', not your use case, I did mention one thing, but I'll come back to you in a bit17:55
jamUser B has 2 branches: mirror-of-A, B17:55
jamThey *should* be able to collaborate with only doing:17:56
jamcd B17:56
jambzr send -o ../mirror-of-A17:56
jamand on the other side17:56
jamcd A17:56
jamsorry17:56
loxsok, jam... but please be so kind to tell me "loxs, now I'm talking about your case" :)17:56
jamcd mirror-of-B17:56
jambzr pull17:56
jamcd ../A17:56
jambzr merge ../mirror-of-B17:56
jambzr commit -m "merge in other user"17:56
jamloxs: ok, back to you....17:57
jamloxs: step 1) do "bzr branch my_branch other_location"17:57
jamand see if that creates a subdirectory "branch" that you don't want17:57
jamif so,17:57
jamthen you did your "init + add" in the wrong directories17:57
loxsI didn't do init+add.. I did a push17:57
loxsisn't it a good way to do it?17:58
jamloxs: When you *started* you did init + add17:58
jamor you would have *nothing* to push17:58
jam(you also did 'commit')17:58
jamI'm saying17:58
jamcreate a new branch from what you've already done17:59
jam*without* pushing to the remote machine17:59
jamI believe you accidentally included the branch directory17:59
loxsthe thing is that I already have a nice repository that I was working with... and it is quite fine tuned... now I want to push it to a central server17:59
vilajam: I see, what I did was setting up things so that people could do: 'cd mirror; bzr pull <path-to-patch>; cd ../branch ; bzr merge' and then 'hack; hack; commit; bzr send' without any parameter to type for 'bzr merge' nor 'bzr send' kind of bzr for dummies, I was in a hurry :)17:59
loxsbut yte, I'll inspect my repository17:59
loxs*yes17:59
jamvila: sure, and I want that to work without having to follow an exact formula with branch names.18:00
jam"bzr send" defaults to the "submit_location"18:00
jamwhich is used by "bzr merge"18:00
jamso it *should* remember everything just fine18:00
jam(after the first time)18:00
jamAt least, the default changed recently, not sure if that was 1.5 or 1.618:01
vilaI think I made them work with bzr-1.3, but *I* was working with bzr.dev18:02
* vila coming from kitchen18:09
vilajam: Isn't it possible for SteveA to use a private branch on lp ?18:10
vilaWe should support this alternate workflow but using a private branch can be easier no ?18:10
* vila going back to kitchen18:11
jamvila: well, using a semi-public (aka lp private) branch is certainly easier for this sort of thing18:11
jambut I *would* really like to have pure email18:11
jamas the transport between two branches18:11
jamand have it work18:11
=== kiko-phone is now known as kiko
=== frej_ is now known as frej
lukshmm, 1.7 has feature freeze today, who can I bribe to get my register_lazy_command reviewed? :)19:04
abentleyluks: Do you think that the existing Registry.register_lazy wouldn't work, or did you just not want to do it?19:17
luksabentley: the main problem are aliases, it would need a subclasses which stores also aliases and allows to look them up19:19
luksas far as I can tell, registries are currently just key/value, key/lazy-value19:19
lukss/subclasses/subclass/19:20
loxsfolks, is there a way to specify a user when using bazaar over sftp?19:21
abentleyluks: Registries are not just key/value, they are key/value + help +  info19:22
abentleyluks: info is meant to contain additional metadata, like aliases.19:22
luksoh19:22
rockyanyone here know of a web server component written that will serve loggerhead for browser access but serve actual smart server responses for direct bzr branch access?19:22
luksabentley: ok, I see how it could work. but still I'd really like if 1.7 could get at least some register_lazy_command19:24
luksit's probably too late for me to submit a patch that uses this approach19:25
luksthe current patch just extends the API, doesn't change anything so can't introduce any regressions19:25
abentleyluks: I have some sympathy, but on the other hand, I first suggested this approach on Aug 26, and there was lots of time then.19:31
abentleySo I suggest keeping it in your plugin, and doing it right in 1.819:31
luksabentley: well, lifeless suggested the LazyObjectGetter approach, and you voted just comment, so I assumed it's not ideal, but good enough19:35
lukser, abstain19:35
abentleyluks: Abstain means I don't want it in, but if other people think it's a good idea, I won't stand in their way.19:37
luksah, I read it more like "I don't care enough about this"19:37
abentleyluks: Well, since lifeless suggested this approach, perhaps he'll review it for you.  He should be up in a couple hours.19:38
loxsis there a way to make bzr write some 'standard' data in the beginning of every file? things like licensing information, last commiter of the file etc.?19:53
=== thekorn_ is now known as thekorn
=== emgent`NL is now known as emgent`nl
Odd_Blokejelmer: I'm getting http://paste.pocoo.org/show/84210/ when trying to pull bzr-svn trunk.20:45
jelmerOdd_Bloke, are you pulling into a subtree repository by any chance?20:45
Odd_BlokeYes.20:46
Odd_Blokejelmer: Should I do a fresh branch of it?20:46
jelmerOdd_Bloke, there was a bug open about this20:47
jelmerOdd_Bloke, try branching into a rich-root-pack repo20:47
Odd_Blokejelmer: Cool, thanks. :)20:48
jelmerOdd_Bloke, I'm pushing a lot more changes you probably want20:59
jelmerhmm, this is getting ridiculous21:07
jelmerpushing a new tree into my remote bzr repository now spends about half its time pushing signatures21:07
Jc2kjelmer: is that a sign that bzr is getting faster at the vanilla pushing :P?21:13
jelmerJc2k, could be (-:21:14
Jc2k:-)21:14
jelmerimo pushing is still way too slow compared to e.g. git21:14
jelmerwith bzr, I find myself switching to a different terminal when I run bzr push21:14
jelmerwith git push, I just wait for it to finish21:14
Jc2ki have a little bit of evolution weirdness21:16
jelmerJc2k, ?21:16
Jc2kbzr info -v on the repository is shwoing 36889 revisions21:16
Jc2khttp://bzr-mirror.gnome.org/bzr/evolution/.bzr.log shows 36246 revisions21:16
jelmerif a svn commit changes multiple branches in svn, it ends up being more than one revision in bzr21:18
jelmere.g. if somebody changes both /trunk and /branches/foo in the same commit21:18
Jc2ki suppose 600 occurences of that isnt that often in evolution terms...21:19
jelmersome svn commits don't result in bzr commits at all21:19
jelmere.g. if they change just the branches directory (nothing under it)21:19
jelmeror if they add a tag (since tags aren't versioned in bzr)21:20
=== sabdf1 is now known as sabdfl
radixOdd_Bloke: hi, did you work on merge directives for PQM?22:04
Odd_Blokeradix: Yup.22:08
radixOdd_Bloke: does it require use of PGP/MIME?22:08
radixodd_bloke: the reason I ask is that I got this error: PQMException: 'Second part of multipart message must be application/pgp-signature'22:10
Odd_Blokeradix: Nope, inline is fine.22:11
radixhmm, then what's with the error?22:11
Odd_Blokeradix: You can only send multipart messages if the first part is the content and the second part is application/pgp-signature.22:11
Odd_BlokeAnd even that's not recommended.22:11
radixoh, so if my message happens to be multipart it will assume it's going to be PGP/MIME?22:11
Odd_BlokeYeah, afraid so.22:11
radixHmm, I don't think I *tried* to send a multipart message, but who knows what evolution does22:12
radixmaybe thunderbird is less weird22:12
jbalinthey22:13
Odd_Blokeradix: Bug #264139.22:17
ubottuLaunchpad bug 264139 in pqm "PQM doesn't deal with multi-part messages well" [Undecided,New] https://launchpad.net/bugs/26413922:17
radixOdd_Bloke: cool, thanks. hopefully I won't need to wait for it to be resolved :)22:17
Odd_BlokeNo.22:18
Odd_BlokeI've finished for the summer, so that could be a while. :p22:18
radix:)22:18
LarstiQOdd_Bloke: move to the southern hemisphere!22:23
Odd_Blokeradix: It occurs to me that you need to make sure that the merge directive is in the body of the message, rather than attached.  Which may be your problem...22:23
Odd_BlokeLarstiQ: Commuting to Rugby is bad enough from Coventry, let alone south of the equator. :p22:23
radixOdd_Bloke: the strange thing is that I tried using the "editor" email program and signed the message inline but got the same error22:24
radixOdd_Bloke: I'm going to try again22:24
Odd_Blokeradix: Try using 'bzr send -o <FILE>' and copying the contents of <FILE> directly into your email client.22:26
radixOdd_Bloke: hmmm22:31
radixOdd_Bloke: does it support base64-encoded data?22:31
radixapparently "gpg --sign --armor" will encode stuff in base64 automatically if it's got "weird" stuff in the body22:32
Odd_Blokeradix: What do you mean by 'base64-encoded data'?22:34
Odd_BlokeBundles are base64-encoded, and it obviously supports those. :p22:34
LarstiQOdd_Bloke: what does pqm do if the merge-directive is base64 encoded entirely?22:34
radixOdd_Bloke: like this:22:34
radix-----BEGIN PGP MESSAGE-----22:35
radixVersion: GnuPG v1.4.6 (GNU/Linux)22:35
radixowGVUz1vFDEQPRIhoZUojoZ2EooApz28X3eblaIExAkKTgpJKpLo5LV9t0527Y3X22:35
radixetc.22:35
Odd_BlokeI expect it falls over.22:35
radixIf you sign "hello world" it just adds the usual header/footer, but if you sign "====\n----" it base64s it22:36
radixpresumably because that stuff could be misinterpreted as the header or footer for the pgp thing, so it's just encoding it to avoid misinterpretation22:37
radixOdd_Bloke: it looks like you're also working on the XMLRPC interface... I'd so much rather use that :)22:38
Odd_Blokeradix: I suggest passing '--no-patch' to 'bzr send'.22:38
radixah, I'll try it22:38
Odd_BlokeBecause PQM doesn't (or, at least, shouldn't) be using the patch.22:38
radixhmm, it seems to base64 it anyway. I guess it's really conservative. There are things like the "--- this line and the following will be ignored", not to mention all the headers etc22:39
radixwell, I don't think I need to do it this way anyway22:40
radixI was just trying to get it working in editor22:40
Odd_Blokeradix: Isn't --armor _meant_ to base64 it?22:41
radixOdd_Bloke: not always22:41
radix--armor means "use ascii not binary", where binary output is the default22:41
radixi.e. stuff which will require you to type "reset" in your terminal22:42
radixoh, crap22:42
radixI think I am wrong about that22:42
Odd_Bloke'echo "foo" | gpg --sign --armor' gives me base64 encoded stuff.22:42
radixok, I am on crack, sorry22:42
Odd_Blokeradix: No worries.22:43
radixI wonder how to get gpg to give me normal ascii output without base64ing22:43
Odd_BlokeYou probably want '--clearsign'.22:43
radixOdd_Bloke: yes! thanks22:47
radixOdd_Bloke: btw, does your XMLRPC/PQM support allow multi-line commit messages, or does it have the same problem that the usual email mechanism has?22:47
Odd_Blokeradix: At the moment, it doesn't.22:48
Odd_BlokeBut it would be much easier to add than with email.22:49
radixOdd_Bloke: sweet.22:50
radixOdd_Bloke: ok, for future reference, it seems that using "bzr send" with mail_client set to "editor" can't work, because it sends the merge directive as an attachment22:56
Odd_Blokeradix: Yeah, that's an issue.22:58
Odd_Blokeradix: If you could mention that on Bug #264139 it'd be appreciated.22:58
ubottuLaunchpad bug 264139 in pqm "PQM doesn't deal with multi-part messages well" [Medium,Confirmed] https://launchpad.net/bugs/26413922:58
radixcool22:58
jamOdd_Bloke: I posted a bunch of response questions to the "bzr speed" question.23:02
jamradix: are you doing "gpg --clearsign" rather than "--sign" ?23:04
jamsorry, you already got there :)23:04
radixjam: I am now, odd_bloke suggested that to me already :)23:04
radix:)23:04
jamradix: well, you just need to teach pqm about attachments23:05
jamconsidering that 90% of how you would send it23:05
jamwould be with an email program that would use an attachment, too23:05
radixyeah23:05
radixalso, "bzr send" seems to totally not work with thunderbird, for what it's worth23:05
jamand, I guess, that is bug #26413923:06
radixit doesn't include the merge directive at all, somehow23:06
ubottuLaunchpad bug 264139 in pqm "PQM doesn't deal with multi-part messages well" [Medium,Confirmed] https://launchpad.net/bugs/26413923:06
jamradix: bug in thunderbird when spawned via the debian "default mail client" scripts23:06
jamwe have a workaround, let me dig it up23:06
radixah23:06
jam(you have to set the mail client to t-bird instead of default)23:06
radixjam: I did that too, it still doesn't seem to work23:07
jamradix: in bazaar.conf add the line23:07
jammail_client = thunderbird23:07
Odd_Blokejam: 'bzr pqm-submit' probably has a fair share of submissions.23:07
radixops wait23:07
radixmy bad23:07
jamOdd_Bloke: "submissions" ?23:07
* radix had it commented out23:07
radixhmm, it adds it as an attachment in thunderbird as well23:07
jamOdd_Bloke: I'm not sure what you mean by that sentence23:07
radixI predict this will break23:07
radixhmm, unless I use PGP/MIME, and hope that thunderbird adds the signature as the second part.23:08
jamradix: Mail.app, thunderbird, editor, etc, etc all use an attachment23:08
jamradix: for T-bird you can select whether you want it to sign just the first part, or the whole thing23:08
jamthough I've encountered bugs with enigmime and signing attachments23:08
jamwhere sending it to myself23:08
jamit ends up thinking the signature is invalid... :(23:09
jamSo I only sign the text documents now23:09
jam(not the attachments)23:09
Odd_Blokejam: Sorry, I meant to say that I guess a lot of submissions to PQM would be using 'bzr pqm-submit' rather than 'bzr send'.23:10
radixso how do people use the merge directive support at all?23:10
radixit seems there's no configuration which can possibly send stuff that it will accept23:10
* lifeless pops up23:11
radixmorning lifeless23:11
Odd_Blokeradix: 'bzr send -o <FILE>' and copying the contents of <FILE> into the body of the email should work.23:12
radixOdd_Bloke: ok, I'll try that one23:12
radixOdd_Bloke: hmm, where do I put the commit message in that case?23:12
Odd_Blokeradix: Subject line.23:12
radixd'oh!23:13
* Spaz storms in23:13
radixthat defeats my reason for using merge directives :)23:13
jamradix: I've never used it. AFAIK Odd_Bloke's changes didn't make it into PQM mainline23:13
radixI want to have a multi-line commit message23:13
jamhi Spaz23:13
radixjam: oh, yeah, that's true, we're using the branch specifically23:13
Spazhello jam :)23:13
Odd_Blokeradix: Yeah, that's not easily possible via email.23:13
radixbecause we love odd_bloke's code23:13
Odd_Blokes/easily/trivially/23:13
jamOdd_Bloke: well, it is easy to create multi-line subjects that PQM accepts23:14
jamlook at the bzr.dev mainline23:14
jamit just does so by accident23:14
jammore than by intention23:14
jam(Subject lines are automatically wrapped by mail clients, and pqm just accepts them "as is")23:14
radixjam: hmm23:14
radixmaybe we will resort to that :)23:14
radixjam: and it actually maintains the newlines that the mail clients introduce in the header?23:15
jamradix: "bzr log --short http://bazaar-vcs.org/bzr/bzr.dev -r 3679"23:15
jammulti-line commit23:15
radixgreat23:15
jamradix: from what I can tell, it maintains the newlines *and* indentations23:15
radixoh, which is a bit crappy :)23:15
Odd_Blokeradix: Where would you have expected the commit message to go with a merge directive submission?23:15
radixOdd_Bloke: when you run "bzr send" you get an area for typing a commit message before a "-- everything after this line will be ignored"23:16
jamOdd_Bloke: well, *I* would have put it in the body, possibly with a custom header, and then had the MD as an attachment :)23:16
Odd_BlokeWell, if your mail client doesn't include the indentations, then you're probably fine.23:16
jamOdd_Bloke: email RFC requires the indentations23:16
jamor it is not part of the previous line23:16
Odd_BlokeAh, OK.23:17
jamlines starting with spaces are meant to be wrapped back into the previous line23:17
jamPQM doesn't really follow a lot email RFC23:17
Odd_BlokeYeah, that's what I was just thinking. :p23:17
Odd_BlokeAnyhow, I have to head to bed.23:18
lifelesswell23:18
radixOdd_Bloke: thank you very much for the help23:18
Odd_BlokeWhat with having a job and all. :o23:18
radixeven though it led to me giving up on PQM for a bit more :)23:18
lifelessOdd_Bloke: gnight23:18
Odd_Blokeradix: No worries, sorry I couldn't be of more help.23:18
Odd_BlokeNight all!23:18
gigi-gigiciao23:19
gigi-gigi!list23:19
ubottuHi! I'm #bzr's favorite infobot, you can search my brain yourself at http://tinyurl.com/5zfb6t - Usage info: http://wiki.ubuntu.com/UbuntuBots23:19
pooliexgood morning23:49
beunomornin' pooliex23:56
beunohow was your vacation?23:56
pooliexgreat, thanks23:57

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