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

igcmorning00:00
=== mwhudson_ is now known as mwhudson
=== mw is now known as mw|out
jelmerhmm, 43 % of all bzr-svn bugs will be fixed in 0.4.11. I wonder if we'll be able to make that 50...00:39
spivHeh.00:39
spivjelmer: hmm, current 'stable' branch is extremely slow for me when pulling my twisted import00:43
jelmerspiv: What step is slow?00:44
spivjelmer: the progress bar keeps jumping back.  http://rafb.net/p/SPzipu87.html00:44
jelmerlooks like it's finding tags00:46
jelmerdoes twisted have an awful lot of them perhaps?00:46
spivI guess it might.00:47
spiv$ svn ls svn+ssh://cvs.twistedmatrix.com/svn/Twisted/tags | wc -l00:47
spiv15200:47
spivApproximately one for each release (including rc and alpha releases) until Twisted 2.2 or so, when the release process changed, I think.00:48
spivI suspect Twisted isn't going to be unusual in doing that :)00:49
ChristopheTjam: Are you sure chmod is to set g+w?  I tried without setting the proper umask on the server and g+w was not set.00:53
ChristopheTAnyway, I have a small patch available.  Do I send it to the ML or do you want to see it first?00:54
Odd_BlokeMoin.02:16
jelmerhi Odd_Bloke02:16
jelmerOdd_Bloke: You're not in the UK?02:21
Odd_Blokejelmer: Yeah, but have weird sleeping patterns. :D02:27
jelmerah :-)02:29
spivjelmer: I filed a bzr-svn bug for you, I got an error when I left that bzr pull run to completion.02:30
jelmerspiv: Thanks02:31
* Odd_Bloke --> breakfast02:37
jelmerok, that's even more weird than my sleeping patterns02:37
* igc lunch02:55
libwilliamI've got a question/comment. I was wondering why bzr modified isn't in the user reference list. Also it seems like bzr ls should have a --modified option.03:04
Odd_Blokejelmer: :D03:04
libwilliamAlso is there a way to get a list of removed files. That would be another option I think bzr ls should have.03:04
libwilliami know i can get them with status, but I meant the removed files alone03:05
Odd_BlokeI decided to be on Australian time for a while, and am now adjusting back for something I'm doing this weekend.03:05
Odd_BlokeAlso, I work best at night.03:05
bob2bzr status -S | awk '/^R/ {print $2}' or something03:07
libwilliambob2: ill mess around with that, thanks, didnt think about that03:11
Odd_Blokepoolie: When you're free, a chat would be good. :)03:20
meteoroidpoolie rawks :-P03:27
meteoroidi'd like to expose my bzr branches over http and i'm unclear from the documentation on how to do so03:31
meteoroidany help would be much appreciated :)03:31
Pengmeteoroid: You can just put them in some location served by Apache or whatever. You don't need to do anything else.03:31
meteoroidi have heard that, but had trouble with it in the past03:32
PengYou *can* set up an HTTP smart server if you want to, but it's not necessary.03:32
meteoroidare there any docs?03:32
meteoroidi'd like to set up for http commit03:32
Pengmeteoroid: Well, you shouldn't have.03:32
Peng??03:32
meteoroidso people don't need ssh03:32
meteoroidi know i shouldn't have, that's why i ask about docs..03:32
PengOh.03:32
meteoroidi must have missed something..03:32
PengErr, I'm not sure you can.03:32
meteoroidand yeh, a lot of my collaborators are ubuntu users, so getting bzr is no big.03:32
PengWriting over HTTP requires WebDAV, right?03:32
meteoroidnot sure i can what?03:32
Odd_Blokemeteoroid: vila has recently published the webdav plugin.03:32
meteoroidOdd_Bloke: url?03:32
* meteoroid would welcome half-working experimental code03:33
Odd_Blokemeteoroid: https://code.launchpad.net/~bzr/bzr.webdav/webdav03:33
meteoroidis it in pypi?03:33
Odd_BlokeIt's marked as only working for bzr 1.6, but will probably work before that, it just hasn't been tested.03:33
meteoroidhm, i seem to have 1.3.103:34
meteoroidi should be compiling from source..03:34
meteoroidbut, yeh, i'd like this setup to work with what ubuntu is shipping..03:34
bob2sftp or bzr+ssh will be less hassle03:35
poolieOdd_Bloke: oh hi03:35
Odd_Blokepoolie: Hey.03:38
pooliehello03:38
pooliedid you want to talk here, on private irc, or on the phone03:38
Odd_Blokepoolie: PM?03:39
=== bigdo2 is now known as bigdog
Odd_BlokeI have two different Test classes, both of which have a setUp method.  I also have one test which requires the setUps of both Test class.  How should I go about combining them?  Is there something better than copy-paste?04:08
bob2C inherits from both of them, it's setUp consists of A.setUp(self);B.setUp(self)04:20
Odd_BlokeI tried that, I think C then ends up with all of the tests from A and B being run twice.04:22
Odd_BlokeI'll double-check though.04:22
Odd_BlokeIt does run all the tests from A and B twice.04:30
=== Linnk is now known as Tank|Away
Odd_BlokeHowever, it has also allowed me to debug the test which shares the setUps, so it's not a total loss.04:31
Odd_BlokePerhaps extract the setUp for A and B to A' and B'.  A and B then each subclass A' and B' and C subclasses both A' and B'?04:32
spivOdd_Bloke: yeah, separating the setUps from the classes with the test methods sounds like a good start04:33
spivDepending on what those setUps do, you might even be able to extract them into a non-TestCase object entirely.04:33
spivLike how some bzrlib tests do things like "smart_server = bzrlib.smart.server.SmartTCPServer_for_testing(); smart_server.setUp(backing_transport=blah); self.addCleanup(smart_server.tearDown); ..." in test bodies.04:35
spivBut your arrangement with A' and B' sounds ok too.04:35
Odd_BlokeSoo, bzr-email and the PQM test suite shouldn't be mixed. >.<04:45
Odd_BlokeIf I want to exclude a specific directory under a more general directory (in this case ~/devel/pqm/work/_trial_temp underneath ~/devel/pqm) from using bzr-email, do I do it in ~/.bazaar/locations.conf?04:47
spivOdd_Bloke: If the PQM test suite used bzrlib.tests.TestCase, it ought to be insulated from your ~/.bazaar configuration.04:50
Odd_BlokeHmm, thumper has a patch for exactly this.04:51
=== rockstar` is now known as rockstar
=== abentley1 is now known as abentley
Odd_BlokePQM merge-directives patch just sent to the ML.06:19
lifelesspygi: quite well recieved, but a self selected audience06:38
lifelesspygi: 20 or so people, all but 4 already love bzr :)06:38
lifelessjam: I will check when I get to the uni06:38
poolielifeless: it looks like branch --stacked still copies all the data from the source repository07:29
pooliethis is in the top of your baz2.0/shallow-branch07:30
poolieam i just using out of date code, or do i need to fix this?07:30
Odd_Blokejml: What was the name of the todo-list website you were looking at?07:37
mwhudsonrememberthemild07:37
mwhudsonrememberthemilk07:37
mwhudsonremember the mild sounds like a good idea of a different sort...07:37
Odd_Blokemwhudson: Thanks. :)07:38
Pengmwhudson: Can I bother you about Loggerhead?07:38
mwhudsonPeng: not really, it's end of day time here07:39
mwhudsonPeng: but if you're quick...07:39
Pengmwhudson: Oh. Yeah, not very quick..07:39
mwhudsonPeng: bugs and or email then please07:39
Pengmwhudson: Email to? Bazaar-list?07:40
mwhudsonPeng: yeah, sounds good07:40
liw"And man, major WTF at using Bazaar. :)" (in the comment section, fairly close to the end, of http://community.livejournal.com/evan_tech/248736.html)07:46
liwI know bzr isn't as popular as git, but... "major WTF" for using it? tsk.07:47
lifelesspoolie: I was fairly sure there were tests to catch this;  its possible there are not though07:51
tim__nick thumper07:52
tim__damnit07:52
=== tim__ is now known as thumper
lifeless:)07:52
lifelesspoolie: abentley's policy work may help too07:53
poolielifeless: what branch would those tests be in?08:11
pooliecan you check you've pushed all your work on it?08:12
poolieafaics aaron's work doesn't change it08:12
poolieit might though08:12
pooliemaybe i should try the merge anyhow08:12
poolieat least in a separate workspace08:12
lifelesspoolie: I have08:13
lifelesspoolie: got a machine to setup sorry08:13
poolielifeless: i don't mind fixing it, i just want to avoid rewriting code that exists on your laptop or something08:14
poolie"I have" -- checked you've pushed it?08:14
poolieok, thanks08:14
pooliei tried the stacking-policy branch; it still copies the contetn08:26
lifelesspoolie: urgh. I suspect a race condition in clone()/sprout()08:28
pooliei should have tried this a few days ago08:29
pooliei've been chasing the wrong geese08:29
lifelesspoolie: group compress is looking nice btw - I can compress bzr.dev's texts down to 16MB08:31
bob2wow08:32
thumperlifeless: what is it normally?08:37
thumperpoolie: hi08:37
pooliehi thumper08:37
lifelessdu -sh test-repos/bzr.dev.-100/.bzr/repository/packs/08:39
lifeless74M     test-repos/bzr.dev.-100/.bzr/repository/packs/08:39
lifelessthumper: which includes inventories and revisions too though08:39
thumperlifeless: that is very impressive08:43
bob2btree indices save more than 50%, too08:44
lifelessok, strict bzr.dev gets down to 12M08:51
bob2is groupcompress hooked up the ui at all?08:52
lifelessits a VF object at the moment08:52
lifelessthumper: ping08:54
lifelessthumper: the local playground is up at 10.2.13.7508:54
lifelessthumper: I need you to find olav, and send him my way on IRC or real-world08:55
beunolifeless, hey there. I've been hearing great things about you in Guadec!  Having fun?08:59
lifelessbeuno: yes indeed09:02
lifelessbeing eaten alive by mosquitos09:02
Odd_Bloke(NOM NOM NOM)09:02
beunook, off to work, bbiab09:08
lifelesspoolie: ping09:11
poolielifeless: pong09:17
lifelesswhats the mailman padmindb password these days09:17
lifelessjamesh: ping, can you come over09:18
lifelessthumper: jamesh: pikng09:24
thumperlifeless: here09:25
thumperlifeless: I don't have popups with irssi09:25
lifelesscan you and jamesh pop over, I can't really come to you09:25
Odd_Blokethumper: lifeless: poolie: Is it OK if I go ahead and create the pqm-dev team?09:32
jameshlifeless: sorry.  was away.  Where are you?09:34
lifelessstudent computer lab09:34
lifelessOdd_Bloke: I've created it09:35
Odd_Blokelifeless: Cool, thanks.  I've just applied.09:36
lifelessOdd_Bloke: I'm a bit confused about what the team is meant to imlpy though09:37
lifelessif its commit access to trunnk, which I labeled it as, then clearly its just me today.09:38
lifelessif its not commit access to trunk, then what is it09:38
Odd_Blokelifeless: I think it's probably for people who are expected to have commit access at some point.09:38
Odd_BlokeAt the very least, it'd be good to have a team that can manage the bugs.09:38
lifelessdo you not have the needed permissions todayt?09:39
Odd_BlokeI can't change Importance of bugs.09:39
lifelessok, lets fix that09:40
beunomwhudson, merged trunk into loggerhead-searched and pushed revo 27309:40
beunolifeless, thanks for pushing the merge  :)09:41
lifelessbeuno: my pleasure09:44
lifelessbeuno: ping10:09
lifelessbeuno: does the loggerhead gnome theme branch have bzr-search merged?10:10
beunolifeless, yeap10:11
PengDoes Loggerhead trunk or bzr-search_integration work with bzr.dev?10:11
beunoPeng, both do10:11
PengHeck, I'll switch to bzr-search_integration, then.10:11
beuno1.5+ AFAIK10:11
beuno:)10:12
beunohopefully trunk will become lh-search soon10:12
PengYeah, I was expecting that to happen faster..10:12
Odd_Blokelifeless: I'm a little confused by what pqm.ui.twistd.QueueResource.render is doing (http://tinyurl.com/5jptpr for reference).  Should both of the "len(request.postpath) > n" be "len(request.postpath) >= n"?10:13
lifelessOdd_Bloke: no :)10:13
lifelessOdd_Bloke: have a look at what the data is, it may help10:14
Pengbeuno: Like, how soon? Do you have a specific plan? If I switch now, will you suddenly merge it into trunk tomorrow?10:14
lifelesspoolie: deends on mwhudson10:14
lifelessPeng: ^10:14
lifelesspoolie: soorry\10:15
PengWell.10:15
beunoPeng, "in the next few days"10:15
PengOh, nice.10:15
Pengbeuno: Is the search branch considered reasonably stable?10:15
beunoPeng, gnome has been using it, and I haven't heard any complaints10:15
beunoI think it's stable enough to be used in most enviroments, yes10:16
PengWill search indexes be created automatically?10:16
beunono, that's one of the remaining issues10:16
beunothey do get updated automatically, but that's due to bzr-search's magic, not LH10:16
Odd_Blokelifeless: I would expect "localhost:8000/project" to go to project's page.  ATM, however, it would go to the main page.10:17
lifelessOdd_Bloke: it doesn't seem to is what I'm saying10:17
Pengbeuno: So, if there is no index, what happens? it's eternally slow?10:18
lifelessOdd_Bloke: as in, projects are in use at the moment, and it works last I heard10:18
beunoPeng, nope, it ignores everything, and search doesn't return any results10:18
PengHaha.10:19
PengSince I don't want to bother to index anything, I guess I won't do it, then.10:19
lifelessPeng: 'bzr index' once on the things you want to index10:19
Penglifeless: Yeah, but I don't know what should be indexed. I'm not an upstream developer; I don't have any trunk branches.10:20
lifelessPeng: well, you're running loggerhead on some branches you want to look at10:20
PengSo apparently knit repos can't be indexed?10:23
PengActually, no, even a pack repo tracebacks about weave_store.10:24
PengOoh.10:25
Odd_Blokelifeless: Ah, I was being confused by a lack of a '/' at the end of the URL.10:25
PengI'm sorry, false alarm. One copy of bzr-search was out-of-date.10:26
lifelessPeng: :)10:33
PengAlso, when "bzr index" uses 220 MB of RAM, and my VPS has 360 MB of RAM, that becomes a bit of a problem..10:34
PengAlso also, I still got a weave_store traceback.10:34
PengScrew this. I'm reverting.10:37
lifelessPeng: your loggerhead?10:46
lifelessPeng: or the index creation ?10:47
lifelessPeng: uhm, ratchet down the group size in index.py will reduce memory use10:47
LarstiQhatchet it down? :)10:47
Penglifeless: The original weave_store tracebacks were from index, but upgrading bzr-search fixed them. The new ones were from Loggerhead.10:47
lifelessPeng: sounds like an old loggerhead too then10:48
Penglifeless: I had just merged bzr-search_integration, which just merged the trunk.10:48
lifelessbue^10:48
lifelessbeuno: ^10:48
beunohm10:49
beunoyes, lh-search has the latest and greatest10:49
beunoPeng, LH is using the memory, or creating the search indexes?10:50
Pengbeuno: Sorry, index was using the memory.10:50
PengUm, actually, that traceback was from a branch that either had no index or a broken one.10:51
Penglifeless: What all does index creation modify? Just .bzr/bzr-search. Or in other words, what do I delete to make it go away? :)10:51
* beuno throws the ball back to lifeless 10:51
PengHaha.10:51
lifelessPeng: .bzr/bzr-search10:52
Penglifeless: Thanks.10:52
lifelessbeuno: I was saying LH was erroring, bzr-search is using the memory10:52
lifelessPeng: like I say though, edit index.py, look for group_size10:52
lifelessset that to 1 for minimal memory use10:52
beunoPeng, can you paste the traceback?10:53
Pengbeuno: http://paste.pocoo.org/show/78956/ (it's the same traceback all 4 times)10:53
Penglifeless: Thanks, but I'll just live without those branches being indexed for the moment.10:53
Penglifeless: Does searching suck much RAM?10:54
beunoPeng, are you running bzr.dev with the latest bzr-search?10:54
Pengbeuno: I should've been.10:54
lifelessPeng: searching should not suck much10:54
lifelessbeuno: can you advise on something10:54
Penglifeless: That's good. Thanks.10:54
lifelessbeuno: if you go to http://bzr-playground.gnome.org/gnome/CWordHelper/trunk/changes, and do a search10:55
lifelessbeuno: a) why does it end up on bzr-gnome.canonoical.com10:55
Pengbeuno: I had just switched Loggerhead from using the system bzr 1.5 to my copy of bzr.dev with bzr-search, and I never confirmed it actually worked.10:55
lifelessbeuno: and10:55
beunoPeng, that seems like a bzr-search <> bzr problem with lifeless's VersionedFiles thingie10:55
lifelessb) why doesn't the search box popup show10:56
beunolifeless, hm, that's odd10:56
PengCanonical host's Gnome's Bazaar?10:56
PengErr, hosts*10:56
lifelessPeng: we host svn.gnome.org I think too :)10:56
Penglifeless: You're right. That's nice.10:57
beunolifeless, it seems LH is finding the *.canonical URL instead of the *.gnome one, and setting that10:57
beunofind as you type should work though10:57
lifelessbeuno: where does it look though?10:57
beunoit probably doesn't due to cross-site-scripting protection10:58
loolHey folks11:00
loolWhen bzr branching casper under hardy and Debian sid I get:11:01
loolKnitCorrupt: Knit 9e/x_%254datt_%255aimmerman_%253cmatt.zimmerman%40canonical.com%253e_%2553un_%254dar_13_00%253a51%253a19_2005_1366.38 corrupt: line-delta from stream for version mdz@mizar-20051205230117-c327e75be767f237 references missing parent Arch-1:matt.zimmerman@canonical.com--2004%casper--main--0--patch-2111:01
beunolifeless, it seems paste is resolving to that host11:01
loolI'm suggested to run bzr check or reconcile, but is there any risk for the lp repo?11:01
loolI wouldn't want to break the casper bzr repo on lp11:01
lifelesslool: I suspect you have a bug in your bzr that we fixed11:02
lifelesslool: what version do you have?11:02
loollifeless: hardy's and sid's versions11:02
loolThat'd be 1.5-1 and 1.3.1-111:02
loolWell the opposite11:03
lifelesslool: please try 1.6b211:03
loolIs this in some ppa?11:03
loolI don't see it in intrepid11:03
lifelesslool: but its possible that there is some problem11:03
lifelesslool: yes11:03
lifeless'bzzr' ppa11:03
loolThat guy exists but doesn't have a ppa :)11:04
Penglifeless: ~bzr's ppa only has 1.5.11:04
lifelessoh, the bzr-beta one then11:04
loolI see no bzr-beta ppa11:05
loolAnd indeed ~bzr only has 1.511:05
mattionshey guys11:05
mattionshello11:06
lool~bzr-beta-ppa11:06
lifelesshttps://launchpad.net/~bzr-beta-ppa/+archive11:06
lifelesshi matt11:06
lifelessions11:06
PengBye matt ions.11:07
lifelessbeuno: I see no search requests in th eloggerhead logs11:07
lifelessbeuno: could the jscript not be loading in the client?11:07
beunolifeless, it probably isn't, yes, because it's on a different host, and browsers have cross-site-scripting protection11:08
mattionshi lifeless, sorry xchat wuit11:08
lifelessbeuno: so, why is it detecting this other host, how do I fix that11:09
PengWhy does LH insert the full URL into links so often?11:09
beunothat means, to some extent, the browser is also confused on what the hosts are11:09
mattionscan anybody have a quick look to this stacktrace http://paste.ubuntu.com/26174/ ?11:09
loollifeless: It isn't fixed in 1.611:09
lifelesslool: ok; can you chat to colin watson?11:09
lool1.6~beta2-1~bazaar1 is the hardy version I tried11:09
loollifeless: Colin suggested me to come here :)11:09
lifelessoh11:09
beunolifeless, I'm trying to find where paste generates that, and why it would be detecting something else11:09
loollifeless: As he has been experiencing the same11:09
lifelessuhm, try grabbing the current source, then pulling the old source into your branch with pull --overwrite11:10
loolThe current source?  you mean the source package?11:10
lifelesslool: the current bzr tree11:11
loolOr only check out the latest revision?11:11
beunolifeless, did you kill LH?11:12
loolI'm doing bzr checkout --lightweight lp:~ubuntu-core-dev/casper/trunk11:12
loolInterestingly, when I bzr pull --overwrite it says: Using saved location: http://people.ubuntu.com/~tfheen/bzr/casper/trunk/11:12
loolit shouldn't use this saved location11:12
Penglool: "bzr pull --remember lp:~ubuntu-core-dev/casper/trunk" to change it.11:13
loolPeng: Thanks11:13
Peng(You can pass --overwrite too if you want to.)11:13
lifelessbeuno: back11:14
loolAll pulls returned "No revisions to pull" and bzr vis complained that my branch didn't support tags11:14
lifelesslool: with --overwrite ?11:14
beunolifeless, not for me  :)11:14
loollifeless: With overwrite11:15
loolLet me try again starting from the lightweight checkout and using unbind first11:15
loolbzr: ERROR: To use this feature you must upgrade your branch at bzr+ssh://lool@bazaar.launchpad.net/%7Eubuntu-core-dev/casper/trunk/.11:15
loolSo I'll skip unbind11:15
lifelesslool: just bzr branch the current trunk of casper, then pull --overwrite the old version you want11:15
loolI checked it out because I didn't know I could lightweight branch, but I'll try that11:16
loollifeless: I don't see how I can branch the current trunk11:16
loolHmm perhaps with revision11:17
loolNo doesn't work11:17
loolbzr branch --revision 516 or bzr branch alone fails with the KnitCorrupt error11:18
loolKnitCorrupt: Knit 9e/x_%254datt_%255aimmerman_%253cmatt.zimmerman%40canonical.com%253e_%2553un_%254dar_13_00%253a51%253a19_2005_1366.38 corrupt: line-delta from stream for version mdz@mizar-20051205230117-c327e75be767f237 references missing parent Arch-1:matt.zimmerman@canonical.com--2004%casper--main--0--patch-2111:18
loolI can't unbind without upgrading11:18
loolI could try to upgrade locally, unbind and pull --overwrite11:18
* lool lightweight checkout + upgrade => stuck: \ [============================================] checking repository format 1/111:20
* Peng leaves.11:20
loolNo progress anymore11:20
beunolifeless, are you running serve-branches or start-loggerhead?   can you try running the other one on a random branch?11:21
beunoI suspect it's the way serve-branches sets the URL11:21
lifelessbeuno: server-foo11:22
lifelesslool: sorry, I can't devote as much time to you as I'd like, my cycles are overcommitted11:23
loollifeless: I understand; how do we go forward with the problem?11:23
loolShould I file it against bzr?11:23
loolIt's effectively preventing Colin and I to work on the casper bzr tree which is used for the casper package11:23
lifelessbeuno: it was the ServerName in apache11:23
beunolifeless, self._url_base = environ['SCRIPT_NAME']11:24
beunoyeah11:24
beunofound it  :)11:24
lifelesslool: its proably user data that has had something bong done to it; perhaps sftp interaction bug or something in the past11:24
loollifeless: Interestingly, I could branch from an older bzr version11:24
loolalioth's11:24
lifelesslool: so now pull --overwrite the newer one into there11:25
loolI have nothing to pull in particular11:25
DanyHi! I'm developer on a project opened on "http://forge.ocamlcore.org/". I have generated a key with "PuTTYgen" and I put it in my profil on ocamlforge. With this, I can connect me to the shell with the command "putty shell.forge.ocamlcore.org". I use bzr to make a branch of the project, it works fine. But the command "bzr push sftp://bzr.ocamlcore.org//bzrroot/pa-do/pa-do/trunk" gives an error.11:25
DanyThe error is : bzr: ERROR: Unable to connect to SSH host bzr.ocamlcore.org; EOF during negotiation11:26
lifelesslool: grab the alioth branch; cd to it; pull the launchpad branch11:26
Danyany suggestion?11:26
loollifeless: Ah I think I wasn't clear11:26
loollifeless: I could bzr branch the lp branch /from/ alioth11:26
loolUsing alioth's bzr11:27
loolThere's no branch hosted on alioth11:27
loolIt's just bzr 1.3-1~bpo40+111:27
lifelessDany: no idea sorry11:27
lifelesslool: can you run rsync that somewhere and then run check on it11:27
lool   112 inconsistent parents11:30
lool     5 revisions missing parents in ancestry11:30
loolI ran bzr reconcile and bzr checked again; I still have      5 revisions missing parents in ancestry11:31
looland 5 ghost revisions in all cases11:31
lifelesstry cloning that with modern bzr?11:32
lool-- I did the checks and reconciles with modern bzr btw11:32
loolbzr: ERROR: Revision {Arch-1:matt.zimmerman@canonical.com--2004%casper--main--0--patch-9} not present in "KnitVersionedFile(file:///home/lool/b/trunk2/.bzr/repository/knits/9c/x_%254datt_%255aimmerman_%253cmatt.zimmerman%40canonical.com%253e_%2553un_%254dar_13_00%253a51%253a19_2005_1366.36)".11:32
loolNB: The error is this only line now11:32
=== bac|away is now known as bac
lool(this is the error from branching the reconciled branch with modern bzr)11:33
lifelesssame thing11:33
lifelessfile a bug please11:33
lifelessdon't alter the lp branch11:33
loolI'll attach this IRC log11:34
* lool thanks and waves11:38
mtaylorlifeless: if I have two revisions, is there a "good" way to just get the list of revisions between them? (like a magic method to call somewhere?)11:39
lifelessmtaylor: graph.difference os some wuch11:40
mtaylorah...11:40
loolSorry, forgot to say I filed #24688011:40
lifelessmtaylor: g = repository.get_graph();11:40
lifelesslool: thanks11:40
loollifeless: thank /you/11:40
* lool goes for some lunch soonish now &11:41
=== bac is now known as bac|away
lifelessok. we're syncing again11:58
davidf1Hi all, I have a question to which I can't find an answer (but maybe I'm not looking good enough...). It is this: someone has started a project and committed lots of files to our repository. Most of it isn't used anymore, but some of it is. I started new projects with a clean structure. Is it possible to lift just a few files out of the old project with version history included? So, something like a merge, but without pulling in all unused stuff, revisions12:00
davidf1Sorry for the long read...12:01
Pengdavidf1: That ended with "but without pulling in all unused stuff, revision" and one more byte.12:02
davidf1Ai...12:02
davidf1So, something like a merge, but without pulling in all unused stuff, revisions and histories. I can merge the entire project and then delete all unused stuff, but that pulls in lots of history I don't use. Can I just merge a few files?12:02
davidf1Peng: thank you12:03
PengSprry, but I don't have an answer. Hopefully someone else knows.12:03
davidf1Peng: thank you for pointing out the missing text.12:03
Peng:)12:03
davidf1I'll wait for someone else to answer this (hopefully...)12:03
PengAlso, I was just about to go to bed. Good night (or, morning, or whatever).12:04
davidf1Peng: good night for you, then. Here, it's just after lunch, ;-)12:05
PengHere it's 07:05, but I have no sleep schedule. :D12:05
PengBye.12:05
davidf1Peng: you stayed up all night???12:05
luksthe problem is mainly in getting positions of the text line12:11
lukssorry, wrong channel12:11
lifelessdavidf1: the history for the files you want is mingled with the history you don't want; its possible to write ode to generate new history with matching dates etc for only the file syou want, but it won't be mergable after that; and we haven't got a canned solution too this12:12
davidf1lifeless: ok, thanks. I'll merge the whole project then and remove all unnecessary parts. A bzr log <file> should still only give the relevant history, right?12:16
lifelessdavidf1: yes12:16
davidf1lifeless: thanks!12:16
Odd_Blokelifeless: I've just checked and I still can't edit PQM bugs.  I think you need to set PQM's bug supervisor to the pqm-dev team...12:30
lifelessOdd_Bloke: ok12:31
lifelessOdd_Bloke: done12:47
jelmerhi lifeless, Odd_Bloke12:48
thumperlifeless: I've just applied to join the pqm-dev team too12:48
lifelessk12:49
=== bac|away is now known as bac
Odd_BlokeAll the cool kids are doing it.12:58
=== bac is now known as bac|away
jelmerOdd_Bloke, you appear to've spammed the commits list :-)13:17
Odd_Blokejelmer: Was this with multiple 'Revision 1' messages, or more recently?13:17
jelmeryeah, multiple rev 113:18
jelmerthe others appear to be fine13:18
Odd_BlokeYeah, that's because PQM's test suite uses your standard bzr settings, which I'd forgotten about.  So every commit in a test got emailed out.13:19
jelmerahh :-)13:21
mwhudsonbzrlib.tests.TestCase ftw13:24
=== Tank|Away is now known as Linnk
=== mw|out is now known as mw
lifelessthumper: try that groups thing now14:01
jamlifeless: I'd like to chat a bit about how 'bzr pull' has to grab 100% or it throws out everything.14:05
jamIt's being a real problem with mirroring 200 branches from my home repository14:06
jam=> launchpad14:06
=== bac is now known as bac|away
=== bac|away is now known as bac
lifelessjam: ok; well it doesn't really have to, what it has to do is ensure that the ones it grabs are topologically oldest14:38
jamlifeless: so I was looking at the fetch code.14:39
jamAnd for "old" formats14:39
jamyou could simply grab the sorted list of revision ids14:39
jamand then say grab 1000 at a time14:39
jamthe problem with the new code14:39
jamis that you use "get_stream_from_search"14:39
jamwhich is nice and efficient14:39
jamfrom a "bytes transmitted on the wire" perspective14:39
jambut means there isn't a way to say "give me only some of these"14:39
jamI mentioned to Andrew that it would be nice to have a "sync" node in the data stream14:40
jamso that the server could give you revisions in a given group, and then let the client know that it has a "complete" set14:40
jamthus it can be committed to the repo14:40
jamand start a new write group.14:40
lifelessjam: sure, or you could just drive it from the client, by taking some subset of the search14:40
jamwell, the client has to do a lot more querying of the server to find out the subset from the search14:41
jamsince all it has are the graph edges14:41
lifelessjam: not really14:41
lifelessjam: its traversed the intermediate nodes, you can just pick one, and use the existing graph edges14:41
jammaybe I misunderstand what the 'for search' does14:41
jamlifeless: my specific example is 'first pull', how should it need to traverse anything but the branch tip?14:42
lifelessjam: ah that case is fair enough14:42
jamI would *like* to have it driven by the client, but the whole point was to avoid having the client have to determine the whole graph14:44
jambeing driven client side makes it easier to support14:45
lifelessjam: ack; anyhow I agreew it the the need14:45
jamok, I know you and I have full plates, so I'll see about pushing spiv to do it :)14:48
=== thekorn_ is now known as thekorn
=== Linnk is now known as Tank|Away
kinkieHi all... I have a problem with pushing some changes to launchpad. I have a private copy of squid-trunk off which I branched. I pulled from trunk, merged into my copy and then tried to push my copy to launchpad. But the push complains that "These branches have diverged.  Try using "merge" and then "push".". Tried to, but all actions show that trees are actually in sync. Hints on how to solve?15:45
kinkieThanks in advance15:45
lifelesskinkie: hi15:48
kinkiehi lifeless :)15:48
lifelesskinkie: are you pushing to your own branch in launchpad?15:48
kinkieyes15:48
lifelesskinkie: what url is that ?15:48
lifeless(and what url does bzr think you are pushing to)15:48
kinkieafter lp: expansion, it's bzr+ssh://kinkie@bazaar.launchpad.net/~kinkie/squid/cachemgr-refactor/15:49
lifelesscan you paste the bzr output?15:49
kinkiekinkie@longhorn:~/src/cachemgr-refactor$bzr push15:50
kinkieUsing saved location: bzr+ssh://kinkie@bazaar.launchpad.net/~kinkie/squid/cachemgr-refactor/15:50
kinkiebzr: ERROR: These branches have diverged.  Try using "merge" and then "push".15:50
lifelesskinkie: what does 'bzr info' show?15:51
kinkiekinkie@longhorn:~/src/cachemgr-refactor$bzr info15:51
kinkieLightweight checkout (format: dirstate or dirstate-tags or pack-0.92 or rich-root or rich-root-pack)15:51
kinkieLocation:15:51
kinkie  light checkout root: .15:51
kinkie   checkout of branch: /home/kinkie/src/repo/squid-cachemgr-refactor15:51
kinkie    shared repository: /home/kinkie/src/repo15:51
kinkieRelated branches:15:51
kinkie    push branch: bzr+ssh://kinkie@bazaar.launchpad.net/%7Ekinkie/squid/cachemgr-refactor/15:51
kinkie  parent branch: /home/kinkie/src/repo/squid-trunk15:51
kinkie  submit branch: ../repo/squid-trunk15:51
lifelessok15:51
lifelesswhat does bzr missing bzr+ssh://kinkie@bazaar.launchpad.net/%7Ekinkie/squid/cachemgr-refactor/ show ?15:52
kinkieYou have 6 extra revision(s): XXX omitted XXX15:53
kinkieYou are missing 1 revision(s): XXX omitted XXX15:53
lifelessright, clearly you are diverged :)15:53
kinkie(hm.. is omitted even english?)15:53
kinkieOookay. the 6 extra revisions are what I am trying to push.15:53
lifelesskinkie: you have either uncommitted, or pushed a different branch to that url at some point15:53
lifelessif you have whaqt you want, you can just push ---overwrite15:54
kinkieI have what I want, what I'm missing is a merge from trunk which I performed anyways15:54
lifelessso, push --overwrite15:54
kinkieshould I find myself in the same situation, what could be a resolution path? merge from the offending branch then push?15:55
lifelesskinkie: look at whats missing, decide if you want to sync - merge & push, or replaace - push --overwrite15:57
kinkieok.15:57
kinkieThanks!15:57
* kinkie has to go now.15:57
kinkieSee you later / tomorrow!15:57
lifelesskinkie: for a release branch, like trunk, you'd normally check that branch out, cd to it, merge your branch and push15:57
lifelessciao15:57
kinkieok15:57
kinkiethank you very much.15:57
lifelessbeuno: ping16:16
beunolifeless, pong16:16
lifelesshey16:16
lifelessso thumper and I have some mino trouble16:16
lifelesswith rewrites16:16
beunohm?16:19
lifelessso, we have a server with /gnome/project/trunk and /user/project/trunk16:20
lifelesswe want to present this as /project/trunk and /~user/project/trunk,16:20
beunohrm, the way we use URLs is far from ideal...16:21
beunoyou're using an htaccess?16:21
lifelessrouhgly, yes16:21
lifelessso we tried adding the gnome in a rewrite rulle, which works16:22
lifelessand stripping the ~, which doesn't work16:22
lifelessbecause loggerhead sees /user/ and does a 301 to /user/ causing epic fail16:23
beunohmm...16:24
beunoI need to finish something, and I'll try and see how we can work around that16:25
lifelessso I'd like the paste magic to say  '/gnome/' -> '/gnome/' and '/other' -> '/~other'16:25
MvGHi! I'm again trying to get a bzr branch for inkscape, and again I encounter errors. This time I'm using the branch at launchpad as a source.16:39
MvGFirst I tried a simple "bzr branch lp:inkscape", then a "bzr branch http://bazaar.launchpad.net/~vcs-imports/inkscape/main". Both take ages and seem to freeze at some point.16:39
MvGwireshark lists an awful lot of partial requests from the branch repository, which seems to be quite inefficient.16:40
MvGTo solve that aspect, I used wget to download the pranch with repository in a dumb but fast way. The fact that this is several times faster than a bzr branch should cause some worries, I think.16:41
MvGSo with that I had a local copy of the inkscape main branch on launchpad. I tried to branch from that, and again it froze at the same point the other access methods did. So it's not a server issue, and now I can reproduce it quite fast.16:41
lifelessMvG: ok, can you file a bug then ?16:42
lifelessMvG: it may not be a bug, and I'll be delighted to dig into it in detail, but I'm a little fenetic right now16:42
MvGlifeless: I guess I could, but I'm not sure how much of this depends on current state of the branch, so debugging as much as possible today might be helpful.16:42
MvGSo what would you suggest in order to get more info for this. Is there some -D switch liekly to help?16:43
lifelesswell, if you hit ctrl-\ at the hung bzr,16:43
lifelessyou can get a debugger16:43
lifelessand hit bt to get a back trace16:43
MvGThat's just what I wanted, thanks! I'll try locate the loop, and tell you my findings.16:44
=== bac is now known as bac|away
=== bac|away is now known as bac
lifelessbeuno: so, do you know how to ook into the url -> disk mapping layer easily?17:14
radixhey guys, is there a prerelease with stacked branches yet?17:14
beunolifeless, not off the top of my head, sorry17:14
beunoI may be able to poke at it in a few hours, but I'm in a tight schedule right now17:15
lifelessbeuno: I understand17:18
james_whey radix, I don't think so.17:21
james_wradix: should be an rc1 with them in the next day or two I believe.17:22
radixoh, nice17:22
rivohi17:32
rivoI converted a part of a subversion repository to bazaar using bzr branch <svn repo url>17:32
jamlifeless, abentley: If you want to see why the ha_ndbcluster.cc merge is tricky, here is its file revision graph (note, you want to wget it and view it locally, not in a browser):17:32
jamhttp://bzr.arbash-meinel.com/mesh.png17:32
jamThe brown node is the unique lca17:32
rivois there any downsides to that, compared to properly doing  bzr svn-import ...?17:32
jamthe green nodes are the intermediate lcas17:33
jamthe red nodes are the revisions being merged17:33
jamand all revisions that are ancestors of the unique lca have been pruned17:33
jamrivo: Just that svn-import will do multiple branches for you at once17:33
jamThe results should be the same17:33
rivojam: ok, that's great17:34
rivojam: I couldn't get svn-import working, maybe because of the weird layout of my repo, but then it doesn't matter17:34
MvGOK, I have some more information from my slow branch of the main inkscape branch from launchpad.17:47
MvGIt seems not to be an infinite loop, but rather incredibly slow processing.17:48
lifelessMvG: puttting the backtrace in a bug will be useful17:48
lifelessMvG: most incredibly slow processing cases are due to data-conversion paths17:48
MvGIt's busy in fetch.py in Inter1and2Helper._find_root_ids, iterating over some 4000+ id's, with each batch of 100 taking several minutes.17:49
MvGAnd it only has this kind of problem when I branch into a pre-initialized rich-root-pack repo. A branch without shared repo workes fast enough to wait for it, although I still wouldn't call it "fast".17:50
james_wMvG: what does "bzr info" on the branch you are pulling from report as it's repository type?17:52
MvGjames_w: pack-0.9217:52
james_wso this is slowness from not-rich-root->rich-root17:53
lifelessMvG: you're pulling into a rich root format from a non-rich root; I'm guessing the lp branch yyou're pulling is not the bzr-svn import17:55
MvGWhat would you like to do about it? Have a bug report? Wishlist item? Some kind of benchmarking testcase? Or declare it as somebody elses problem?17:55
lifelessMvG: its our problem; what we really want is to have everyone using rich-root, but there is a bug remaining to do the conversion17:56
MvGlifeless: No, I don't think it is either.17:56
MvGlifeless: I had tried to branch drictly from svn yesterday, but that failed due to a bug in bzr-svn, and I have seen no commit from jelmer since which would addressing that.17:57
lifelessMvG: is it https://code.edge.launchpad.net/~ted-gould/inkscape/trunk that you are pulling ?17:57
MvGlifeless: No, it's http://bazaar.launchpad.net/~vcs-imports/inkscape/main17:58
lifelessMvG: please grab http://bazaar.launchpad.net/%7Eted-gould/inkscape/trunk/ it should be nce and fast17:58
lifelessI'll tell ted to update the series17:58
MvGlifeless: Thanks, I'll do that to work on inkscape. Classified "workaround", as the slowness issue still remains, though.17:59
jamOdd_Bloke: I'm getting a bunch of test commits from you18:00
jamOdd_Bloke: Rev 1: start branch. inhttp://bzr.daniel-watkins.co.uk/pqm/work/_trial_temp/bzrbranch18:00
MvGI've got a breakpoint in l347 of fetch.py, so I would get notified every 100 revisions. Last time I hit that is more than 10 minutes ago, so throiughput is less than 10 revisions per minute.18:00
MvGAs the inkscape branch has 6052, that would mean about 10h to convert everything.18:02
lifelessMvG: the branch I have pointed you at will not do this conversion18:06
MvGlifeless: I know, I just wanted to illustrate the scope of the slowness for situations where no workaround is feasible.18:06
jamMvG: I believe if you branched locally into a non rich-root repository, and *then* branched into the rich root repository, it would likely be faster18:11
MvGjam: Why would it be faster? I was working from a downloaded (wget) copy of the branch, so network traffic didn't play a role any more. Over the net, it was slower still, I think.18:13
jamMvG: ok, I didn't realize you were using the local copy18:13
MvGI guess that was way up there in the backlog, when I first told about this and lifeless introduced me to the breakin debugger.18:14
lifelessMvG: so there is always a workaround - don't cross-grade the data18:14
MvGAs long as I don't need any of the features provided by rich root packs. As I couldn't name any such feature right now, I think it usually should work.18:16
Odd_BlokeSimpleTAL makes my eyes hurt. :(18:27
* beuno hands eye drops to Odd_Bloke 18:27
beuno:)18:28
* Odd_Bloke hands Mako to beuno.18:28
Odd_Bloke;)18:28
beunohaha18:28
beunowell, we looked into it18:28
beunoit's faster, just not structured like we want it to18:29
beuno*be18:29
Odd_BlokeStructure within templates, or higher-level structure than that?18:30
beunowithin templates18:30
Odd_BlokeI just don't like templating engines that put their structure inside the HTML elements.  It means I'll have to write a comment saying, essentially, what I could just write as code in one that uses a Mako/Django style.18:31
Odd_BlokeHmm, BB is down.18:33
Odd_BlokeOminously soon after I submitted the first patch testing the new functionality.18:33
Odd_Blokes/testing/utilising/18:33
radixOdd_Bloke: there's a bzr buildbot?18:34
Odd_Blokeradix: BB is BundleBuggy in bzr parlance.18:36
radixoh, woops18:36
Odd_Bloke:D18:36
MvGAnyone here familiar with the gentoo overlay managed by malept? It caused bzr 1.5 to break here: http://rafb.net/p/xyIkQ870.html18:37
VerterokMvG: I was getting the same error, then I changed to this branch of the overlay lp:~mocksoul/bzr-gentoo-overlay/bzr-gentoo-overlay18:40
MvGjelmer: Starting from the bzr-svn branch of inkscape from http://bazaar.launchpad.net/%7Eted-gould/inkscape/trunk/ as mentioned above, I tried to pull the remaining revisions using bzr-svn directly from the svn repository. bzr-svn then crashed on me in find_tags: http://rafb.net/p/LdJtdP94.html18:42
MvGVerterok: Thanks, I'll try that.18:42
emilis_infoI have heard there will be a bzr development sprint in EuroPython conference in Vilnius tomorrow18:47
MvGThe issue with the http://bzr.malept.com/bazaar-overlay/ branch can be reproduced on the command line with bzr 1.5, but current bzr.dev works fine. Do you intend bug-fixing maintainance backports to the 1.5 branch? SHould I report this somewhere?18:47
emilis_infoCouldn't find the guy who anounced it though18:47
emilis_infoanyone know anything about this?18:47
Verterokbeuno: hi18:49
beunohowdy Verterok18:49
Verterokbeuno: still around Europe?18:50
beunoVerterok, yeap, still working too.  I should be back on sunday18:51
beunohow's your holiday?18:52
Verterokbeuno: quite nice, it's good to wake up late. also working, but in bzr-java-lib and xmlrpc service ;-)18:54
beunoVerterok, I've been getting up at 7am, please don't tell me about waking up late  :)18:57
Verterokbeuno: ouch, I fully understands your suffering18:58
jambeuno: bah, my son is waking me up at ~5:45 the last two days18:58
jamkids seem to really sleep by the sun, which seems to be forgotten in our general society18:59
beunojam, well, I suppose you can nap when he does, babies sleep a lot18:59
jamor at least, our son did, it is kind of hard to push them to stay awake or go to sleep earlier18:59
beunoI don't think it'll look good if I fall asleep at a desk in Canonical18:59
jambeuno: except he naps during work hours :)18:59
beunoheh, right19:00
beunosmart guy19:00
jamthe real trick is to not work until 1am19:00
jamthat helps a lot19:00
beunothat is, if you can still manage the deadlines without doing so19:00
jamI didn't know you were working at Canonical HQ.19:00
Odd_BlokeI find that getting up to start work at 1am increases my productivity a great deal.19:00
jambeuno: well, if you are having deadline problems, either they are unrealistic, or you have poor time management skills :)19:01
beunojam, been here last week, and will be here til the end of this one.  My trip was a bit... unexpected  :)19:01
beunojam, or both!19:01
jambeuno: yeah, poolie mentioned your work rotation might get a bit interesting19:01
beunojam, hopefuly it will. I'll know the details in the next few weeks19:02
jambeuno: I should also mention that he woke up about 4 times last night... at least it was always for a short time19:02
jamsometimes he'll wake up at 3, and then not sleep for ~1 hr19:02
jamsilly babies19:02
emilis_infojam, how old is he?19:03
emilis_info:)19:03
beunojam, sounds fun19:03
jam10 months19:03
emilis_infomine is 5 months today19:03
jamgrats emilis_info19:03
Odd_BlokeI suppose one advantage of working for Canonical is that there'll almost always be someone up to work with.19:03
emilis_infothanks :)19:03
jamOdd_Bloke: except bzr is mostly US & AU, we need to get more Europe people hired19:04
Odd_Bloke*COUGH*19:04
jamOdd_Bloke: then what are you doing working if you started at 1am :)19:04
jamby my count, it is ~7pm there19:04
Odd_BlokeIt was about 4am this morning.19:05
jamah, ok, keep working then19:05
jamI wouldn't want you to slack off19:05
Odd_BlokeI'm having to adjust from Australian to British time by Friday.19:05
jamOdd_Bloke: what were you doing in AU?19:06
Odd_BlokeI wasn't, I was just keeping AU time.19:06
Odd_BlokeUntil the last couple of days I haven't really been sure of what I was doing PQM-wise.19:06
radixwe try to keep consistent schedules in canonical, at least :)19:07
Odd_BlokeAnd being on British time tends to mean I dump stuff at the end of the day and wake up to reviews being there.19:07
Odd_BlokeWhich isn't particularly helpful if I need to chat to someone about what I'm doing.19:07
beunoOdd_Bloke, do what I did. Just sleep australia time.19:08
Odd_Blokebeuno: Yeah, I was. :)19:08
beunoand leave reviews for jam   :p19:09
jamradix: 4-10 on mondays, 8-6 on tuesday-thurs, 8-4am on fridays ?19:09
jamOdd_Bloke: well, I've been used to dumping stuff at the end of the day, and then *maybe* waking up to reviews for a while now :)19:09
jamAU time starts when I get done19:09
jamwhich has the small benefit that I *can* drop by in the evening and see poolie/lifeless19:10
jamAnd I probably do that far too often :)19:10
Odd_BlokeHeh.19:10
Odd_BlokeI had noticed. :p19:10
jamAnyone here know zsh very well?19:11
jamI'm trying to configure my prompt by inserting the output of a script19:11
jamand it doesn't seem to want to run ti19:11
jamit19:11
jamIn bash, I just put $(command) into the PS119:12
jamDoing that in zsh just runs the command right away, and not each time19:18
jamusing \$(command) ends up only printing the string $(command)19:18
james_wemilis_info: LarstiQ is at EuroPython I believe19:18
emilis_infojames_w, hmm... thanks. I'll need to find him tomorrow :)19:20
=== mw is now known as mw|food
=== sdboyer_ is now known as sdboyer
=== NfNitLoo` is now known as NfNitLoop
=== mario_ is now known as pygi
statikanyone got a good example of how to use bzr-builddeb?20:17
james_whey statik20:18
james_wif you are in a branch with ./debian/ then "bzr-builddeb" should build it20:19
=== mw|food is now known as mw
james_ware you trying to build something, or are you setting up a package in a branch?20:19
james_whttp://jameswestby.net/bzr/builddeb/user_manual/20:19
statikhi james_w! i'm looking to create a new package, and i want to keep in in bzr20:20
=== NfNitLoop is now known as BobDole
statikit's a really simple metapackage, which i'm adapting from another package, but the package I am copying from doesn't use version control20:20
james_wcool, so is it a native package?20:20
statikyes20:20
statikthis doc you pointed me to is good, I had not found that yet20:21
james_wok, native packages are easy :-)20:21
statikjames_w: that doc says I need to create the branch with --dirstate-trees, is that still true?20:22
james_wthe important bit is:20:22
james_w$ mkdir .bzr-builddeb/20:22
james_w$ echo -e '[BUILDDEB]\nnative = True' > .bzr-builddeb/default.conf20:22
james_w$ bzr add .bzr-builddeb/default.conf20:22
james_wstatik: it's both wrong and false and outdated and stupid20:22
statikheh, ok :)20:22
james_wI need to push the updated docs there sometime.20:23
=== BobDole is now known as NfNitLoop
awilkinsjelmer: ?20:38
awilkinsHmmph, these test reports need better instance-comparability20:41
=== bac is now known as bac|away
=== Tank|Away is now known as Linnk
GaryvdMHi - In qbzr you can run "bzr qlog FILENAME" to see the history of that file.22:22
GaryvdMWhen you do that, unfortunately the ui locks up.22:23
GaryvdMThis happen during the call to branch.repository.texts.get_parent_map22:23
GaryvdMsee http://bazaar.launchpad.net/~qbzr-dev/qbzr/trunk/annotate/279?file_id=liblogmodel.py-20080624153442-csesbwmxg0s8db2x-1#L12122:24
GaryvdMIs there a way to do the incrementally?22:25
james_wan --lsprof output might be helpful to know what's eating the time22:25
james_wI'm not familiar with the .texts interface to know if it is likely to be slow22:25
james_wI know that "bzr log filename" is very slow, but I think that is implemented in a different way.22:26
GaryvdMI've been reading the code. If I could get to branch.repository.texts._index._graph_index.iter_entries - that is incremental22:26
GaryvdMIt's similar to "bzr log filename"22:27
GaryvdMI'm not so worried about the speed. I would just like to be able to update our ui while it is happening.22:28
james_wah, I've looked above now, maybe not using a list comprehension for text_keys would allow you to make it incremental22:28
james_wso, loop over self.merge_sorted_revisions calling get_parent_map each time22:29
GaryvdMOh - ok - let me try that.22:29
james_wthere shouldn't be too much of a performance hit22:30
james_wif that works then you could experiment with batching22:30
james_wthe show_log code batches some of its operations, which makes a big difference.22:30
awilkinsOfftopic : who's good with XSLT?22:32
awilkinsCAn you pass a {$variable} as part of your input document and have the XSLT expand it?22:33
GaryvdMThanks james_w - That worked.22:43
james_wreally?22:43
GaryvdMYip - now it need to try get it to load on screen incrementaly22:44
GaryvdM*now I need22:44
james_wwell, even a stopped clock is right twice a day :-)22:46
pygihi ho22:46
GaryvdMlol22:46
=== bigdo1 is now known as bigdog
james_whey pygi22:47
james_wyou get around :-)22:47
GaryvdMHuh23:05
GaryvdMbzr qlog bzrlib\tree.py23:05
GaryvdMis now about 4x faster (wall clock time)23:05
GaryvdMthan bzr log bzrlib\tree.py >/dev/null23:05
james_wGaryvdM: nice work23:07
james_whave you looked to see if log itself could be sped up here?23:08
GaryvdMThats what I'm thinking.23:08
=== GaryvdM_ is now known as GaryvdM
GaryvdMjames_w: Making the same change to bzr log makes it much faster.... :-)23:20
GaryvdMPatch on the way.23:20
james_wGaryvdM: great!23:20
mwhudsonis it log <FILE> specific?23:21
GaryvdMYes23:21
mwhudsonah well23:23
mwhudson:)23:23
james_wI found that the limiting factor in plain log was revision extraction.23:26
jammwhudson, GaryvdM: I also will guess it will break our test suite23:30
jamIt is slow not because we can't get the graph of just the changes to a file23:30
jambut because we want to see the revisions which merged those changes23:30
jamSo in:23:30
jamA23:31
jam|\23:31
jam| C23:31
jam|/23:31
jamB23:31
jamWe want to see both 'C' and 'B'23:31
jameven though the file was only changed in C23:31
jam(This was back when we discussed per-file merge logic.)23:31
jamGaryvdM: I would be happy to be proven wrong, though. :)23:31
mwhudsonjam: but if you  have the merge sorted revision graph (which log does) finding B from C really isn't so hard23:31
GaryvdMjam: how do I check?23:31
mwhudsonGaryvdM: 'bzr selftest log' i would imagine23:32
GaryvdMok23:32
jammwhudson: I would guess you are right (though *getting* that merge sorted graph is also quite slow)23:32
jamThere are also issues with doubly nested merges, etc.23:33
mwhudsonjam: oh sure23:33
mwhudsonjam: but you need to do that anyway to be able to number the revisions (today, anyway)23:33
GaryvdMHmm - does break test :-(23:39
jamGaryvdM: so if you have the per file graph, and you have the merge_sorted graph23:40
jamI *think* you can start iterating over the merge sorted graph23:40
jamwhen you find a revision that is in the per-file graph23:40
jamyou just need to include all merge sorted revisions with a depth < the current depth23:40
jamuntil you reach mainline23:40
GaryvdMok23:40
jamI can't promise that, but I think it would work23:41
mwhudsonthere is code in loggerhead to do this :)23:45
mwhudsonhttp://bazaar.launchpad.net/~loggerhead-team/loggerhead/trunk/annotate/head:/loggerhead/history.py#22023:47
mwhudsonthat's perhaps not quite what you want23:47
mwhudsonbut it has the flavour23:47
tolstoyHi Folks, I'm getting an error: ValueError: failed to deserialize tag dictionary ....23:50
tolstoyIs there anything I can do about that?23:50
tolstoyI can't "branch" the branch because of it.23:50
james_wtolstoy: that sounds like file corruption to me23:50
james_wof .bzr/branch/tags23:50
tolstoyHm. Just erase it and maybe to a pull or something from another branch?23:51
tolstoyI think it has later tags, though.23:51
=== bac|away is now known as bac
james_wcan you see what state it is in before doing anything?23:51
james_wis there obvious corruption23:51
james_wI'm not even sure that it's not a binary file though23:52
tolstoyIt's just a long string, but I don't know the format in order to tell what's corrupted.23:52
james_wI think it might be rio, but I'm not familiar with it either23:53
tolstoyThe difference between it and the "HEAD" that it was branched from is a weird \n appended to it.23:54
james_wI assume you haven't edited it at any point23:54
tolstoyNope.23:55
james_wthere was a problem recently where someone's dirstate had a \n appended as well, I don't think they share a codepath though23:55
james_wit would be odd for disk corruption to just append \n to a file23:55
tolstoyVery odd.23:56
tolstoyAh, okay. The "corrupt" one has a line feed, not the characters "\n" on the end of it, which I thought it did at first.23:57
james_wso it ended \r\n?23:59

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