/srv/irclogs.ubuntu.com/2012/07/29/#bzr.txt

mnnwhile looking into RenameMap, I've found a bug - bzr move --auto tries to move parent directory, even though that wasn't actually moved13:58
mnnpastebin of commands should explain better:13:59
mnnhttp://pastebin.com/5aL3Qrnn13:59
mnnthis is present both in trunk and also in 2.5.114:01
mnnno idea if this is intended or not, but I'd like to post a bug on launchpad, if there are no objections14:05
wgzmnn: I tend to go with a file-first policy, marking a bug as a dupe or invalid later if I learn something else works fine15:03
wgzI think we may have a bug for this though, search for "inconsistent delta"15:04
wgzmaybe bug 373319?15:05
ubot5Launchpad bug 373319 in Bazaar "mv --auto does not handle directory adds mixed with the contents of a directory splitting in two: InconsistentDelta error" [High,Confirmed] https://launchpad.net/bugs/37331915:05
wgzthe dirstate code is frustratingly hard to hack on, but people have managed to dive in and fix problems with it in the past15:10
mnnwgz: well I actually wanted to adjust move --auto to handle moving into new directory, while stumbled upon this16:12
mnnwgz: I think I have identified the problem18:29
mnnI need to try the fix and run the tests, if I haven't broken anything in the process18:29
mnnok, it seems we have a winner:18:56
mnnhttp://pastebin.com/QRfpeZjx18:56
mnnhere's test with reproduction script from 37331919:21
mnnhttp://pastebin.com/tZKzTjrF19:21
mnnok, the code doesn't choke on complicated cases... so I guess it's ready:19:31
mnnhttp://pastebin.com/0GaUf7UJ19:31
mnnwhat is this???22:11
mnn'bzr: ERROR: unknown command ""status""\n'22:11
=== r0bby is now known as robbyoconnor
mnnfirst I did simple self.run_bzr('status') but got exception about result code mismatch - so I tried self.run_bzr('status', 3) and got this nonsense22:12
wgzmnn: using bzr from outside its normal initialisation, you need a bunch of extra silly steps22:18
wgzsee lp:~gz/+junk/call_bzr_init for an example22:20
mnnmy working directory is actually a branch ... I'm aware that bzr's working directory needs to be in such directory22:21
mnnI'm writing a test22:21
wgzokay, then you just want to look at the tests under blackbox for actually running commands22:21
wgzthe base test class doesn't support doing things with bzr commands or things on disk22:22
mnnI'm modifying TestRenameMap which is a TestCaseWithTransport22:23
mnnTestAdd is TestCaseWithTransport too22:23
mnnand it uses self.run_bzr(), obviously22:23
wgzokay, I need to stop answering your questions before thinking properly :)22:24
mnnyeah :) because unfortunately they haven't been helpful22:25
mnnand btw could you take another look at this?22:27
mnnhttps://code.launchpad.net/~mnn282/bzr/sftp-unsupported-operation-more-info/+merge/11684922:27
wgzyup, I shall, stop being slack and respond to that22:28
wgzsome of my advice from the other day wasn't completely ideal either :)22:28
mnnyeah... but I was able to work around them :)22:29
wgzso, for instance, @classmethod would probably be better than staticmethod for the _translate_io_error function, which then takes cls as the first argument and saves importing and upcalling to Transport22:30
wgzand a few other little niggles, otherwise it's great22:30
mnnwell write all those niggles there, I will take a look at them later... now I want bzr status! :)22:30
wgz...not having any ideas on your self.run_bzr("status") problem, looking at bzrlib/tests/blackbox/test_status.py (especially the simpler tests at the bottom)... it should just work22:31
wgzpastebin me the smallest test you get weirdness with?22:31
mnnwell even such small test gives me save result:22:36
mnnhttp://pastebin.com/wddFKXNj22:36
mnnI definitely must be doing something wrong22:36
wgzgive me a whole test class and method22:43
mnnwow, this is just weird... suddenly it works :) I've tackled issues with locks and inequality issues22:43
mnnwill push the branch and make merge proposal22:44
wgzright, that looked like it should be fine given the right test class22:44
wgzhave you discovered the neat way of running just a subset of tests yet?22:50
wgzdo `python bzr selftest -s bt.test_source` for instance22:51
mnnI use bzr selftest -v source_name (i.e. bzr selftest -v test_rename_map)22:52
mnnbtw. https://bugs.launchpad.net/bzr/+bug/37331922:54
mnnwow, it took 3 years to fix a bug from its original discovery... and such high priority bug22:54
ubot5Ubuntu bug 373319 in Bazaar "mv --auto does not handle directory adds mixed with the contents of a directory splitting in two: InconsistentDelta error" [High,Confirmed]22:54
wgzusing -s and the path (bt. short for bzrlib.tests. and bb. being short for bzrlib.tests.blackbox) avoids loading all the other modules so is nice and quick22:54
mnnyeah.. it is much faster... however it seems to print less information than -v23:01
mnnwgz: btw. more reviewing :)23:02
mnnhttps://code.launchpad.net/~mnn282/bzr/auto-rename-fix/+merge/11720323:02
wgzmnn: looks like you could simplify that test a little but doing:23:02
wgztree = self.make_branch_and_tree('.')23:03
wgzrather than 'tree'23:03
mnnyeah, right23:03
mnnI'm still new to all this23:03
wgzthe rest is going over my head right now23:03
mnnno problem... just don't forget about me :)23:04
wgzand you do want to run `bzr selftest -s bt.test_source` on your branches23:05
wgzbecause we have a test that fails if there's not a unix-style newline terminator at the end23:05
wgzand I think both branches have a file that like that23:06
wgzshows up in the diff on the mp as:23:06
wgz\ No newline at end of file23:06
wgz(picky I know... but it's there)23:06
wgzgood work on both though, even if I nitpick things a fair bit, it's only because the fundamentals are good and you're just not familiar with a few style things23:08
mnnno problem... that's why I always ask about stuff23:08
mnn... and sometimes hitting a wall here :)23:08
wgzmnn: can you do <http://www.canonical.com/contributors>?23:13
wgzthere's an online form and the terms a less silly than they used to be23:13
wgzjohn.meinel@canonical.com is who you want to cc at the end.23:14
mnnyeah, I see him on the page:  John Arbash Meinel (john.meinel {at} canonical {dot} com)23:15
mnnit's actually the first license agreement that I'm reading fully... since it's so short :)23:20

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