[00:02] jaj. [00:02] argh [00:03] glad to hear that, otherwise we'd have a nasty bug on our hands :) [00:04] its because "location information" shows the shared repositiory on the local disk [00:04] not necessarily the one on the server === aminpy is now known as aminpy|brb === Quintasan_ is now known as Quintasan === aminpy|brb is now known as aminpy [15:49] hey guys, I'm trying to use bzr-git with dulwich here, and I get this 'bzr: ERROR: No module named posix' erro ? any idea? [16:12] ESphynx: this is on windows I take it? [16:13] look at your .bzr.log for the traceback showing where the import is happening [16:40] yes! [16:41] mgz: I've figured out it was in bzr-git's workingtree.py [16:41] i've commented that 'import posix' line out and then it worked [16:42] it sounds like a bug, the normal thing to do is `import os` which then resolves the correct platform functions [16:42] then I got this other error [16:43] which I found in a post that I should add 'raise' on top of a line [16:43] on top of the delete_tree line... [16:43] a db in use type thing, and now that I added that I get a whole bunch of new errors :( [16:44] it sounds like bzr-git is just not tested (at all) on windows. [16:44] http://pastebin.com/qT5RcBLr [16:45] hm. that one might need jelmer magic to understand. [16:45] the line I added as 'raise' on top of to_transport.delete_tree('.') [16:46] in bzrlib/builtins.py [16:46] Without that 'raise', I get: bzr: ERROR: Permission denied: "E:/bzr/sdk/./.bzr/repository/git/idmap.db": [Error 32] The process cannot access the file because it is being used by another process: u'E:/bzr/sdk/./.bzr/repository/git/idmap.db' [16:47] I've waste more than enough time on this, so I think I'll opt for launchpad importing my git repo for me :| [16:49] jelmer :) [16:49] you're the magician? [16:51] jelmer, does the error in say anything to you? [16:51] hey mgz [16:51] ESphynx: mawho ? :) [16:51] hm. that one might need jelmer magic to understand. [16:53] hmm, that's a tricky one [16:53] jelmer how about: Without that 'raise', I get: bzr: ERROR: Permission denied: "E:/bzr/sdk/./.bzr/repository/git/idmap.db": [Error 32] The process cannot access the file because it is being used by another process: u'E:/bzr/sdk/./.bzr/repository/git/idmap.db' [16:53] that was 'raise' on top of to_transport.delete_tree('.') [16:53] ESphynx: ah, you're on windows? [16:53] I am [16:53] Mainly because Ubuntu random freezes on my system :P [16:54] (I find that quite depressing) [16:54] there seem to be a few shallow problems with bzr-git on windows (importing posix as well as os), perhaps also so subtle ones that can cause revisions to go missing? [16:55] mgz: I wouldn't be surprised\ [16:55] ESphynx: can you try running "bzr selftest -s bp.git" ? [16:55] Would I have been aware of that, I would have tried it on Linux :P but now I set up bazaar etc. on Windows and don't feel like doing it again, I had launchpad auto-import it for me :P [16:55] sure I can try that [16:56] bzr: ERROR: No module named testtools [16:56] I get this too now with my version from source: bzr: warning: some compiled extensions could not be loaded; see [16:56] ESphynx: hmm, yeah, you'll need testtools to run the testsuite [16:56] ESphynx: you haven't build the C extensions, which means you'll get less than optimal performance [16:56] why did they not build? [16:57] ESphynx: did you try to build them ? :) [16:57] Cython and Pyrex missing? [16:57] probably you don't have cython or pyrex, again .bzr.log will tell you what exactly you don't have [16:57] it's not (or shouldn't) be relevent for correctness, only speed [16:57] don't take this the wrong way, i'm trying to be constructive here ;) but all this is way too complicated to setup folks :P [16:58] yup. [16:58] of course the bugs don't make it easier :P [16:59] we have easy (installer with lots of stuff added), but if you want to do more on top of that you need to be okay with compiling C python extensions and such like [16:59] jelmer: Would it be helpful if I install the testtools? [16:59] ESphynx: I'll do it here to save you the bother. [16:59] I got launchpad importing from github directly so I don't care anymore at this point, but I'm all for helping fix open source software :P [16:59] mgz thanks man :) [17:00] if you could file a bug against bzr-git for your original `import posix` problem with the traceback, that would be helpful [17:00] ESphynx: dulwich/bzr-git isn't really tested on Windows, so if it works that's mostly luck. It would be nice to get it to the point where it does work though :) [17:00] and maybe that one where you added a raise too, if there wasn't one already [17:00] jelmer it would :) [17:00] mgz: that was from a launchpad bug comment [17:00] that's where I got the idea [17:01] great, what was the bug number? [17:01] let me try to find it :) [17:02] mgz: https://bugs.launchpad.net/bzr-git/+bug/734145/comments/14 [17:02] Ubuntu bug 734145 in Bazaar Git Plugin "NoSuchId error applying inventory delta" [Medium,Triaged] [17:02] great, so jelmer knows about that one :) [17:03] oh, right, he's the one who suggested raise :P [17:03] didn't light up here :P [17:03] file the import posix bug and I'll see how much of this I can quickly squash [17:03] k [17:06] mgz https://bugs.launchpad.net/bzr-git/+bug/841177 [17:06] Ubuntu bug 841177 in Bazaar Git Plugin "import POSIX in workingtree.py breaks on Windows" [Undecided,New] [17:06] thanks ESphynx! [17:08] yh :) I've otherwise had more success with launchpad importing it for me: https://code.launchpad.net/ecere =) [17:08] yw* [17:09] just removing the posix import isn't sufficient - we need stat_result [17:09] oh. [17:11] using os instead should be fine though. [17:12] os is already there :P [17:12] indeed, [17:15] meh, fastimport as well? [17:16] fastimport is used for testing [17:16] what's the lp project name? [17:17] python-fastimport and bzr-fastimport too I guess. [17:18] * mgz continues branching and building [17:19] ...and sqlite? [17:19] dammit, now I need to rebuild python [17:30] okay. with ESphynx's bug fixed, I get on the test suite: FAILED (failures=1, known_failure_count=1) [17:30] Ran 211 tests in 4.875s [17:30] FAILED (failures=1, known_failure_count=1) [17:30] and a bunch of non-fatal file lifetime issues [17:32] mgz: what's the remaining failure? [17:32] it's shallow, seem to just be expecting a nix-style file: url in a repr [17:32] the file lifetime issues seem more relevent === yofel_ is now known as yofel [17:34] I'll put up a mp or two for you. [17:38] mgz: cool, thanks [18:14] okay, that was a pain but it worked finally [18:16] jelmer: http://float.endofinternet.org/xmlbin/bp.git [18:16] click little coloured boxes for details, the yellow ones are various warnings about file usage etc [18:17] mgz: that still indicates one failure [18:17] yeah, I had to fix my runner, so haven't fixed that test yet :) [18:18] mgz: hah, ok [18:18] mgz: awaiting your mps ;-) [18:47] mgz: does stat_result have the same contents on Windows? [18:48] the tests pass :P [18:49] I think the struct in posixmodule.c has only one definition, it's only how it's populated that is platform dependant. [18:49] I will double check [18:51] well, nearly. the ifdefs only kick in on the 14th item [18:51] so they way you're constructing it is portable. [18:54] whoa, weird conflicts thing in the diff, I wonder how I messed that up. [18:56] using uncommit and push twice was probably pretty bogus, I should have just let one branch depend on the other [19:04] ah, I didn't, you were just already touching that code while I was fiddling with my test runner [20:19] mgz: posixpath is correct, the index file always contains slashes [20:19] yeah, and I think the bug I just filed is mistargetted, I can reproduce it without plugins [20:21] looks like a bzr 2.5 regression [20:27] food first, then I'll fix that... [21:17] jelmer: so the good news is bzr-git kicks ass and just branched a big git repo locally in windows no problem [21:18] the bad news is bzr itself is broken on trunk and the blame is on one of your colo changes :) [21:20] mgz: heh, ok [21:20] * jelmer is still working on getting more bzr.dev tests passing against bzr-svn [21:21] down to ~140 failing ones now [21:32] okay, so _win32_extract_drive_letter is broken if given a url to a drive with no trailing slash [21:32] isn't there a python function that gives you the drive letter? [21:33] this is for file urls, which python didn't have proper handling for [21:33] hmm. [21:33] but... why is the drive being used here at all? bzrdir is stripping off all the directories for reasons I don't understand [21:34] i dunno xD [21:34] what file is this? [21:34] bug 841322 [21:34] Launchpad bug 841322 in Bazaar "IndexError branching from one windows dir to another" [Medium,New] https://launchpad.net/bugs/841322 [21:38] extract_drive_letter looks correct [21:38] since its just stripping off /C: [21:38] and then returning the rest of the string [21:39] what's not correct is `if len(path) < 3` ... `path[3]` [21:39] needs to either be `< 4` or not index the fourth character [21:40] the len(path) < 3 seems right [21:40] because if its less then 3, then its just C: [21:40] or it can't be a valid path cuase you need the drive letter [21:41] this is in the context of file urls [21:41] and I'm not certain if file:///C: is valid or if it needs to be file:///C:/ [21:42] so what are file urls? just file:// ? [21:42] different implementations give me different results at least :) [21:42] ^it's a bit more than that [21:42] i dunno much about the bzr code base but this still seems right [21:43] throwing an IndexError off a string isn't ever really correct [21:43] either we need to raise an exception saying the url is invalid, [21:44] or handle it. [21:45] hmm the code changed from when i last checked out [21:45] so or path[2] not in ':|' or path[3] != '/': is throwing the index out of range? [21:46] read as "/C:"[3] != "/" [21:46] so there needs to be a check to see if the url is less then 4 then [21:46] or 3 [21:47] depending on what you were talking about [21:48] then there's the problem of LocalTransport.abspath trying to produce such a thing [21:49] its hard to see whats going on >.> [21:49] are you trying to fix it? my code is going to conflict if i update cause i'm changing things [21:50] feel free to fix the bottom level function, that needs doing whatever [21:51] the rest of it, as you say, is tough to comprehend [21:51] localtransport.abspath? [21:55] or I guess Transport.__init__? I'm not really sure where to put the blame [21:55] i can try to take a look but i'm pretty noobish at this codebase xD [22:09] okay, I'm pretty sure the rstrip there wants changing, you can't just strip abitrary urls [23:19] hi all [23:23] 'evening poolie [23:23] hi there [23:36] hey poolie! [23:36] hello mgz, how are you? [23:37] rather short of sleep and stressed, but I've had this evening to hack on things at least :) [23:44] i'm sorry to hear about that first part