[00:00] <jelmer> I don't think a good two-way CVS plugin is easily doable
[00:00]  * LarstiQ is inclined to agree with jelmer
[00:00] <jelmer> the easiest solution is probably to just build on something like cvs2svn, but you would have to make sure that you don't change the output or make the file ids / revision ids/ depend on the changes in the content
[00:00] <Jc2k> jelmer: dead code, i've removed it locally
[00:01] <jelmer> Jc2k, ah, ok
[00:03] <markh> garyvdm: woohoo to the qbzr threadless-throbber branch landing :)
[00:03] <Jc2k> jelmer: can you have a look at r126 - change to find_missing_objects so it uses get_refs instead of heads. thats enough to fix git-serve for git clone
[00:03] <Jc2k> (just pushed again)
[00:03] <garyvdm> markh: I'm happy to. Just worried about regressions.
[00:04] <Jc2k> jelmer: (something doesnt feel right about it)
[00:05] <markh> I'll create new binaries locally so I test it with my "real" bzr
[00:05] <markh> I must find that resources problem first...
[00:12] <jelmer> Jc2k, looks alright
[00:12] <jelmer> merged
[00:13] <Jc2k> wicked
[00:55] <Jc2k> jelmer: any thoughts on dealing with the incoming push? i was thinking about having a FakeGitRepo class that operated on in memory heads and a single pack, and then dealing with it similar to the stuff in svn-import
[00:58] <Jc2k> jelmer: i guess the only difference between FakeGitRepo and LocalGitRepository is at the dulwich level anyway...
[00:59] <Jc2k> (its a .git less repo with one pack and the heads are just a dict..)
[01:01] <Jc2k> jelmer: so i could add a Repo class in dulwich that just took a pack and some heads and otherwise didnt touch the disk, then tweak LocalGitRepository in bzr-git so it can just be pasted a dulwich repo object directly, then in the server code create a LocalGitRepository with an in memory fake virtual rpeo think and copy revisions with InterGitRepository
[01:02] <Jc2k> and i think use pull to update teh tips?
[01:02] <Jc2k> pasted/passed
[01:03]  * Jc2k heads to bed before my spelling accuracy falls any lower
[01:03] <jelmer> Jc2k, still there?
[01:03] <Jc2k> jelmer: just about
[01:04] <jelmer> Jc2k, hmm
[01:04] <jelmer> Jc2k, did you see Repository.add_pack()
[01:05] <Jc2k> jelmer: are you suggesting i actually create a valid git repo for each incoming push?
[01:06] <jelmer> Jc2k, not sure I follow
[01:06] <jelmer> whjat would you need the fake repository for?
[01:06] <Jc2k> how does add_pack help with handling an incoming push to bazaar?
[01:07] <jelmer> ah, you were talking about an incoming push to bazaar
[01:07] <jelmer> that makes more sense
[01:10]  * Jc2k might just create a git repo for each push to get something working, and then refactor
[01:12] <dort> anyone know the syntax to pass a username through bzr-svn
[01:12] <jelmer> dort, in the url
[01:12] <dort> when checking out from an http:// repo (svn)
[01:13] <dort> http://user@
[01:13] <dort> gives me a segfault after prompting for the password twice
[01:13] <jelmer> dort, what version?
[01:13] <dort> i just installed in my debian sid (didn't check yet)
[01:14] <dort> Bazaar (bzr) 1.5
[01:14] <jelmer> in that case you would want the version from experimental
[01:14] <jelmer> what bzr-svn ?
[01:14] <dort> ii  bzr-svn        0.4.10-2
[01:15] <dort> is there a better choice in experimental?
[01:15] <jelmer> dort, yeah, you want the version from experimental
[01:15] <dort> ok, thx much
[01:16] <jelmer> if that still segfaults, please file a bug
[01:19] <dort> hmm
[01:19] <dort> O watta goo Siam
[01:19] <dort> as i install the new packages (or try to) I realize i've filled up my hard disk
[01:19]  * dort sulks away to fix this
[01:19] <dort> sorry, maybe that's what caused the segfault in the first place :-[
[01:21] <jelmer> sleepytime
[01:22] <dort> working now, thx much jelmer
[01:22] <dort> sweet dreams
[07:02] <vila> hi all
[10:38] <jelmer> hey Vila
[10:38] <vila> jelmer: hi !
[12:14] <Jc2k> jelmer: ping
[12:14] <jelmer> Jc2k, pong
[12:16] <Jc2k> morning :)
[12:16] <Jc2k> i simplified apply_pack a bit (to use object_store.add_pack)
[12:16] <Jc2k> alas its now all kinds of slow
[12:17] <Jc2k> (well, it might even be stuck in a looop...)
[12:25] <jelmer> Jc2k, hi :-)
[12:25] <jelmer> Jc2k, ah, cool
[13:12] <jelmer> Jc2k, back
[13:16]  * Jc2k waves
[13:39] <Jc2k> jelmer: iterentries seems to be going on forever :\
[14:15] <jelmer> Jc2k, yeah, the generating of the index is slow as hell at the moment
[14:15] <jelmer> Jc2k, I think it's because of the repeated mmaps
[14:15] <Jc2k> jelmer: this is a definite loop
[14:16] <Jc2k> jelmer: traced it back to read_zlib
[14:17] <Jc2k> jelmer: for some reason add = data[base:base+1024] isn't fetching any data, so fed doesnt increase, so it tries the same chunk again, which is still "", and unused_data is still "".. so it goes on forever
[14:18] <jelmer> ahh
[14:18] <Jc2k> jelmer: its read 2639 of an object of size 4117, any its about 20 or so objects away from the end of the pack
[14:18] <Jc2k> so im not sure whats going on
[14:24] <jelmer> interesting
[14:24] <jelmer> what happens if you manually try to feed that data string?
[14:29] <Jc2k> *tests*
[14:32] <Jc2k> jelmer: if i feed the pack manuall to PackData.iterobjects, it seems to be fine
[14:33] <Jc2k> (and the same pack was working before i moved to add_pack && comit..
[14:33] <Jc2k> )
[14:35] <Jc2k> flushing thing.
[14:36] <Jc2k> jelmer: gah! for some reason i thought commit closed the fd.
[14:37] <Jc2k> pushed.
[15:53] <jelmer> checking
[15:56] <jelmer> Jc2k, still there?
[15:57] <Jc2k> jelmer: i wasnt, but i just got back :]
[15:58] <Jc2k> jelmer: whats up?
[15:59] <jelmer> Jc2k, just merged + pushed your branch
[15:59] <jelmer> fetches from local git repositories and from remote git repositories work now
[16:00] <Jc2k> sweet
[19:38] <Jc2k> jelmer: ping
[20:02] <jelmer> Jc2k, pong
[20:04] <Jc2k> jelmer: hey. it seems like im able to push revisions :]
[20:05] <jelmer> Jc2k, w00t!
[20:05] <Jc2k> though its an evil hack
[20:05] <jelmer> I'm trying to clone samba using bzr at the moment :-)
[20:05] <Jc2k> and its made me think using InterGitRepository is needless
[20:05] <Jc2k> i really should just use import_git_objects directly
[20:06] <Jc2k> which im going to try, but first i need to spawn branches
[20:06] <Jc2k> trying to rob some bzr-svn for this..
[20:07] <jelmer> Jc2k, yeah, I don't think InterGitRepository is necessary either for the server side of things
[20:07] <Jc2k> it just duplicates the work-out-what-to-copy step and then calls import_git_objects
[20:08] <Jc2k> geh
[20:08] <Jc2k> jelmer: is there a super easy way to just spawn a branch and set it to a given revision id?
[20:09] <jelmer> Jc2k, a bzr branch you mean?
[20:09] <Jc2k> yeah
[20:09] <jelmer> Jc2k, Yeah, once you have a BzrDir, just call "bzrdir.create_branch()"
[20:09] <jelmer> and then branch.generate_revision_history(revid)
[20:10] <Jc2k> does bzrdir.create_branch need the directory to be present?
[20:10] <jelmer> yeah
[20:10] <jelmer> it also needs the .bzr directory to be present
[20:11] <Jc2k> theres a large chunk of bzr-svn code for this (get_dir, transport_makedirs, and some other utils)
[20:11] <jelmer> Though you ca nprobably use BzrDir.create() or something to create the .bzr directory
[20:11] <jelmer> ah, ok
[20:11] <jelmer> Jc2k: It may be nice to move those utility functions into bzrlib
[20:11] <jelmer> just so we don't need any copies
[20:11] <Jc2k> thats what i was thinking, but maybe BzrDir.create is better?
[20:12] <jelmer> Jc2k, What I usually do is first move it to bzr-foreign, and then later submit it for inclusion in bzr.dev
[21:02] <Jc2k> jelmer: so import_git_objects. atm i guess the order of the object yielding function doesnt matter. will it>
[21:09] <jelmer> Jc2k, no, it doesn't matter
[21:10] <jelmer> It won't matter in the future either I thijnk
[21:10] <jelmer> (with apologies for my bad spelling tonight, blame the beer)
[21:10] <jelmer> Jc2k: The order in which remote hosts order it would be related to the delta order
[21:15] <Jc2k> jelmer: brilliant. in that case im going to see if i can tweak dulwich to support iterobjects directly off the wire
[21:15] <Jc2k> jelmer: at the very least, i dont need the index
[21:16] <smoothice> If I have a branch that I want to basically remove all the contents out of it and replace it with new contents.. how would I do that?
[21:16] <jelmer> smoothice, bzr pull --overwrite ?
[21:16] <jelmer> Jc2k, yeah, you don't need the index indeed
[21:17] <smoothice> jelmer: ok thanks
[21:57]  * jelmer is having a hard time trying to map a git index file to a bzr working tree
[21:57] <jelmer> it seems the two concepts don't map very well
[21:57] <jelmer> perhaps support for (git-like) indexes has to be added to bazaar first
[21:58] <Jc2k> jelmer: is a primary aim for bzr-git to let people use bzr on a local git clone?
[21:59] <jelmer> Jc2k, depends on what you mean by primary aim :-) but if at all possible, it would be nice to support it
[21:59] <Jc2k> :-)
[21:59] <jelmer> at least personally, I would very much like to be able to use bzr on native local git repositories
[22:01] <Jc2k> jelmer: so i find myself needing a PackData.iterobjects that returns me ShaFiles
[22:01] <jelmer> Jc2k, Use Pack.iterobjects()
[22:01] <jelmer> Jc2k, you may want to generate an index first
[22:01] <Jc2k> jelmer: but if i tweak iterentries i dont need the index files...
[22:02] <jelmer> Jc2k, you do, because you need to resolve deltas
[22:02] <Jc2k> oh, crap.
[22:02] <jelmer> maybe you're just lucky at the moment that you don't hit any ref delta's, but once you do, you really want that index
[22:02] <jelmer> perhaps we can allow the index to be in-memory at some point
[22:03] <jelmer> but I don't think that will help significantly in terms of performance
[22:11] <Jc2k> ok, pushed what i have so far. now using import_git_objects directly, and accessing pack directly (with index) instead of going via Repo.
[22:11] <jelmer> ah, cool
[22:12]  * jelmer is looking at implementing the index
[22:12] <Jc2k> its a bit messy, le sigh.
[22:42] <jelmer> ah well
[23:43] <james_w> can someone with pycurl installed try "bzr info https://code.launchpad.net/bzr" please?
[23:52] <markh> james_w: works for me
[23:52] <james_w> markh: thanks
[23:52] <james_w> markh: I assume you are not on Ubuntu :-)
[23:53] <markh> :)