[00:00] mtaylor: it may simply be that that is the size of your tree [00:00] mtaylor: how big is a drizzle tarball (gz) [00:01] lifeless: 7M [00:01] hi all [00:02] mtaylor: so before its 178 and after its 164 [00:02] mtaylor: did you perhaps start with all of mysql and *then* delete huge chunks ? [00:02] lifeless: yes. [00:02] thats it then [00:02] (not history of course, but yet) [00:02] yes [00:02] we can't compress changes to the deleted files, cause they aren't changing :) [00:03] ah, fair enough [00:03] was there ever a plan to do partial branches - like a full branch except perhaps going back only 100 revisions or so? [00:04] kindof [00:05] we have ~ 1/2 of it done - stacked branches [00:05] the other half is disconnecting them and allowing user controlled connect/disconnect [00:06] so that I just just pull the stacked branch without pulling the stacked on branch? [00:06] yes. handwaves furiously. [00:06] indeed [00:06] how big was a mysql tarball (gz) [00:08] mtaylor: ^ [00:11] Hi, is there a ticket management system recommended for bazaar? [00:12] bzr can integrate with quite a few - we allow you to configure that. However we ship with built in configuration for launchpad [00:12] and launchpad knows how to read the data back out of bzr pretty well [00:13] lifeless: 19M [00:13] mtaylor: urggle. Ok we should investigate [00:14] mtaylor: 1.18 will convert ok. don't convert with 2.0 or bzr.dev at this time. Brrrroken [00:14] silently too sometimes. [00:14] lifeless: lovely [00:14] yeah [00:15] aliases variable [00:15] alised [00:15] bah. spellink iz broken. [00:15] 'aliased' === kiko is now known as kiko-afk [00:23] spiv: ping [00:25] beuno: what bzr did you use to upgrade lh ? [00:26] beuno: if you used 2.0 or bzr.dev you should redo it with 1.18 [00:26] lifeless, 2.0rc1 :( [00:27] bug 422849 [00:27] Launchpad bug 422849 in bzr "InterDifferingSerializer generates InconsistentDelta error upgrading drizzle repo to 2a - adds a file already versioned" [Critical,In progress] https://launchpad.net/bugs/422849 [00:27] lifeless, and by redo, you mean...? [00:28] back out, restore the backup, convert again. [00:28] theres a high chance it wrote arbitrary data into your history [00:29] and I don't have stats on what % of the time it will catch the error with the inconsistent delta warning. [00:29] ok, sill do it [00:29] thanks lifeless [00:30] dinner now, fix later [00:31] beuno: if you converted over the network its ok [00:31] beuno: its only if you converted locally that its fail [00:31] jelmer: hi, still here? [00:31] hi [00:31] emmajane: still here? [00:31] lifeless, ah, I did. [00:32] more detail coming up on the list soon. [00:32] poolie, barely :) [00:32] ok :) [00:32] don't need to hang around on my accoutn [00:32] if you didn't already do it (i haven't read all my mail) i'm going to forward some screenshots to the list [00:32] i'd like to continue the discussion there [00:33] poolie, I'm making slides explaining square dancing as an analogy for PHP. you're welcome to distract me. :) [00:33] heh :) [00:33] poolie, Oh. the screenshots went to the list this morning. there's been about 10 replies? [00:33] i dont understand the difference between bzr branch -r -5 . ../next; bzr pull . --overwrite -r -5 and bzr branch -r -5 . ../next; bzr uncommit -r -5 # could anyone please explain? [00:34] maybe it's just because i havent slept in 24 hours :-D [00:34] are those two alternative sequences? [00:34] lvh: the uncommit leaves the tree changes in your current directory [00:34] poolie, the two that I sent? one has the carousel and one is closer to the wireframe. [00:35] lifeless: Ah, whereas the former will properly pretend I never changed anything? [00:35] you'll discard your working tree changes as well as the revisions [00:36] as long as 'discard' means 'move into the new branch' thats what I want :-) [00:36] but im guessing thats what the bzr branch -r -5 does [00:37] lvh: heres a better recipe [00:37] bzr branch . ../next [00:37] bzr pull . --overwrite -r -5 [00:37] I have you a buggy recipe before [00:38] okay [00:38] thanks :-) [00:39] lifeless: i wonder if we should remove the downloads for 2.0rc1? [00:39] well done btw [00:40] poolie: that would be a good precautio [00:40] n [00:50] master: Exporting thorough delta revision 93606/133780 with 140/822/110 added/changed/removed files [00:50] still going... [00:57] poolie, the wifi keeps dropping me and i'm going to call it a night. please do eemail if I've missed anything. [01:00] lifeless: pong [01:06] hello spiv [01:06] lifeless, tangentially https://bugs.edge.launchpad.net/launchpad-registry/+bug/422902 [01:06] Launchpad bug 422902 in launchpad-registry "want a way to lock/embargo releases and downloads" [Undecided,New] [01:06] spiv: hi; see the list, and my question about tests :) [01:08] rockstar: how to you create a new pipe and take the uncommitted changes? [01:08] * spiv looks [01:12] oh, the question about tests is in scrollback, not on the list? [01:12] yes [01:14] Something in per_interrepository I think. [01:15] I think .test_fetch.test_fetch_parent_inventories_at_stacking_boundary (and similarly test_fetch_parent_inventories_at_stacking_boundary_smart) [01:21] igc, +1 to you trying to improve the installer [01:21] poolie: yep, somewhat [01:21] poolie: I'll be off irc for a while, learning InnoSetup & reviewing how the current installer hangs together [01:21] it's probably redundant to tell you so but please document or script it so we can reproduce it [01:21] poolie: call me re the content filtering stuff when you want [01:21] i think a big problem here is that this is complex and manual, and requires building up state on a particular machine [01:22] unless lifeless wants help with 2a bugs i'm going to do that today [01:22] ok i will [01:22] s/that/content filterign [01:22] spiv, ^^ that's what i had to say [01:22] how about you? [01:22] poolie: there's 2 patches related to content filtering submitted yesterday for review so starting with those might be good [01:23] poolie: sure, I'll write things up [01:23] bbl [01:23] kk [01:24] igc there is a wiki page about it [01:24] and john said he sent mail to canonical-bazaar recently [01:24] poolie: I have an errand to run in crows nest (my memory); leaving for that shortly. [01:25] k [01:25] we can do lunch if you want [01:25] igc, also, i'll leave it up to you where you want to experiment [01:25] but at some point we need all the dependencies on an ec2 machine [01:26] so, maybe it would save time to do it now... [01:26] otoh if you need to experiment it may be easier to do it locally [01:26] i'll send you the rdesktop command anyhow [01:26] poolie: I just want to make it work locally first [01:26] poolie: I saw the doc re ec2 [01:27] k [01:27] i have some changes locally [01:27] poolie: about to ask for reviews for the chk roots-only commit_write_group check; [01:27] as far as using just a single account etc [01:28] I'm then going to unshelve the changes I have for testing for all relevant chk keys and work on that, the prototype appears to function. [01:28] lifeless: is there anything i should do on 2a? [01:29] i guess primarily, do you think all those failures have the same cause? [01:29] poolie: try my patch [01:29] poolie: see if it addresses the error you had] [01:29] good idea :) [01:31] lifeless: wow. I _really_ love silent mode in automake 1.11 [01:31] mtaylor: :) [01:31] poolie: checking it is on my todo but its easy to parallise on [01:31] https://code.edge.launchpad.net/~lifeless/bzr/bug-422849/+merge/11023 [01:31] sure, that's just the kind of thing i was looking for [01:46] thumper, I shelve the changes, add-pipe, and then unshelve. [02:08] rockstar: ok [02:26] anyone know why we get UnexpectedStderr: Unexpected standard error from subprocess: warnings.warn("%r was gc'd while locked" % self.repr) ?? [02:27] I think the UnexpectedStderr may be ours (LPs) but I'm not sure [02:39] hi [02:39] thumper: i've never heard of UnexpectedStderr [02:39] but the warning is ours [02:39] um [02:39] i thought we got rid of them [02:39] poolie: the UnexpectedStderr are probably our checking of the bzr process for pulling [02:39] if it's your code calling into bzrlib you're probably missing a try/finally: thing.unlock() [02:40] thumper: generally those warnings are associated with other branches that failed to pull [02:40] poolie: we aren't getting it all the time, just a few times [02:41] mm [02:41] for a while, all loom branches did that, but i think that's fixed [02:41] so i'd speculate that either in the puller code or bzr [02:41] something is unlocked normally but not after an exception [02:47] poolie: did it fix your issue [02:47] ? [02:48] [02:55] lifeless: that seems to have fixed it [02:55] poolie: recognising this is a bit of a "how long is a piece of string?", are we expecting to try again on the bzr upgrade to 2a today? Is cool either way, just wanting to get an idea on timing etc. [02:55] spiv, what do you think of http://sourcefrog.net/tmp/20090901-341535-eintr.diff [02:55] spm, if lifeless's patch, which i'm testing now, lands [02:55] and it's the top priority [02:55] that should unblock us redoing the upgrade [02:55] excellent! [02:56] to find the next bug :) [02:56] or not [02:56] ha [03:02] poolie: wow, that seems a bit extreme somehow. But it's probably correct. [03:02] Assuming it does actually work when you test it manually :) [03:02] it does [03:02] see https://bugs.edge.launchpad.net/bzr/+bug/341535 [03:02] Launchpad bug 341535 in bzr "hpss SmartMedium doesn't handle eintr" [Medium,In progress] [03:03] where i also say i'm on the verge of making a decorator object that wraps these methods [03:03] do you know of one? [03:03] that would also make it more testable, though [03:03] :/ it's one of those things where unit testing it does not give great assurance that it actually works [03:05] spiv, what do you think? [03:05] if i make a class i just need to make sure it's used everywhere [03:06] i guess it can be stuck into the constructors fairly easily [03:08] hi people! I'm using version 1.6.1, is there any command that I can see the files that changed between the revisons x..y? [03:08] Hmm, I'm torn. [03:09] Decorating the socket/pipe/etc object is probably cleaner, but on the other hand your patch is nice and straightforward. [03:10] ricardo_br: bzr diff -r x..y | diffstat? [03:10] or 'bzr status -r x..y' [03:10] oh, neat [03:10] spiv, if i thought there would be more cases then i'd do the object [03:10] ricardo_br: you might like to upgrade though, that's a bit old now [03:10] is that the package in a distro? [03:10] If the underlying objects weren't private to the SmartMedium classes, that would be a pretty strong case for decorating. [03:11] poolie: right. [03:11] it's true it's more than 3 cases, strictly speaking [03:11] maybe i'll propose just this for now [03:11] poolie: So, I'm happy with the patch as is. If you feel like writing the decorator I'm happy to look at that page too :) [03:11] But it's not a big deal to postpone that refactoring indefinitely. [03:13] poolie: I think I've installed it through ubuntu apt-get install [03:16] I've changed one file in the rev 61 and another file in the rev 62, when I run "bzr diff -r61..62" I can see only the changes in the file in rev 62 [03:17] ricardo_br: you'll need -r61..63 then [03:17] sorry [03:17] -r 60..62 [03:17] the previous one is "the changes from 61 to 62" [03:19] spiv, but it's not urgent [03:20] poolie: thanks! it worked. Just another question, can I see only the file names? === cprov is now known as cprov-zzz [03:23] rather than what happened to them? [03:23] um [03:23] not super easily, but you could use a shell script [03:23] btw newer versions for ubuntu are in https://launchpad.net/~bzr/+archive [03:25] spm btw the patch i referred to above is https://code.edge.launchpad.net/~lifeless/bzr/bug-422849/+merge/11023 and bug 422849 [03:25] Launchpad bug 422849 in bzr "Incorrect conversions in 2.0rc1 and bzr.dev" [Critical,In progress] https://launchpad.net/bugs/422849 [03:26] thanks for the tips poolie and bob2, I'll checkout the new versions [03:26] just fyi; we'll ping you when we get closer [03:26] poolie: did you mean me? or andrew? I assume the latter. [03:26] no, you [03:26] that's the one that's blocking the upgrade [03:26] you don't need to do anything with it [03:26] just in case you were wondering [03:27] ah, right. wit hthe plot now. [04:14] What is the mailing list and bundle-buggy still the best for patches or merge request in launchpad? === johnf1 is now known as johnf [04:57] johnf: best is merge request [04:58] jam: and a separate branch per feature/bug fix? [04:58] johnf: generally [04:59] hey [05:00] hey jml [05:00] if I wanted to do a patch _right now_ to stop Bazaar from treating directory removal as a conflict when the directory contains pyc files, how should I go about it? [05:00] anyway, off to bed for me [05:00] jam: g'night [05:14] jml: doesn't .bzringore *.pyc mean that that problem goes away? [05:14] bah === AfC1 is now known as AfC [05:15] hmm. does it? [05:15] * jml tries science [05:15] AfC: no [05:15] it's the old "junk vs deliberately unversioned" chestnut [05:17] jml: I think fondly of science. Especially mixing the chemicals together and making them go phoof! [05:17] but it's irritating me enough to do something about it. [05:18] there, I just empirically verified that mwhudson is right. [05:19] AfC, well, in these enlightened times chemicals are entitled to do whatever they want in the privacy of their own home. === thumper is now known as thumper-afk [06:15] ok, so git really is quite fast. [06:25] is there a way to create a branch of bzr inside launchpad without having to branch to my laptop and then push? [06:27] Well, you could do "bzr branch lp:bzr lp:~johnf/bzr/foo", but that still goes via your laptop... [06:28] If you already have bzr on your laptop, it shouldn't be very expensive to do that push, though, because the branch will be stacked on lp:bzr. [06:28] spiv as in 200MB traffic needs to go both ways or does everything happen on the server end? [06:29] ahh it's the stacking that I don't have [06:29] (and even in the lp:bzr -> lp:~johnf/bzr/foo it should still stack, although I can imagine it would fall a fair way short of being full efficient as that case hasn't been tested much) [06:29] You don't? Stacking should be automatic when you push to Launchpad, unless your local copy of bzr is in an old format? [06:30] yeah just realised my bzr.dev wasn't off launchad [06:30] fixing that now [06:31] so if I branch from lp. then branch again on disk and then push to lp will everything remain stacked? [07:04] hi all [07:09] hey vila [07:22] hi spm, vila [07:23] spm, it looks like that patch will work but other stuff came up and we're not likely to attempt the upgrade today [07:23] we'll probably merge it and may try it tomorrow [07:23] fair enough, shame in a way :-/ [07:23] jml, still around? [07:23] poolie, yep [07:24] quick call? [07:25] poolie, sure. [07:25] skype or pots is fine by me [07:25] let's see if skype will play [08:13] bug 422849 is in pqm for 2.0 [08:13] Launchpad bug 422849 in bzr "Incorrect conversions in 2.0rc1 and bzr.dev" [Critical,In progress] https://launchpad.net/bugs/422849 [08:20] lifeless: trivial enough to land without review ? I ask because I read the related mails first thing this morning (before hitting enter on 'bzr upgrade', pfew, lucky me) and couldn't find the merge proposal... [08:22] and didn't notice the linked branch until now :-/ [08:23] lifeless: right, so the patch is indeed trivial and was in the bug comments, good [08:25] lifeless: yet.... fixing a critical bug without adding test[s]... :-/ [08:25] vila: it was reviewed :) [08:25] ok [08:26] vila: I want tests; I'm not done on the bug. If you felt like writing some test during your day that would rock; otherwise I hope to get something that triggers it cleanly etc tomorrow. [08:26] Ha great [08:26] vila: missing tests shouldn't prevent us fixing a problem! [08:26] sure [08:27] obviously I missed some discussion, no worries, just catching up [08:27] happy to see we agree on all fronts :) [08:27] and above all thanks for fixing it since, well, I *was* about to upgrade locally :) [08:28] my pleasure :) [08:28] that close: '' [08:28] poolie: spm: I think we should wait for bzr.dev nightlies to have this fix before executing on 2a for bzr.dev [08:28] Doing otherwise will make it harder for people to be sure they can upgrade cleanly themselves. [08:30] vila: your test spike looked interesting [08:31] lifeless, spm: exactly why I asked to keep notes about what version was used to upgrade. (And I don't pretend my crystal ball warned me, it was just,,, well, prophylactic acting) [08:31] vila: I look forward to seeing it in action. [08:31] shell-like you mean > [08:31] shell-like you mean ? [08:31] vila: I'm hoping that it will be able to be totally simulated in memory :) [08:31] yes [08:32] Many threads are converging in the right direction I think, I like jam ideas about MemoryTree and branch builder, I really think we should upgrade them [08:32] so do I [08:32] I think we should build our testing safety net safety net first [08:32] I mean, add the missing features to MemoryTree and branch builder so they can be used more broadly [08:33] I see the most important things being some additional glue and reporting [08:33] so we can answer questions like 'how important is this test', or 'these tests' [08:33] 'if I delete this test, what coverage do I remove' [08:33] oh yes... [08:33] and 'what tests add no coverage today? [08:33] ' [08:34] an important milestone to reach is to know that all code is covered (even if only once), I have no idea where we are today [08:34] now, we'll need to think about the answers to those questions, but I think you'll agree that they are very interesting questions [08:34] ooooh yes [08:35] andrew wrote a coverage plugin [08:35] and there are some coverage analysis tools in the python testing community [08:35] At the risk of sidetracking you :) [08:35] we have a --coverage option, I need to use it more :) [08:36] well, not only me :) [08:36] --coverage is the plugin [08:36] I think [08:37] nah, bzr help global-options [08:37] available in every good bzr :) [08:37] ah no [08:37] needs to be per test [08:38] or you can't answer those questions [08:38] figleaf sections can do it [08:38] or per test decorators [08:38] with only a moderate failure mode for tests of lsprof [08:43] so, to run test in isolation I use selftest-by-n.py: http://paste.ubuntu.com/263626/ [08:43] ./bzr selftest --list >all-tests [08:43] selftest-by-n.py --starting-with --in-tmp --number 1 all-tests [08:44] I didn't play with it for months but ran it again last time we discussed about that, I need to analyse a bit more, but I already have some leaks identified (the meacs-bzr-send.xxx.el in /tmp for one) [08:45] s/meacs/emacs/ [08:45] and the bzr-limbo ones ! [08:45] pastebin.com/f600ce040 [08:46] thats much/most of my sketch [08:46] enjoy [08:46] :-D [08:46] It needs: [08:46] Yeah, the existing --coverage is pretty basic. [08:46] better data mode [08:47] and thats about it [08:47] per-test collection/reporting would be neat. [08:47] the better model I think would be best to try next is: [08:49] lifeless, spiv: My gut feeling is that trying to de-tangle coverage data is... NP-complete, I'd rather generate coverage data for each test in isolation and work hard to avoid redoing it uselessly [08:49] file_line:file_line_id file_line_id:testid_id testid_id [08:49] vila: I agree; thats what my plugin does [08:50] oh [08:51] but then you don't need to go down to lines, you can just keep 'test -> modules+' [08:55] spiv: --lsprof-tests gives you stome per test stuff today; no consistent reporting [08:57] stome ? [08:58] some [08:58] ha. [09:01] can someone point em to technical information about the default file format that is used by bazaar? I just want to create a little reader application .. [09:01] s/em/me [09:01] look at the developer notes in doc.bazaar-vcs.org [09:04] vila, i might sign off soon [09:04] vila: per line gives you per function when combined with diff [09:04] is there anything you want to talk about? [09:04] vila: which gives you 'run the tests for this change' [09:05] lifeless: If it works, great ! My fear is that it's trickier to get right than just: run these tests because one of their associated module has changed [09:06] poolie: nothing in particular, I think I've got enough feedback on shell-like tests to make a more concrete proposal (without putting too much features yet anyway, mostly doc, look at doctest matching and some polish) [09:07] Overall, the intent is to have something that you can copu/paste your shell session, lightly edit it and a get a runnable test [09:07] vila: the function matching code is done and working [09:07] s/copu/copy/ [09:08] vila: its just an efficient index that is needed [09:08] lifeless: That's how I understood it [09:08] lifeless: err wrong context :) [09:08] I thought you were talking about doctests :) [09:08] nooo [09:09] 31K revisions of netbeans to go [09:09] vila, cool, i was happy to see that posted [09:09] poolie: vila: well done on your progress on the 'shell test' stuff [09:10] poolie: I thought so :-) The trigger was when you said: 'could be used for merge resolution tests' to which I nearly replied 'Will you stop reading my mind ! ' [09:10] vila: I'm yet to look at it but it's very much along the lines of what I've been dreaming of [09:11] igc: not for you ! You're testing at far too high levels already :-P [09:11] vila: I'm sure when it's ready it will help casual contributors write more tests more easily [09:12] igc, something nontechnical came up today so i didn't do anything on filtering :-( [09:12] sorry [09:12] maybe tomorrow [09:12] vila: :-) [09:12] poolie: np [09:12] * igc dinner [09:12] good idea [09:12] igc: yup, casual contributors is definitely the target [09:13] only thing I found is http://doc.bazaar-vcs.org/latest/developers/packrepo.html which didn´t help enough .. [09:15] are there no more detailed docs about the file system? [09:16] or is there already a php script that is able to read bazaar branches? [09:22] NEBAP|work: I believe folk have written php code to call out to bzr [09:23] NEBAP|work: I wouldn't recommend reimplementing the disk format: there is a chunk of code and logic there, its neither small nor simple [09:23] lifeless: yeah [09:24] lifeless: I just want to enable my page to read the format to easily implement some "open source" code viewing .. [09:25] and I didn´t find any implementations in php [09:34] bug fix -> bzr.dev [09:34] lifeless: you may want to review the patch I'm preparing about the leaks to see why you didn't catch these ones (that's for tomorrow) [09:36] vila: I haven't written code to catch os calls yet [09:36] lifeless: at least I *think* you didn't catch them, but since your related patch hasn't landed yet( [09:36] vila: like subprocess :P [09:36] vila: I haven't had time to progress that spike for a few days [09:36] vila: feel free! [09:36] :-) [09:37] not sure the ones I'm catching are in the scope, so far that's tmp files created explicitly but not cleaned up [09:37] seriously though, I think the next step is more protection and or coverage [09:37] after that run-changed-code [09:37] then back to isolation [09:38] vila: my plan there is: hook into file() and open() and unlink() [09:38] + rename [09:38] a create file attempt outside TEST_ROOT and /tmp is an error [09:38] ditto read [09:38] a create file / dir in /tmp that isn't later cleaned up is an error [09:39] TMPDIR not /tmp, just in case :) [09:39] clean up can be mv into TEST_ROOT [09:39] or mv and delete within TMPDIR [09:40] "isn't later cleaned up" is the tricky one since you can't trap it early, you can only whine at tearDown time [09:41] lifeless: but that should work and be quite pleasant, I wonder if I should leave these leaks to server as easy preys... [09:41] s/server/serve/ [09:42] well, they are there already, they can be fixed but not merged where they are needed. [09:53] there is no php script that is able to read a bazaar branch, the only thing I found is one that executes some shell calls to bazaar, which won´t work on most servers .. [09:56] but I found out that some other guys also are searching for a php script to read their branches ^^ [09:57] so [09:58] NEBAP|work: I would estimate 3-4 weeks solid work to reliably read the data format, including race conditions etc. [09:58] ^^ [09:58] NEBAP|work: If you are up for that, well great. [09:58] hmm [09:59] otherwise maybe no one will start [09:59] Start a project; study the bzr code, and when the code is ambiguous, we can provide more insight. [09:59] ok [09:59] But! I think its much better off using e.g. bzr's xmlrpc server [09:59] or shelling out [09:59] than reimplementing. [09:59] hmm [09:59] the problem is that most php server doesn´t allow system calls [10:00] s/server/servers [10:00] so [10:00] NEBAP|work: you'll need C to read the file content anyway [10:00] really? [10:00] why? [10:00] compression logic is slow in high level languages [10:00] and bzr data is very very tightly compressed [10:00] hmm [10:00] that might be a problem [10:01] for me it will only work if I just use php [10:02] so [10:02] can you just export the files you want from bzr [10:02] e.g. using bzr uplaod [10:02] there is no detailed documentation of the file format? [10:02] yes [10:02] thought of that [10:03] but uploading some php files (sources) will end up with problems maybe [10:03] and it would be really cool to push a new rev and be able to read the branch using php [10:03] there are detailed docs of various layers, many of which are part of the source [10:03] e.g. pydoc bzrlib.bzrdir [10:03] will tell you about the bootstrap files [10:04] there isn't an 'implementors guide' [10:04] k [10:04] so [10:04] you *will* have to read through and understand the code in bzrdir, repository, repofmt/*{or the formats you want to understand}, branch, versionedfiles, tree, revisiontree [10:04] I´ll start by checking the bazaar sources [10:04] inventory [10:04] and maybe more [10:05] thanks [10:05] that will give me a starting point :) [10:05] good luck [10:05] thank you :) [10:13] james_w: hi! [10:13] hey jelmer [10:13] how's it going? [10:13] hey james_w jelmer :) [10:13] jelmer: welcome back ! [10:13] hey vila [10:14] Hi Vincent! [10:15] james_w: I saw you committed bzr 1.18 in the bzr branch - did you find somebody to sponsor for Debian yet? [10:15] I didn't [10:15] james_w: Ok, I'll have a look at uploading then [10:16] I need to fix bzrtools [10:16] and you may want to confirm what I did with bzr-svn [10:16] jelmer: I built packages for bzr-gtk but I didn't know how you proceed for debian, keep me in the loop when/if you need to update the related branches [10:16] there's bzr-gtk and loggerhead as well, but I don't think they are version locked [10:17] * jelmer nods [10:17] james_w: bzr-gtk is version "locked" on the bzrlib API, so it's ok for bzr-2.0 [10:17] since the API didn't change === cprov-zzz is now known as cprov [10:19] lifeless: which is the default format? knitrepo or pack_repo? [10:20] NEBAP|work: groupcompress_repo [10:20] NEBAP|work: at least it will as soon as 2.0 is out [10:21] ah ok [10:21] what's the plan for 2.0 exactly? Just those two blocker bugs? [10:21] how long will that take? I´ve seen there is much traffic in the 2.0 branch ^^ [10:22] AIUI 2.0rc2 should be a couple of days away [10:22] cool [10:24] lifeless: fix landed in 4.666, that was really an evil bug :-D === thumper-afk is now known as thumper [10:28] yes [10:28] aliasing [10:29] it would be nice if python had a 'final' facility. [10:29] like C/C++ const | java final | most any functional language [10:29] or a pyflakes check [10:30] bob2: can't catch all the evil I can do [10:30] nothing can [10:30] bob2: but yes it could help [10:31] SA isn't a common python idiom though [10:31] so it would need to be brought in gradually. [11:33] james_w: ping [11:33] hi lifeless [11:33] did you see my WARNING mail to bazaar@ [11:33] if not, go read it :P [11:34] I'd like to ensure that the bzr nightly builds have that patch in them, asap. [11:34] IIRC you coordinate those? [11:34] yeah [11:34] when was the bug introduced? [11:34] 24th or so, IIRC [11:34] and the easiest way to do that is to get it in to trunk [11:34] the patch is in trunk [11:34] the nightlies aren't affected then [11:35] then the nightlies pick it up [11:35] or is that "run them now please"? [11:35] james_w: you haven't been building for a week? [11:35] james_w: its 'run them now please, and shepard them through' [11:35] no [11:35] ok [11:35] I'm sure they would build normally anyhow [11:36] just want personal assurance that it succeeds, as this is a blocker for doing the bzr upgrade to 2a [11:36] sure [11:36] thanks hugely [11:37] if there is a problem, can you mail poolie and I [11:37] they are not fully automated yet [11:37] sure [11:37] and I'll fix my tomorrow am, hopefully in time to catch you or [can anyone fix things if it breaks] ? [11:37] I don't want to automate them on my end without making the tools to do so available to everyone [11:38] anyone can upload to the nightly ppa that is a memeber of the team [11:38] I forget who that is now [11:38] you, John, Martin [11:38] ok cool [11:38] anyhow, it passed PQM [11:39] they are running now fwiw [11:39] I'm sure there will be no difficulty [11:39] thanks! [11:39] I'm past EOD myself, so I'm now going to forget about this until after-sleep [11:39] sure [11:39] go sleep [11:43] jelmer: bzrtools fixed on bzr.debian.org so available when you want to upload 1.18 [11:54] hmm, not in bzr.dev yet [11:54] ah, not on LP yet [12:23] Hi there i was wondering if I could get some advice on repository layouts.. [12:34] jelmer: so you use doap? [12:37] james_w: thanks! [12:37] lifeless: yeah, occasionally [12:37] lifeless: I try to keep my doap files up to date, but I don't always use doap yet where I want to. [12:38] jelmer: you might like to reply to my doap-interest post [12:38] mainly because the tools are incomplete [12:38] lifeless: I'll have a look [12:38] without dependencies its hard to write useful tools beyond toys IMO [12:38] its relationships make foaf useful [12:40] lifeless: it depends on what you want to use it for I guess [12:40] if you want to use DOAP to help with packaging, I agree dependencies are a need [12:41] jelmer: relationships let you build a package spiderer [12:41] without that its just another way to write a readme and news file :) [12:48] lifeless: true, though a parseable one [13:05] Do you guys help out newbs to baazar? [13:08] CameronP_: yes, although sometimes the channel is just quiet. [13:08] CameronP_: a more specific question might attract more answers [13:14] Yeah sorry after that I just worked it out myself! [13:14] I was just having issues creating shared repositories [13:19] CameronP_: Heh, ok :) [13:47] spiv, If I want to get the latest version of a branch, but dont want any history (eg for publishing to web server) is the bets way via the --lightcheckout ? [13:47] --lightweight i mean [13:50] CameronP_: to publish to a webserver, use bzr upload [13:50] its a plugin [13:50] and designed for web publishing [13:51] Does that just do a "straight" upload each time or does it rsync or do incremental updates? [13:53] oh ic... [13:53] spiv: Thanks I'll take a look [14:00] awilkins: incremental, I believe. [14:02] awilkins: see http://bazaar.launchpad.net/~bzr-upload-devs/bzr-upload/trunk/annotate/head%3A/README [14:16] Hi - I'm haveing to push some branches (in 2a format) via a slow ftp connection. It keeps on repacking the remote repo. This is realy irritating. Is there any way to disable this, and what would the effects of that be? [14:17] jam: around? I want to check which email address is good for you atm, as the usual one seems to be bouncing. [14:17] spiv: What is meant by JUst the working tree for upload [14:17] eg say I've create a shared repostiory repository [14:17] and then ive created a project called xyz [14:18] and i only want to "upload" via the plugin just the project xyz [14:18] garyvdm: if do a manual pack, it'll fully pack the whole repo which will have the side effect of delaying large autopacks for quite a while. [14:18] garyvdm: there's no option for disabling autopacks entirely that I know of [14:19] garyvdm: the effects however would be a steady slowdown in read speed when accessing the repo, especially over a network. [14:20] spiv: I don't really understand what pack does, but maybe the autopack policy needs to be different for dumb remote to local, and smart remote. [14:20] CameronP_: if you want to just upload the files, no history, to a webserver, then the bzr-upload plugin is probably the best tool. [14:21] CameronP_: whether or not you have a shared repo doesn't affect that. [14:21] yeah im confused i think [14:21] the problem is that the central repo is the same server the website is on [14:22] so my understanding isnt fitting if you know what i mean [14:22] I havent worked out how to install it yet :( [14:22] garyvdm: it combines many small pack files into a single pack file, which is already beneficial in itself... for 2a there's the added benefit that having more content in one file gives better compression. [14:23] garyvdm: autopacking generally triggers ~10 writes to a repository (a single push would count as one write in this context, assuming there was something to push, as would a single commit). [14:25] garyvdm: crudely, autopacking means that by the time you've committed hundreds or thousands of times you'll still only have a few (say <20, and often <10) pack files, rather than hundreds or thousands. [14:25] So it's small, regular doses of pain now to avoid worse pain later :) [14:26] spiv: I see. I'm going to take a look code to see if I can hack it to make it repack less often for dumb remote transports. [14:26] well, 1000 => 10000 is not very regular [14:26] CameronP_: Well, you could "bzr upload" to a local directory just as easily as to a network local. [14:26] garyvdm: that won't really help [14:26] garyvdm: in that when it finally does trigger, it'll just be much much worse. [14:26] Because it'll have more to do. [14:27] spiv: I push to these branch often, and then work on them on the machine that I'm pushing to locally. It can repack when I'm on that machine... [14:28] CameronP_: Have you come right with installing bzr-upload. Maybe I can help you. [14:28] CameronP_: you can probably install that plugin simply by doing "bzr branch lp:bzr-upload ~/.bazaar/plugins/upload", although you may need to make the ~/.bazaar/plugins dir first. [14:29] yeah what i did was go into usr/lib/python2.4/site-packages/bzrlib/plugins/ [14:29] and did a bzr branch https://launchpad.net/bzr-upload [14:30] which made an upload dir in the plugins dir [14:30] CameronP_: you may need to make sure its 'upload', not 'bzr-upload' in that plugins dir. [14:31] spiv: thanks that fixed it [14:32] well it got the command working [14:32] so now, this is where i get confused [14:33] im sitting in my public_html dir where i want to download to [14:33] and issuing the command bzr upload /home/xyz/repository/courses [14:33] I think you have the usage backwards :) [14:33] Yep [14:33] i think your right... [14:33] heh [14:34] so how does it know where to download the files to? [14:34] Judging from the README, you want to be in /home/xyz/repository/courses and do "bzr upload ..../public_html" [14:34] AHHHH [14:34] noob mistake, thanks a lot [14:34] It would probably be harder to make that mistake if the target was a network location :) [14:35] As most systems don't let you "cd sftp://somehost/foo" ;) [14:35] yay it worked ;) Thanks spiv [14:37] now it has that cool option of auto updating... that will be great [14:38] CameronP_: bzr upload --auto :-) [14:52] hi [14:55] ah dang :( [14:55] now upload has caused an error [14:55] i found a patchfor it, but it should have already been fixed in that version i downloaded yeah? [14:55] https://bugs.launchpad.net/bzr-upload/+bug/312686 [14:55] Launchpad bug 312686 in bzr-upload "Error "you cannot specify None for the display encoding" on commit" [Undecided,New] [14:57] he has a diff file, there is, that the same as a patch file? [14:57] so can i use like patch -p0 < xyz.diff === SamB_XP_ is now known as SamB_XP [15:04] what's the recommendation for migrating an svn repo that uses svn:externals? [15:07] moldy: there isn't a really good solution [15:07] moldy: nested trees will provide similar functionality [15:08] until then you can work around the missing functionality by using config-manager of scmproj [15:08] Well I patched it, but now getting another error, basically it looks like its returning text back to tortoisebzr [15:08] so tortoisebzr is throwing an error [15:09] jelmer: well, basically i just want the data and the history, the externals can become normal directories [15:10] moldy: in that case, you can just convert the containing tree to bzr [15:10] and then use "bzr join" to import the external branches [15:10] jelmer: i'm trying :) struggling with bzr-svn right now [15:10] jelmer: which tool do you recommend? [15:11] moldy: To import from svn ? bzr-svn [15:11] moldy: Should work just the way you would use bzr itself [15:13] from bzrlib.plugins.svn import format [15:13] ImportError: cannot import name format [15:13] hmmmm [15:15] moldy: what version of bzr-svn are you using? [15:15] jelmer: 0.6.4 [15:15] jelmer: with bzr 1.15.1 [15:19] how can i revert a branch to the state of the trunk? [15:20] moldy: hmm, that's odd [15:20] 0.6.1 seems to work better, now i just need to install subvertpy [15:20] moldy: 0.6.4 also needs subvertpy [15:21] that could explain the other error [15:21] jelmer: hm, maybe [15:21] i don't think so, though [15:21] my bzrtools seems to be lacking something that 0.6.4 requries [15:21] bzr-svn doesn't depend on bzrtools [15:21] in any way or form [15:22] wait, let me check again [15:22] ah right, i mean bzrlib [15:22] from bzrlib.plugins.svn import format [15:22] my bzrlib.plugins has no "svn" module [15:23] that's a red herring, there's something else that's failing [15:23] such as subvertpy not being loadable, that's causing the svn plugin to be unloadable and thus be "msising" [15:23] it isn't there, i looked at it [15:24] find /usr/lib/python2.6/site-packages/bzrlib/ -name "*svn*" --> nothing [15:25] moldy: that's not the only location searched [15:25] moldy: ~/.bazaar/plugins is included as well, for example [15:26] huh? how does it pull that trick [15:26] bzrlib.plugins.__file__ is __init__.py in the above directory, and it doesn't import anything [15:27] nm. bzr branch to rescue :) [15:28] 0.6.1 works when subvertpy is installed, 0.6.4 shows the same error as before [15:29] does anyone know how i can get hte upload plugin to "forget" a directory in uploaded to , its saved location is wrong [15:34] CameronP_: --remember [15:35] thanks vila, yeah auto unfortuantely breaks it :( what a shame [15:35] tortoise bzr that is [15:36] ? [15:36] when you have --auto on, and then you do a comit remotely, it fails as it returns stoutput back to tortise about it doing an auto update [15:36] so then it all gets broken [15:39] CameronP_: file a bug, I don't use tbzr myself and I'm not sure I understand what you're describing, but it sounds like something that needs to be fixed [15:40] Yeah, there is a bug open, and a guy posted a patch but it doesnt quite fix it [15:40] https://bugs.launchpad.net/bzr-upload/+bug/312686 [15:40] Launchpad bug 312686 in bzr-upload "Error "you cannot specify None for the display encoding" on commit" [Undecided,New] [15:43] hey #bzr, trying to write a small plugin this morning... two questions: is there a nice searchable API somewhere for bzrlib or does everyone just use the HTML version [15:44] phinze: well, ideally the HTML version would *be* searchable ;-) [15:44] number two, i'm trying to see if a given path has changed given a ChangeBranchTipParams... can anyone point me in the right direction as to where to look in the API [15:44] jelmer: ok, thank you, bzr-svn seems to work fine now... now i just need to wrap my head around bzr join :) [15:44] I actually tend to grep the bzr source a lot, personally ... [15:44] SamB_XP: true... just inquiring as to what the active folks use for their reference [15:45] SamB_XP: i'm not averse to that :) [15:46] anyway, I was thinking maybe it wouldn't be that hard to rig some javascript up to search the docs? [15:46] unfortunately i'm still such a newb to the base API that sometimes the source is not the fastest way === deryck_ is now known as deryck [15:46] SamB_XP: true... a la rubybrain or something similar [15:53] does anyone know where bzr puts itself on install? [15:53] so anyways i'm making my way through Repository and such, and i think i need to first generate some sort of delta given new_revid and old_revid [15:53] CameronP_: Which OS :-) [15:53] centos (rhel) [15:54] CameronP_: I think bzrlib goes in the relevant site-packages [15:54] CameronP_: I have a centos box under my clutches but I installed it from sources [15:54] same [15:55] i wondered where it went once installed [15:55] Do a [15:55] cd / [15:55] find -name bzrlib # :0 [15:55] 'bzr version ' should tell you [15:55] bzrlib [15:55] ah ic im doing a locate on bzr [15:55] "bzr" is a small script that calls into bzrlib [15:55] yeah thats what im looking for [15:55] It'll be inside your python stuff somewhere [15:56] so i can run it from a script [15:56] yeh...thanks [15:57] CameronP_: 'which bzr' should tell you and then 'bzr version' will tell you all the details, also, try 'bzr plugins -v' to see what plugins are installed and where [15:57] ah get_revision_delta in Branch [15:57] there we go === kiko-afk is now known as kiko [15:58] thanks vila [16:06] hmm what's confusing me now is in the pre_change_branch_tip state, the new_revid does not exist in the branch i have reference to [16:06] phinze: branch or repository? [16:06] which in a way makes sense, since it's *pre*, but i don't know how i can get a revision delta [16:06] ooo good call [16:06] doesn't exist in branch, might in repository? [16:07] yeah [16:07] cool; will look in that direction, thx [16:08] beautiful, now we're cookin with gas ;) [16:11] jelmer: i succesfully converted the containing repository to bzr now. can you give me a hint on how to use bzr join to join the former svn externals? i get errors about missing working trees [16:12] moldy: clone the external URLs at the places where they need to be in the tree [16:12] and then run "bzr join " [16:12] jelmer: thanks, trying that [16:14] jelmer: seems to work, nice. thank you (i also had to add a "bzr co" on the cloned path) [16:16] moldy: if you had a treeless repo, that might indeed be necessary [16:17] seems to be the default for svn-import [16:23] moldy: ah, yeah - that's correct [16:23] moldy: newer versions will tell you though that you need to run "bzr co" === beuno is now known as beuno-lunch [16:24] i see [16:26] (the trees aren't automatically created since they can take up a lot of space if you have a lot of branches) [16:26] jelmer: can i safely delete those .bzr.retired.0 files that are created by the joins? [16:27] moldy: yeah [16:28] ok, thanks for your help [16:59] Hello there, as a quick question, are "push" and "pull" symmetric? Is it safe to use them interchangeably, or is there more to a push than there is a pull? [17:03] tbradshaw_: they are symmetric [17:03] ah, that's great. Thanks, vila. :) [17:03] given that you switch your source and target branches when using them I mean [17:05] gnight all.. [17:05] tbradshaw_: the only edge cases where you can observe differences is regarding updating the working tree, but bzr does a good job of warning you when that occurs [17:05] CameronP_: night [17:05] heh, yup, I just ran into that [17:05] and the documentation provide was solid [17:05] s/provide/provided [17:05] CameronP_: did you file a bug regarding tbzr/upload interactions ? [17:06] .... === tbradshaw_ is now known as tbradshaw [17:08] how do i give a branch that uses a shared repo its own repo? [17:08] I ran into a bug in bzr 1.5 (the current version in debian stable) that prevents me from pulling [17:09] and so I had hoped to "cheat" but using the other side to push instead, where I'm using a newer version [17:12] ah, got it [17:13] hmm, no :) [17:14] I'm up against this bug: https://bugs.launchpad.net/bzr/+bug/307091 [17:15] Launchpad bug 307091 in bzr "Too many concurrent requests (dup-of: 246233)" [Undecided,New] [17:15] Launchpad bug 246233 in bzr "TooManyConcurrentRequests error when ssh connection fails (bzr crashes when pulling)" [High,Fix released] [17:15] is there a workaround? Could I generate one of those merge files, scp over, that directive file [17:15] and then do it that way [17:15] also, I had no idea I was going to trigger that bot [17:15] moldy: There's an option to 'reconfigure' to do that. [17:15] fullermd: i can also just branch from it, right? [17:16] Well, if you branch in the repo, the new branch will be using the repo too... [17:17] fullermd: ok, but branching from outside will work? [17:17] From doesn't matter; it's to that does. [17:18] ok, i see [17:18] I get the feeling that at least one of us is confused over what you're trying to accomplish, though. [17:18] fullermd: the big picture is that i am converting an svn repo, then re-organizing it [17:19] What would that clal for switching a branch to using an internal repo? [17:20] fullermd: i want the former svn branches to turn into standalone branches now [17:20] 'k, but why? [17:21] i don't really have any special reasons [17:21] disk space is not an issue, and it seems easier, less to worry about === beuno-lunch is now known as beuno [17:23] It saves IO as well as disk space, since various actions no longer need to copy stuff around. [17:24] About the only thing being standalone gains you in the general case is being able to mv it arbitrarily around the filesystem. [17:24] which is nice, for the moment [17:25] i am juggling with several svn/bzr repos/branches, it's easy to get confused at the moment :) i can always setup a shared repo later if i want to [17:27] moldy: try bzr reconfigure --standalone in the branches === deryck is now known as deryck[lunch] [17:33] jelmer: thanks [17:51] jelmer: not sure if you're aware, but there's a request from lifeless for us to upgrade PQM for bzr, but there's a new python-subunit dependency and we'd really like that in karmic before anything else (so we can backport to our repo) [17:51] jelmer: is that something you could help with? [17:52] mthaddon: I can request a sync I guess, that way we'll end up with subunit in karmic [17:52] That might require a freeze exception at this point though [17:52] james_w: ping [17:53] hi jelmer [17:56] mthaddon: you need bzr68? [17:57] james_w: I'm not really sure what that means... :( [17:57] bzr written in ALGOL 68? [17:58] mthaddon: you need a specific revision of python-subunit? [17:58] pqm depends on something in subunit revisions 67 or 68? [17:59] james_w: lifeless says in the RT that it depends on lp:~subunit/ubuntu/karmic/subunit/snapshots [18:00] mthaddon: ah [18:00] mthaddon: in that case you'd probably need a completely new package in Karmic since the one in Debian would be too old [18:01] jelmer: that's possible, yeah [18:01] jelmer: but debian is only one revision behind lp:subunit isn't it? [18:04] james_w: no, 11 [18:04] lp:subunit is at revision 79 [18:04] * james_w fails at subtraction [18:05] base 10 ? [18:06] mthaddon: but yeah, we can do it but it will require a freeze exception [18:07] james_w: cool, thx [18:08] mthaddon: you don't want to rely on me for this though [18:09] k [18:14] james_w: it's universe, no? [18:15] it is [18:15] lalalalalala what freeze? [18:15] :-) [18:15] heh [18:15] they are free with exceptions at this point in the cycle [18:16] just needs someone to explain why they want it and that they have done some testing [18:16] I mean, I can go make sure that -release doesn't care... I assume it has a relatively short build time? (like prolly minutes or less on i386/amd64)? [18:16] probably [18:16] 4 minutes on ia64 [18:16] so... you've tested it and you're happy with it? [18:17] I haven't looked at it [18:18] ah. well, I expect _someone_ of the gang has, since it's a dep of sutff they're using all the time,... [18:18] * lamont goes to prod the right people [18:21] james_w: since lifeless is the one asking for it, I'm gonna assert that either it's good, or he's gonna fix it. if you'll package it, I'd be happy to give it a quick blessing and upload it, or you can... ok? [18:21] I can upload [18:22] he's packaged it [18:22] it looks like, at least [18:22] thanks. feel free to just do so. RM slangasek said he won't kill me for shoving it that way [18:22] I'm just busy with other things right now, so don't want to get pulled in to this [18:22] ah. so it's already packaged? [18:22] and if we just bzr branch from the snapshot, it should be shiny? [18:22] well, the branch referenced in the RT is package branch [18:23] \o/ [18:23] mthaddon: you wanna play with the packaging and then I'll upload it? [18:24] erm, will give it a go [19:00] hmm so i'm trying to iterate on all new revisions in a pre_change_branch_tip hook [19:00] i've got my logic down but then realized it was only running on the last revision being pushed [19:00] so i was trying to do something with range(params.old_revno + 1, params.new_revno) [19:01] but i can't figure out how to convert each revno into a revid ... i ask the branch and it says "nope i don't have that revno just yet" [19:01] need revids so i can get trees/deltas [19:01] from the repository [19:02] any help much appreciated... brb for a quick mtg :) [19:17] Peng_, I've *just* realized that your tshirt never got shipped [19:17] and, doing the process again, the world-wide shop doesn't let me ship to the US [19:17] and the US shop doesn't have LP tshirts [19:17] grrrrrrrrrrrrrrrrrrrrrrrrrr [19:55] so i'm still working on detecting whether a given path is changed in a pre_change_branch_tip [19:55] i'm trying to figure out whether what i need be figuring out is how to iterate over each revision in the branch change [19:56] or if i need to be figuring out how to get a delta that covers the entire span of the tip change [19:57] i've been learning a lot from the API docs, but it's taking me a lot longer at this juncture since i don't know which direction to look in [20:15] hey, I have a project that has its versions controlled with bzr, I just did few uncommit operations, and I would like to lighten my repository slightly.. [20:15] is there a way of removing those old packs? [20:15] without breaking anything [20:16] heh google was faster [20:16] or not [20:18] Milo-: a little quiet in here today [20:18] check out https://bugs.launchpad.net/bzr/+bug/43753 [20:18] yup it is [20:18] Launchpad bug 43753 in bzr "uncommit option to remove revision data from repository" [Medium,Confirmed] [20:19] looks like there's still no support as yet built in, but there's aplugin linked there [20:19] I see [20:23] nice, a plugin without readme :) [20:23] i believe the correct term is "self documenting" ;D [20:24] no idea how to use that ... [20:24] * phinze will pull it and take a quick look [20:24] it just has one __init__.py file [20:25] and reading it gives me no hint at all. [20:25] ah, you just drop the directory into ~/.bazaar/plugins/PLUGIN_NAME/__init__.py file [20:25] so it looks like that path format ^^ [20:25] assuming you're on some sort of unix variant [20:26] if you put it in the correct place, bazaar automatically loads it [20:27] and you'll get "bzr remove_revision" looks like [20:28] http://bazaar-vcs.org/BzrPlugins <-- for more info on bzr plugins [20:31] phinze, Milo-: plugins are usually installed by `bzr branch plugin/url ~/.bazaar/plugins/pluginname` [20:31] yes I see [20:31] where pluginname is a valid python identifier, ie, strip the leading 'bzr-' [20:31] wahey - there's even a convention ;) [20:31] gah, it's bzr remove-revision :) not the way phinze said it :) [20:32] * phinze blushes, tries in vain to cover up large NEWB letters flashing above his head :) [20:33] I get error when I run that command [20:36] well, can I just rm obsolete packs? [20:37] yes [20:37] I do all the time [20:49] I was wondering if someone here knew how to setup email notifications for pushes / commits to a master branch. [20:49] i'm pretty sure this is possible given https://lists.ubuntu.com/archives/bazaar-commits/ [20:50] but my googling failed to find documentation on how to fix this [21:01] Milo-: don't delete the directory, but you can delete the *content* of obsolete_packs [21:01] moimoin [21:02] bzr 1.17, "bzr help commands' encounters internal error. Fresh install. Anything I should look at? [21:03] Goosey: windows? [21:05] lifeless, ah yes. Windows XP [21:05] installed with the standalone installer [21:08] Goosey: upgrade to 1.17.1 [21:08] there was a bug in the packaged version of one of the plugins [21:08] nothing serious [21:08] just caused 'bzr help commands' to fail [21:08] (and nothing else, IIRC0 [21:18] jam, sure enough. thanks [21:25] twohey: hi [21:25] twohey: the stuff on bazaar-commits is just done by devs installing bzr-email [21:26] twohey: if you're using bzr+ssh you can do the same on a server by installing and configuing bzr-email on the server [21:27] lifeless: thanks. [21:28] is there documentation for bzr-email? I can't seem to find anything on how to set it up [21:28] its a plugin, so that part is generic [21:28] then bzr help email [21:28] should have known, thanks [21:31] jam: bug 402652 [21:31] Launchpad bug 402652 in bzr "smart fetch for --2a does not opportunistically combine groups" [Critical,Fix committed] https://launchpad.net/bugs/402652 [21:33] lifeless: do you have a question? [21:34] jam: IIRC I reviewed it [21:35] jam: was there more to do before landing? [21:35] lifeless: is that the groupcompress sort order portion? [21:35] That has landed in 2.0 and trunk [21:35] ah. the robert is awake but confused event [21:35] cool, I'm glad that that has landed [21:49] ok, reviews for 2.0 done [21:49] I thnk [21:58] hi jam [21:58] hey [21:58] so, I've reviewed ians patch [21:58] andrew is doing insert stream [21:59] you and I were bouncing group combining around [21:59] are you still looking at group combining, or should I pull your progress and continue? Alternatively I could do the tests for the conversion bug that I deferred [21:59] or pick up the content filtering patch and work on that [22:00] I'm still working on the group combining [22:00] I think I have a decent heuristic [22:00] I just need to [22:00] 1) add tests and tie it into insert_record_stream [22:00] 2) Check that we don't end up with issues with Remote streams [22:00] since I think I determined that they will call insert_record_stream() 1/group [22:00] which negates the benefit of what I'm doing [22:00] I'll look at 2 for you now [22:01] So either we need to persist a group between groups [22:01] or combine the stream into a bigger stream [22:01] I favor the latter [22:05] um.... [22:05] jam: I'll have it done in about 10 minutes I think [22:05] lifeless: running "bzr selftest -s bt.test_repository.Test2a.test_autopack_unchanged_chk_nodes" is taking 5.3s for me [22:05] but if I do "--lsprof-tests" it drops to 1.3s [22:05] ! [22:05] sorry, 1.8s [22:05] wow [22:05] yeah [22:05] lsprof makes our code go faster. [22:05] [kidding] [22:06] lifeless: same results if I do '--lsprof-file ,,foo.txt' [22:06] thats not something I saw coming [22:06] I guess I just dropped to 3.8s, and now 1.7s [22:06] very weird [22:07] anyway, still 'tree.commit()' 20 times shouldn't really take that long... [22:07] hmm, actually this may be trickier [22:07] jam: locking is slow - are you on windows? [22:07] yeah [22:07] still way too long, IMO [22:07] I agree; not sure how to fix it. That test does want separate packs [22:08] uhm perhaps suspend_write_group+resume_write_group [22:08] or [22:08] memorytransport [22:08] the latter I think would be better [22:08] tree = self.make_branch_and_memory_tree('tree', format='2a') [22:08] 1325ms [22:09] unless a memory tree is still backed by the real disk repo [22:09] it is [22:09] you need [22:09] self.vfs_transport_factory = MemoryServer [22:09] and then that [22:10] 421ms [22:10] a decent improvement [22:10] better indeed [22:10] and that includes test-suite setup overhead [22:11] 312ms if it isn't the first test being run [22:11] still fairly surprising given what it should actually be doing... but at least it isn't terrible now [22:12] changing to TestCaseWithMemoryTransport would reduce some overhead too [22:13] and further still when I fix bzrlib.config to not write to disk, and bzrlib.bzrdir.clone to not search unconditionally for repository policies (which is a reason we have to have the fake containing dir on disk) [22:14] netbeans export at 118K/133K [22:14] 103G [22:15] ouch [22:15] it will be _very_ interesting to see what bzr makes of this tree [22:16] I'm hoping it will be an eat-their-lunch event [22:16] either way we'll learn something [22:16] hmm, this needs an object. [22:16] refactorating [22:17] ok: for remote streams [22:17] I'm on it. [22:18] no direct tests, and its going to need them now; I'm going to write one small test for this specific case, refactor, and push a branch for you to merge into your work. [22:18] First though, I need a drink, bit dehydrated === beuno is now known as beuno-on-vacatio [22:18] k [23:05] hi! [23:06] I'm wondering what the canonical (no pun intended ;-)) way of doing this in bzr is. Suppose I have a branch of a project, with commits A -> B -> X -> Y, up to B is pushed to launchpad [23:06] someone did a code review of B, and X, Y is the start of a bunch of new functionality [23:06] so, I guess moving X, Y into a new branch would make sense [23:07] lifeless helped with this, this command: bzr branch . ../positioning-gpsd; bzr pull . --overwrite -r -6 [23:07] now, once I fix the things the review hinted at in the main branch I would like to have these changes also be done in the new functionality branch, of course [23:07] in git, i would do this with rebase [23:07] how do i do this in bzr? [23:07] cd new branch [23:07] bzr merge old branch [23:07] [review] [23:08] bzr commit [23:08] That sounds like a pretty roundabout way of doing bzr branch -r-6 . ../p-g [23:08] fullermd: no, its kindof the reverse === kiko is now known as kiko-afk [23:09] lifeless: wait, merge the old branch from the new branch? [23:09] It huh? [23:09] I do actually do this, right: bzr branch . ../positioning-gpsd; bzr pull . --overwrite -r -6 [23:09] It's the same thing, just directly expressing what's being done instead of backing and filling.. [23:09] lvh: you want the reviewed changed from the older branch in the newer branch ? [23:10] lifeless: Ah, I was thinking of not having two separate branches anymore, but yeah I gues sthat makes sense too [23:10] eg have the branch just be a temporary container for commits [23:10] but your way makes more sense, never mind :-) [23:10] lifeless: thanks again! [23:10] fullermd: it is, except that the branch dirs are reversed the other way, which, when you're thiking abuot a problem a specific way is confusing. [23:11] lvh: Well, once you merge, you _do_ just have one branch :) [23:11] fullermd: Feeling philospohical today? [23:11] lifeless: Oh, I overread the 'cd' in the middle. [23:11] fullermd: the old branch disappears? [23:11] hello all [23:11] lvh: no, it doesn't. [23:11] or two directories in the same state [23:12] plus or minus a few branch specific commits [23:12] It _can_, since you have all its revs. Unless you need to keep it aroudn for somethign else. [23:12] lvh: the old branch is untouched. the new branch has the changes you made in old merged into it, [23:12] lvh: so the old branch isn't needed at that point, thats all that fullermd is saying, I think. [23:12] hi poolie [23:13] oh, right [23:13] I'm always feeling philosophically. It's just usually not very cogent or meaningful :p [23:13] thats okay, I have a quickly learning heuristic filter [23:13] (if lifeless: pay attention else: ignore) [23:14] Excellent. We always need more quick learners 8-} [23:26] jam: done [23:29] mm [23:29] hello jam [23:29] bzr push ../foo with uncommitted changes in . pushed those changes to ../foo as uncommitted there >< [23:29] surprising [23:30] jam: lp:~lifeless/bzr/adjacent-streams - merge that [23:30] poolie: james_w rebuilt the debs last night. [23:30] poolie: I haven't manually confirmed they are green yet, but they should be. [23:34] that's great [23:34] vila: are you still here? [23:35] no :) [23:35] bialix: Won't stay long, but I'm listening to you [23:36] config.py AuthenticationConfig [23:36] get_user and get_password [23:36] which transport can trigger them? [23:36] all [23:36] we have bug in qbzr, re bzr-svn [23:37] jelmer insist bzr-svn uses these methods [23:37] ach, bzr-svn :-/ [23:37] I'd like to test my bug fix w/o svn [23:37] so, bzr+ssh? [23:37] or sftp? [23:37] what do you mean by 'jelmer insist' ? [23:38] wait a sec, I'll show bug number to ubottu [23:38] all transports can potentially make use of auth.conf, that's less useful for ssh because there are better solutions there (ssh agents and .ssh/config) [23:38] https://bugs.launchpad.net/qbzr/+bug/418252 [23:38] Launchpad bug 418252 in qbzr "attempt to check out SVN repo never gets anywhere" [High,Confirmed] [23:39] * bialix waves to emmajane [23:39] * emmajane waves to bialix [23:40] I like design #2, but I've already wrote this [23:40] vila: paramiko as ssh agent can use auth.conf [23:41] err [23:41] vila: paramiko as ssh client [23:41] yes [23:41] * vila reading the bug report [23:41] so, which transport will trigget get_user? [23:41] any transport can [23:42] bialix, excellent :) [23:42] so you can test with whatever is easier for you [23:43] vila: for local testing I'd prefer stick to sftp/ssh [23:43] there shouldn't be any difference from bzr-svn if I read jelmer comments correctly [23:44] so, if you can get get_user/get_password called from the command line, the same should occur from tbzr [23:44] vila: I have fuzzy feeling that sftp/ssh transport deduce user name somehow [23:44] vila: this is my question actually: how can I force get_user ask [23:44] things have changed in this area... but I can't point to when exactly [23:45] I can use ftp [23:45] you can force get_pasword by connecting to a host where your key is not authorized or temporarily rename your key to force a password check... [23:45] ftp is simpler :-) [23:45] get_password is not problem [23:46] qbzr lacks get_user implementation [23:46] I don;t remember I ever seen prompt for user name with bzr CLI [23:46] bialix: just look at the bzrlib tests then ! get_user is tested almost like get_password [23:47] bialix: We didn't have get_user for a very long time because it's very rarely used, I think we first need it for an http server [23:50] lifeless: jam says he's finished working for the day, so if you want to take over that would be good [23:50] don't wait to hear back from him [23:50] heh, chinese whispers [23:50] ok [23:50] he says its just tests and glue [23:50] I'll start with glue. [23:51] vila: test_config tests very low level API [23:52] vila: I can't test with http, heh, have to find some open svn repo to test this [23:53] bialix: test_ui not test_config [23:54] test_ui? [23:55] bzrlib/tests/test_ui.py contains test for get_username [23:56] yes, but it's low level too [23:57] ok, vila, perhaps we both need to go offline till tomorrow [23:57] what's wrong with low level tests ? You want low level tests for your qbzr implementation right ? [23:57] bialix: yeah, good idea :) [23:57] no, I want high level [23:57] manual test with real access to real branch [23:58] heh [23:58] gnight vila [23:58] :-) [23:58] bialix: let's talk about that tomorrow then :) The problem with manual tests is that... you pay in blood every time you run them :) [23:58] * bialix waves [23:58] tomorrow [23:59] pay in blood? scary [23:59] * bialix finally disappear