[00:02] hi. how do I undo a "bzr rm"? no other commands have been run since then (like "bzr ci"). [00:06] bzr revert pathname should do it [00:06] maxb: ty - that worked! [00:33] mgz: deryck [00:50] good morning [00:50] hi lifeless [00:50] hi poo [00:51] hi poolie [00:52] snort [00:53] you really want those last three letters [00:54] lifeless: should I bug him on irc or subscribe him to the bug or what? [00:55] mgz: overloaded word that [00:55] I'd discuss with him [00:55] and see if he wants a unique bug or what have you [00:55] thanks. === jam changed the topic of #bzr to: Bazaar version control | try https://answers.launchpad.net/bzr for more help | http://irclogs.ubuntu.com/ | Patch pilot: poolie | bzr 2.1.1 is out | bzr 2.1.2 is having binaries built for it | Launchpad down/read-only from 23:00 - 00:30 UTC for a code update [01:04] Good morning. [01:06] hola === Chex changed the topic of #bzr to: Bazaar version control | try https://answers.launchpad.net/bzr for more help | http://irclogs.ubuntu.com/ | Patch pilot: poolie | bzr 2.1.1 is out | bzr 2.1.2 is having binaries built for it [02:25] hi there spiv [02:37] in the bzrlib source [02:37] is there a method to do interdiffs? [02:38] thumper: i don't think so- [02:38] mmm [02:38] depends on what you mean [02:38] I'd really like to not to have to shell out to interdiff binary [02:38] ok, that, no - we haven't done that yet. [02:39] I have an old review diff, and a new review diff generated from newer commits [02:39] I want to see the difference between them [02:39] (and email it out) [02:39] right, lp mp incremental changes ? [02:39] yep [02:39] if I can suggest a different way [02:40] you have the old tip O and the new tip N [02:40] do a preview-merge with O and get a tree - not a diff [02:40] do a preview-merge with N and get the tree. [02:40] then do diff between the two preview trees [02:41] I'd expect that to be more useful, and its not going to be an interdiff, so its easier to read. [02:42] are preview trees up to that yet [02:42] ? [02:42] If they aren't it will be straight forward to fix I suspect [02:42] if they aren't I'd really like to know anyhow :) [02:54] lifeless: re ease of reading, the output of interdiff is not a diff of diffs [02:54] iirc [02:55] it's just a diff [02:55] ah yes [02:55] I'm thinking debdiff [02:55] which is interdiff [02:55] of patches [02:56] and known to blow up spectacularly with some packages [02:56] jam (if any), lifeless, we need a way to get debug info for out of memory errors [02:57] poolie: nevertheless the failure modes in two previews seem better to me, IMBW. [02:57] poolie: yes, agreed. [02:58] hmm, -Derror should give us something [03:00] can anyone confidently answer about bzr-svn in https://answers.edge.launchpad.net/bzr/+question/116868 [03:00] there is a bug for this [03:00] may need jam jam [03:01] jam jam ? [04:08] lifeless, poolie: you rang? [04:08] I didn't; poolie may have [04:08] poolie: what sort of mem info do you want? [04:09] jam: there is an OOM error occuring on a 30MB file according to some guy in some bug report. [04:09] jam, when bzr crashes with MemoryError i'd like us to get some useful debugging info back from the user [04:09] be nice to be able to see whats really oging on. [04:09] there's a bug asking for this [04:12] poolie: I remember chatting with you about this a bit. One of the problems is that stuff like 'str' objects aren't in the gc list [04:13] strs and ints/floats/etc being the most obvious not present [04:13] and now StaticTuple :) [04:15] so i guess the question is: [04:16] if there is any data we could easily report we should do it [04:16] even if it's not 100% complete or if it's useful in only a subset of cases [04:16] poolie: well, you can certainlly call trace.debug_memory() [04:17] which would at least tell you vmpeak and vmsize, etc === poolie changed the topic of #bzr to: Bazaar version control | try https://answers.launchpad.net/bzr for more help | http://irclogs.ubuntu.com/ | Patch pilot: poolie | bzr 2.1.2 is out [04:17] mm, we should put that into the apport file ,if we don't already [04:18] i don't know if that will tell us _why_ we ran out though [04:18] perhaps the traceback may give some clue [04:18] can we take the question that you'd ask the user experiencing an oom problem [04:18] and automatically answer it when they first hit the bug? [04:58] poolie: I'd have to think about what the first questions would be. Things I would usually ask are stuff like "what action were you taking" which should already be in the log file [04:58] what the size of files are you working with [04:58] I think that would be a bit hard to automatically answer [05:00] knowing the sizes of objects in the frames on the stack could be useful [05:12] jam i guess we could walk up the stack and print either the actual contents of the locals, or some data about them [05:12] such as their estimated size [05:12] poolie: I think contents is risky, but size could be reasonable [05:12] some risk of leaking private data there [05:13] well, I'm thinking more about 100MB files [05:14] that too [05:14] there is a cgitb module that does some of this [05:15] including trimming large values [05:15] so there's a function (in meliae?) that estimates the size of an object? [05:30] poolie: in python 2.6 you can use sys.getsizeof() [05:30] meliae also exposes something like this [05:30] ok [05:31] so this won't tell us if we're using lots of memory in a global not referenced by the stack [05:31] and it would probably be too noisy to print all the globals [05:31] but that may be an unusual condition [05:31] i guess we could print globals using a lot of memory [05:34] we could walk gc.get_referents() at a cost of 1 pointer per object [05:37] cost in terms of needing to allocate more memory to do that? [05:53] yeah [05:53] for the list that holds it [05:54] it could be a problem if we are already oom [06:21] jam: for when you awake. [06:22] https://bugs.edge.launchpad.net/bzr-builddeb/+bug/552950 [06:22] Launchpad bug 552950 in bzr-builddeb "Additional changelog entries are modified when merging another branch (affected: 1, heat: 10)" [Medium,Triaged] [06:22] please comment [06:57] if I commit 10 times, from rev 1 to rev 10, in my local branch, and didn't push them to remote branch yet, [06:57] I want to uncommit commit #5, what should I do? [06:57] 'bzr uncommit' doesn't help, [07:05] yao: it depends on exactly what you want [07:05] do you want to pretend #5 never happened, or do you want to just reverse it's effect? [07:06] poolie: former, I think, [07:06] * yao is wondering whether it is possible to pretend #5 never happened [07:45] Google is turning up nothing on this: is it safe to edit .bzrignore? [07:49] Yep. [07:52] OK, good. [07:53] Why might this line (in a .bzrignore) have *two* stars? [07:53] lisp/**/loaddefs.el [08:00] aidalgol: see 'bzr help ignore', it explains the patterns [08:00] (Also, 'bzr help patterns') [08:01] To answer your specific query: "/**/ - Matches 0 or more directories in a path" [08:59] hi there spiv, vila [08:59] hey poolie [09:00] sorry yao i missed you there [09:00] are you still here? [09:00] have a look at the bzr- [09:00] have a look at the bzr-rewrite plugin [09:00] poolie: I am here... [09:01] do you want to keep the later commits as distinct commits? [09:01] or are you happy to fold them into just one? [09:03] poolie: I want to keep later commits as distinct ones... [09:03] * yao is looking at https://launchpad.net/bzr-rewrite [09:05] try bzr help rebase [09:22] we should document that specific case [10:36] How do I find where bzr is intalled on OS X? Trying to get the Eclipse plugin working. [10:45] yoroy: which bzr will tell you on a Terminal [10:46] C-Keen: forgot to mention I don't want to use a Terminal [10:46] :) [10:46] but I could handle it if I knew the command [10:46] I don't understand [10:47] mgz: Ping [10:47] C-Keen: the eclips plugin asks me for the path to the bzr executable. I don't know how to find that path [10:47] yoroy: well type 'which bzr' on a Terminal and you know [10:48] C-Keen: thank you [10:52] pong garyvdm, but I'm leaving in five minutes, hopefully be around a bit later though [10:52] Hi mgz [10:52] The .pyo in the installer were fine [10:53] for plugins [10:53] but the .pyo that were created for plugins that I had in BZR_PLUGIN_PATH got doc strings removed [10:54] did you see the log? [10:54] So if we could get the files in library.zip to be -OO [10:54] you've not got the final part of my don't-recompile-plugin-pyo-files fix [10:54] but leave the exe as -O [10:55] Oh - were is that? [10:55] you need the recent change to bzr setup.py and/or the third rev in the bzr-windows-installer merge proposal [10:55] but leave the exe as -O <- if one of us can work out how to do this, it would also be good. [10:55] Ok - I find that an try a build... [10:56] I saw the bug with recompilation and stopped investigating there, but getting the exe as -O would be good. [10:56] mgz: maybe build the library.zip ourselfs [10:57] Ok cool. [10:57] there's probably a neater way, just didn't get as far as looking for it. [10:57] Thanks [10:58] okay, leaving now. [14:02] hi, does bzr explorer install without a glitch on mac osx? [14:12] bobslee: The installer works well [14:15] bobslee: There are some polish issues on mac though - like the app name in the menu shows as "python". [14:17] bobslee: I'm also not sure if it installs a app icon, so either run "bzr explorer" from a terminal, or create a shortcut icon. [14:24] GaryvdM: ok thanx for info. But it requires a bunch of dependencies Qt, QBzr.. takes a while to install? [14:26] bobslee: Maybe you are reading a old info. The latest installers have every thing you need. [14:27] bobslee: http://wiki.bazaar.canonical.com/MacOSXBundle/SnowLeopard [14:27] bobslee: What version of Mac OS do you have [14:28] 10.5 (leopard) [14:28] bobslee: The 10.6 installer has everything, but for the 10.5 installer, you have to install Qt [14:29] GaryvdM: allrighty, thanx I'll give it a try [14:29] bobslee: http://wiki.bazaar.canonical.com/MacOSXBundle [14:31] GaryvdM: do you whether bzr supports reverse merging (like i.e. in svn: merge -r1000:993) ? [14:31] bobslee: yes [14:34] GaryvdM: I prefer to install bzr (explorer) via macports. Is that a good choice? - because I want to prevent dependency/upgrade nightmares.. [14:35] bobslee: my experience no, but I don't use a mac much, so I would say investigate yourself. [14:35] bobslee: check if they have the latest versions... [14:56] GaryvdM: thanx again [15:43] hi all. I've been trying to push my local modification to my launchpad project for a while but never succeeded: Transport operation not possible: readonly transport [15:43] I added my ssh keys to launchpad and logged into launchpad from my bazaar explorer as described in one of the tuto [15:43] any ideas? [15:51] detritux: Have you done 'bzr launchpad-login'? [15:51] yes I did that in the bazaar explorer [15:51] if I run it without any arguments it prints my login so I assume it worked [15:52] detritux: What is the url that you are pusing to. [15:53] bzr+ssh://bazaar.launchpad.net/~ugocupcic/sr-ros-interface/trunk/ [15:53] detritux: That's odd. [15:54] :S yeah, I only found tutorials / forums and it seemed quite straightforward each time [15:54] detritux: could you please pastbin the relevant entry from ~/.bzr.log [15:57] 0.173 bazaar version: 2.1.1 [15:57] 0.173 bzr arguments: [u'commit', u'-m', u'added dependency to robot_state_publisher for easier build.', u'shadow_robot/sr_hand/manifest.xml'] [15:57] 0.175 encoding stdout as osutils.get_user_encoding() 'UTF-8' [15:57] 0.210 ssh implementation is OpenSSH [15:57] 8.869 opening working tree '/home/genugo/Projects/st-ros-interface' [15:57] 8.934 Traceback (most recent call last): [15:57] File "/usr/lib/python2.6/dist-packages/bzrlib/commands.py", line 853, in exception_to_return_code [15:57] return the_callable(*args, **kwargs) [15:57] File "/usr/lib/python2.6/dist-packages/bzrlib/commands.py", line 1055, in run_bzr [15:57] ret = run(*run_argv) [15:57] File "/usr/lib/python2.6/dist-packages/bzrlib/commands.py", line 661, in run_argv_aliases [15:57] return self.run_direct(**all_cmd_args) [15:57] File "/usr/lib/python2.6/dist-packages/bzrlib/commands.py", line 665, in run_direct [15:57] return self._operation.run_simple(*args, **kwargs) [15:57] File "/usr/lib/python2.6/dist-packages/bzrlib/cleanup.py", line 122, in run_simple [15:57] self.cleanups, self.func, *args, **kwargs) [15:57] File "/usr/lib/python2.6/dist-packages/bzrlib/cleanup.py", line 156, in _do_with_cleanups [15:57] result = func(*args, **kwargs) [15:57] File "/usr/lib/python2.6/dist-packages/bzrlib/plugins/qbzr/lib/commands.py", line 788, in run [15:57] return run_subprocess_command(cmd, bencoded) [15:57] File "/usr/lib/python2.6/dist-packages/bzrlib/plugins/qbzr/lib/subprocess.py", line 789, in run_subprocess_command [15:57] return commands.run_bzr(argv) [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/commands.py", line 1055, in run_bzr [15:58] ret = run(*run_argv) [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/commands.py", line 661, in run_argv_aliases [15:58] return self.run_direct(**all_cmd_args) [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/commands.py", line 665, in run_direct [15:58] return self._operation.run_simple(*args, **kwargs) [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/cleanup.py", line 122, in run_simple [15:58] self.cleanups, self.func, *args, **kwargs) [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/cleanup.py", line 156, in _do_with_cleanups [15:58] result = func(*args, **kwargs) [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/builtins.py", line 3138, in run [15:58] exclude=safe_relpath_files(tree, exclude)) [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/decorators.py", line 192, in write_locked [15:58] self.lock_write() [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/workingtree_4.py", line 618, in lock_write [15:58] self.branch.lock_write() [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/remote.py", line 2377, in lock_write [15:58] remote_tokens = self._remote_lock_write(token) [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/remote.py", line 2367, in _remote_lock_write [15:58] repo_token or '', **err_context) [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/remote.py", line 52, in _call [15:58] return self._client.call(method, *args) [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/smart/client.py", line 132, in call [15:58] result, protocol = self.call_expecting_body(method, *args) [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/smart/client.py", line 145, in call_expecting_body [15:58] detritux: Next time, please use something like http://pastebin.org/ when you paste :-) [15:58] method, args, expect_response_body=True) [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/smart/client.py", line 81, in _call_and_read_response [15:58] expect_body=expect_response_body), [15:58] detritux: paaaaaaaaaaaste bin [15:58] File "/usr/lib/python2.6/dist-packages/bzrlib/smart/message.py", line 306, in read_response_tuple [15:58] _translate_error(self.args) [15:59] File "/usr/lib/python2.6/dist-packages/bzrlib/smart/message.py", line 355, in _translate_error [15:59] raise errors.LockFailed(*error_args[:2]) [15:59] LockFailed: Cannot lock LockDir(lp-70455952:///~ugocupcic/sr-ros-interface/trunk/.bzr/branchlock): Transport operation not possible: readonly transport [15:59] 8.934 Transferred: 1KiB (0.1K/s r:1K w:1K) [15:59] 8.934 return code 3 [15:59] 411.969 Traceback (most recent call last): [15:59] File "_dirstate_helpers_pyx.pyx", line 1852, in bzrlib._dirstate_helpers_pyx._loop_one_block [15:59] StopIteration [15:59] oh my lord [15:59] 417.318 return code 1 [15:59] a bit long, sorry :S [15:59] sorry guys, I'll use pastebin next time [16:00] is your launchpad username *not* ugocupcic? [16:00] because you can't push to other people's branches. [16:01] mgz: /whois detritux = "Ugo Cupcic" [16:01] Seems like that is his user :-) [16:02] yeah [16:02] okay, that's me out. anyone else? [16:06] detritux: I just want to make sure about something. Please will you pastebin 'bzr info'. [16:06] on his local branch rather than the lp one? [16:06] Yes [16:07] Ah - maybe bug 412657 [16:07] Error: Could not parse data returned by Launchpad: The read operation timed out (https://launchpad.net/bugs/412657) [16:07] http://pastebin.org/385322 [16:07] https://bugs.edge.launchpad.net/bzr/+bug/412657 [16:07] Launchpad bug 412657 in Bazaar "update fails when trying to lock master branch (in a readonly checkout) (dup-of: 412223)" [Undecided,New] [16:07] Launchpad bug 412223 in Bazaar "bzr up locks master branch (affected: 2, heat: 4)" [High,Confirmed] [16:08] that bug doesn't seem to have anything for cause or workaround... [16:09] hm unbind / rebind I can try that [16:09] oh, wait, bind/unbind/redo [16:09] how do you unbind ? [16:09] bzr unbind && bzr bind [16:10] :D [16:11] if that fixes it for you I'd wham an "affects me to" on that bug. [16:11] mgz: Can we chat re installer -OO? [16:12] time ok? [16:12] yup, I'm back and lunched now [16:12] Cool - so I was building with all your patches [16:13] ^or rather, affectsmetoo on the bug that one is duped against I guess [16:13] * GaryvdM get branch urls to prove [16:13] yeah I'll do that if it fixes it [16:13] and... stuff still breaks? [16:13] Yes. [16:14] meh, my timestamp checking lines are scrolled out of buffer [16:14] I think I pasted them in here though... [16:15] mgz: The issues was that a plugin that was allready installed on disk from source in a manually set BZR_PLUGIN_PATH got compiled with -OO when bzr.exe ran. [16:15] basically, need see if the mtime of the py file which complains is the same as the stamp in the packaged pyo file [16:16] oh, that's possibly expected [16:16] if it was never actually installed with optimize [16:16] mgz: when I did "set BZR_PLUGIN_PATH=" then it worked... [16:16] one of the things I wanted to find out with that patch is if it's common to use from-source plugins with bundled installers [16:17] which strikes me as dodgy compared to installing into the right plugin dir, but if non-devs actually do it... [16:18] mgz: So the only way that I see -OO viable is if we can get it so that library.zip is compiled as -OO but the .exe is not . [16:19] if people actually do that, I agree (for the moment, a future way is just to mark up plugin cmd objects as well) [16:19] mgz: Your patches to prevent pyo recompile are still valuable though... [16:19] I'll poke around in py2exe [16:20] mgz: How much difference does -OO make compared to -O? [16:20] mgz: I think it would be good to try measure. [16:20] not much, a couple of megs to library.zip and a fractional cold startup improvement [16:21] Alexander did a couple of tests at UDS for me when we were merging it [16:22] https://code.launchpad.net/~gz/bzr/support_OO_flag_installer/+merge/24484 [16:23] mgz: the branches that I built with: lp:~garyvdm/bzr-windows-installers/maybe and lp:~garyvdm/bzr/2.2b3+packing [16:23] The latter now has the org -OO patch reverted. [16:23] dod you know if there'll be a 2.2b4 from the current trunk? [16:25] Bla - lp is sloooow at the moment. [16:25] mgz: according to https://edge.launchpad.net/bzr/2.2 - yes [16:26] is that lp's fault or your undersea cable's? [16:26] Oh yeah - I forgot about that. [16:34] okay, reading py2exe source, doesn't seem to be a configurable way of doing it, but could easily chop it in [16:39] mgz: 7.7% faster cold start - Ok - that makes it worth it ... [16:40] mgz: We could also maybe look at which plugins we can do a -OO on, and which not... [16:40] well, it's not a big job to just fix them all [16:41] but messing with py2exe looks amusing [16:46] mgz: Would it work if we ran byte_compile(optimize=2) for everything going it to library.zip, and then did py2exe with optimize=1 . [16:47] mgz: or does it compile from scratch? [16:47] nope. [16:47] sec, I'll give you a diff to try [16:52] http://paste.ubuntu.com/460272/ < how about that for a horrible hack [16:54] Not to bad. [16:54] GaryvdM: ah I found my real problem in fact. You can't commit on a branch that's being pulled from a svn. That's logical... thanks for your help [16:56] mgz: Suggestion: In build_executable, remember what optimize was, and then restore it. [16:56] I started writing that, then I looked at the diff context and decided it was silly [16:57] really that's a sensible setting we want to keep, so would be best to get a proper version upstream [16:57] mgz: +1 for upstream. [16:58] ...last release was 2008 [17:00] I've got theller to look at patches before though so can probably get it in svn at least [17:01] Very useful: http://pastebin.org/385361 [17:03] yeah, methods are bound late, get a different object back each time [17:03] * GaryvdM goes to find food. [19:15] vila: hi [19:16] vila: Is it true, a fix for the locking thing is in 2.1 branch? if so, we should get it into the LP tree [20:02] blah, what's the bzr push trick to push to where I just branched from? [20:02] I thought it was bzr push --parent, but it's not that [20:04] push :parent [20:04] james_w: thanks [20:30] james_w: hi [20:30] hi lifeless [20:31] I've pushed up a test [20:31] I'm going to try and get some more love in place today and tomorrow [20:31] I can has review? [or is it buried in my email overnight?) [20:31] lifeless: I'm in the middle of looking at it [20:31] it looks broadly fine [20:32] \o/ [20:32] thanks [20:32] I realise the test style is a fresh one [20:32] its not quite -right- but its broadly where I want things to be [20:32] I think its fairly readable ? [20:32] I don't think you need to use dh-make, but I can understand that working out the needed steps might be a bit much [20:32] james_w: if you want to give me a recipe to slot into that fixture, great. [20:33] yeah, it's fairly readable [20:33] I was fighting a bit of an uphill battle at the time ;) [20:33] it's not what I would expect fixtures to be used for really [20:33] thats interesting [20:33] well, at least say the FileMovedReplacedUpstream part [20:34] I would expect to have something like BranchBuilder, where you call methods, rather than compose fixtures [20:34] I'm happy to see how this develops though [20:37] great [20:37] I'll use these as a basis for the next patch too then [20:37] its why I wanted to get this one seen to rapidly, to avoid a big pile of 'nooo' from you :) [20:43] heh [20:44] I just think that the method calls would make reading the intent of the test easier, but let's find out [20:44] it would be nice [20:44] (perhaps) [20:45] to do @with_fixture(fixture_description_here) [20:45] thats kindof the philosophic reason for making it all declarable rather than procedural [20:45] one of the .. reasons [20:46] another is to be able to switch out implementations very easily, a BranchBuilder is more monolithic, so you would switch out all at once rather than granularly. === davidstrauss_ is now known as davidstrauss [22:46] How can I make Loggerhead only bind to localhost? [22:47] nvm === oubiwann is now known as oubiwann-away === oubiwann-away is now known as oubiwann