[20:27] <peetaur> What's the easiest way to split up a big patch into a bunch of smaller ones?
[20:35] <mgrandi> well, you can either commit only some of the files at a time
[20:36] <mgrandi> or you can select only certain parts of files to commit, although i believe that requires staging (this is easiest in bzr explorer -> stage)
[20:36] <mgrandi> err, shelve
[20:38] <peetaur> is bzr explorer some other tool?
[20:38] <mgrandi> its a GUI for bazaar, makes certain things eaiser
[20:38] <mgrandi> easier*
[20:38] <peetaur> how do I make a local commit? I split one of my patches manually and it won't let me commit, since it seems to want to send to the remote.
[20:38] <peetaur> bzr: ERROR: Cannot lock LockDir(http://bazaar.launchpad.net/~apparmor-dev/apparmor/master/.bzr/branch/lock): Transport operation not possible: http does not support mkdir()
[20:39] <mgrandi> you append --local when you do bzr commit, although thats weird that its doing that, is it bound to the http version of the branch?
[20:40] <mgrandi> probably should unbind the branch, 'bzr unbind'
[20:40] <mgrandi> and rebind it with the correct url, "bzr branch lp:apparmor"
[20:41] <mgrandi> err "bzr bind lp:apparmor"
[20:42] <peetaur> and then I can commit locally?
[20:42] <mgrandi> if you 'bind' a branch, it wants to commit to remote after you commit locally, sort of like svn
[20:42] <mgrandi> if you only want to commit locally now, just 'bzr unbind'
[20:47] <peetaur> okay so I did the bind thing and same sort of thing     bzr: ERROR: Cannot lock LockDir(chroot-72202384:///%2Bbranch/apparmor/.bzr/branch/lock): Transport operation not possible: readonly transport
[20:47] <peetaur> so I have to unbind every time I want to commit locally?
[20:47] <peetaur> no way to add multiple remotes like with git, and choose when and where to push?
[20:48] <mgrandi> what is chroot-72202384?
[20:48] <peetaur> no idea :D
[20:48] <mgrandi> Bind is just a convince, to make it act like SVN, its not really like a git remote
[20:49] <mgrandi> jelmer: do you have any idea what his problem is?
[20:49] <mgrandi> you can just leave it 'unbound', and then when you are ready, you commit it, and push it to launchpad, then you can do a merge request there
[20:50] <peetaur> k, I think that answers an unasked question.. so when I bind, I'm binding to my own personal thing then
[20:50] <peetaur> can people choose individual commits from my online version?
[20:50] <peetaur> (without manually editing that is)
[20:51] <mgrandi> they can set the branch tip to be a certain commit and merge that
[20:52] <mgrandi> although i'm pretty sure merging one commit is preferable then a bunch of them
[20:53] <mgrandi> you can have multiple commits, like commit 1: fixed thing, part 1, commit 2: part 2, commit 3: finished feature, and then at commit 3 they merge it
[20:54] <peetaur> k, well I have a feature, a few fixes, and some typos, and 2 major performance fixes (one or the other or both takes a certain audit.log processing down from unknown >1h to 5 min :))
[20:54] <peetaur> well actually one of the bugs is 1/2 performance fixes
[20:54] <mgrandi> well usually in all version controls, a merge request should be 1 thing
[20:54] <peetaur> so I can just dump that there and they won't scream?
[20:54] <mgrandi> so 1 merge for a feature, 1 for the bug fixes, etc
[20:55] <peetaur> can I request one feature merged even if my online thing has a bunch?
[20:55] <mgrandi> i'd probably ask on wherever apparmor's irc is and see if they have a preference
[20:55] <peetaur> k, I think they just want email on the list
[20:56] <peetaur> but the online thing would be an interesting option, like if I could link them to my patches there or something
[20:56] <mgrandi> that too, you can just generate a patch file
[20:56] <mgrandi> i would just have it so you have the base that you branched off of
[20:56] <mgrandi> one patch file that goes from base -> code with feature
[20:56] <mgrandi> one that is base -> code with bug fixes
[20:56] <mgrandi> one with base -> log improvements, tec
[20:56] <mgrandi> etc*
[20:57] <peetaur> what I was planning was to split my commit into a few, then do like "git diff oldremote commit1" and send, then "git diff commit1 commit2" etc
[20:57] <peetaur> does that plan make sense with bzr?
[20:57] <peetaur> so to merge my question and your question...   you say file, but I say commit. Can bzr do diffs between local commits like git can?
[20:58] <mgrandi> yeah
[20:58] <mgrandi> "bzr diff -p1" is equivalent to "bzr diff --prefix old/:new/", and
[20:58] <mgrandi>   produces patches suitable for "patch -p1"
[20:59] <peetaur> I have been simply using "diff" and patch -p1 seems happy :D
[20:59] <peetaur> "bzr diff" that is
[20:59] <peetaur> or maybe I imagined it
[21:01] <peetaur> https://bugs.launchpad.net/bzr-historycache/+bug/382957  how do I disable plugins?
[21:02] <mgrandi> so you are using bzr-historycache?
[21:02] <peetaur> I don't think so https://bpaste.net/show/7281d000cfdc
[21:03] <peetaur> so is that not my bug?
[21:04] <mgrandi> can you paste the entire traceback when you are getting the 'transport operation not possible'?
[21:04] <peetaur> there is no trace, only that line
[21:05] <peetaur> is this related then? do I need to create a new branch? https://answers.launchpad.net/launchpad/+question/154704
[21:08] <mgrandi> one sec
[21:09] <mgrandi> are you sure your branch is unbound?
[21:09] <mgrandi> bzr info -v
[21:09] <mgrandi> paste that in pastebin
[21:11] <peetaur> I am not sure of anything... I don't know bzr at all :D  https://bpaste.net/show/cfc4a9afda09
[21:11] <peetaur> it is not unbound
[21:11] <mgrandi> so run bzr unbind just to be sure
[21:12] <peetaur> because I ran "bzr bind lp:apparmor"
[21:12] <peetaur> but I wanted to put it on lp to test it
[21:12] <mgrandi> just run 'bzr unbind', don't need to specify a url
[21:12] <mgrandi> you need to create a branch on launchpad i believe
[21:12] <mgrandi> or fork it
[21:14] <mgrandi> somehow on bzr
[21:14] <mgrandi> one sec let me find it
[21:17] <mgrandi> ok
[21:18] <mgrandi> you branched lp:apparmor
[21:18] <mgrandi> for something i did a while ago, it says for me (except it was lp:bzr)
[21:18] <mgrandi> https://gist.github.com/anonymous/6086156f7e6d80caeb81
[21:18] <mgrandi> so try bzr push lp:~<USERNAME>/bzr/<BRANCH_NAME>
[21:21] <peetaur> push, or bind?
[21:21] <mgrandi> push
[21:21] <mgrandi> that will put your branch on launchpad
[21:22] <mgrandi> and then you can go to "https://code.launchpad.net/~apparmor-dev/apparmor/master", and click "propose for merging"
[21:24] <peetaur> how can someone view my branch without a propose for merging?
[21:25] <peetaur> oh I guess I found it.... clicked "code" tab at the top of my page https://code.launchpad.net/~peter-maloney/bzr/peter
[21:26] <mgrandi> yeah
[21:26] <mgrandi> you put that as the "Target Branch" when you are "registering a merge"
[21:26] <mgrandi> (when you are here: https://code.launchpad.net/~apparmor-dev/apparmor/master/+register-merge)
[21:31] <peetaur> yes but the apparmor project does it on the mailing list, so I'll play around with the lp pushing, but not do the merge request
[21:33] <mgrandi> ok
[21:36] <peetaur> so thanks for all the help
[21:37] <peetaur> and I decided that copying my bzr repo, using vimdiff one file at a time, then commiting the copied repo works for splitting patches
[21:49] <mgrandi> ok! let me know if you have any more questions =)
[22:10] <peetaur> (copying bzr repo, then "bzr revert" that is)