2013-01-21 GnuCash IRC logs

00:23:19 *** arrainey has quit IRC
00:23:56 *** arrainey has joined #gnucash
00:29:03 *** arrainey has quit IRC
00:29:35 *** arrainey has joined #gnucash
00:34:40 *** arrainey has quit IRC
00:35:13 *** arrainey has joined #gnucash
00:58:30 *** arrainey has quit IRC
00:59:10 *** arrainey has joined #gnucash
01:14:26 *** arrainey has quit IRC
01:15:01 *** arrainey has joined #gnucash
01:20:09 *** arrainey has quit IRC
01:20:45 *** arrainey has joined #gnucash
01:25:51 *** arrainey has quit IRC
01:26:24 *** arrainey has joined #gnucash
01:37:32 *** arrainey has quit IRC
01:54:03 *** calbasi has joined #gnucash
02:20:31 *** john has joined #gnucash
02:20:31 *** gncbot sets mode: +o john
02:50:00 *** john has quit IRC
02:57:54 *** fell has joined #gnucash
02:57:55 *** gncbot sets mode: +o fell
03:42:55 *** calbasi has left #gnucash
04:53:16 *** fabior has joined #gnucash
06:03:46 *** aqua___ has joined #gnucash
06:51:04 *** john has joined #gnucash
06:51:05 *** gncbot sets mode: +o john
07:09:28 *** nafg has quit IRC
07:14:26 *** Jimraeh1 has left #gnucash
07:20:27 *** john has quit IRC
07:24:22 *** Jimraeh1 has joined #gnucash
07:46:44 *** aqua___ has quit IRC
08:05:09 *** fabior has quit IRC
08:39:39 *** fell has quit IRC
08:47:43 *** calbasi has joined #gnucash
09:05:52 *** aqua___ has joined #gnucash
09:47:04 *** KaiForce has joined #gnucash
09:56:35 *** aqua___ has quit IRC
10:10:05 *** fabior has joined #gnucash
10:17:56 *** benoitg has joined #gnucash
10:22:38 *** notam2000 has joined #gnucash
10:23:40 *** ErKa has joined #gnucash
10:32:31 *** pnema has joined #gnucash
11:20:47 *** pnema has quit IRC
11:31:35 *** kpreid has quit IRC
11:32:05 *** kpreid has joined #gnucash
11:58:36 *** rpg_ has quit IRC
12:05:42 *** fell has joined #gnucash
12:05:42 *** gncbot sets mode: +o fell
12:20:38 *** benoitg1 has joined #gnucash
12:21:02 *** benoitg has quit IRC
12:31:17 *** arrainey has joined #gnucash
12:41:28 *** arrainey has quit IRC
12:42:07 *** arrainey has joined #gnucash
12:43:16 *** calbasi has left #gnucash
12:46:17 *** aqua___ has joined #gnucash
12:52:29 *** arrainey has quit IRC
12:53:02 *** arrainey has joined #gnucash
13:05:56 *** fell has quit IRC
13:17:17 *** john has joined #gnucash
13:17:17 *** gncbot sets mode: +o john
13:17:50 *** fell has joined #gnucash
13:17:51 *** gncbot sets mode: +o fell
13:28:58 *** arrainey has quit IRC
13:29:31 *** arrainey has joined #gnucash
13:34:27 *** aqua___ has quit IRC
13:39:38 *** notam2000 has quit IRC
13:42:34 <warlord> hey john..
13:43:34 *** ErKa has quit IRC
13:43:35 <warlord> a few questions: 1) when do I add the [svn] and [svn2git] entries? Before or after the 'git svn init ..'?
13:44:19 <warlord> for the push, I put in: push = refs/remotes/svn/*:refs/heads/*
13:44:52 <warlord> I'm not sure what you mean by "same bare repo for starting point and ending point"..
13:45:13 <warlord> The goal here is to get from svn to gitolite, and then eventually push from gitolite to github...
13:45:39 <warlord> then, eventually, we can get rid of the svn -> gitolite path and just have people commit directly to gitolite which would then push to github.
13:45:53 <warlord> (I'll respond in email later)
13:49:20 <john> warlord: Change the config file after running git svn init.
13:50:48 <john> The way I originally tested was to clone the github repo and push to a new bare repo.
13:51:14 *** benoitg1 has quit IRC
13:52:00 <warlord> Well, I could start with an empty bare repo in gitolite..
13:52:16 <warlord> but the goal is to link to github.
13:52:26 *** benoitg has joined #gnucash
13:52:28 *** GabrieleV has quit IRC
13:52:44 <warlord> I'm not sure how you clone github but then push to a new bare repo
13:54:07 *** split has joined #gnucash
13:54:25 <john> Clone github directly to be your mirror repo, then after running git svn init change the [origin] block to point to your new bare repo.
13:54:52 <john> At this point you could just do that: You've already got the mirror repo synced and all.
13:55:19 <warlord> Well, I would have to reset the gitolite repo..
13:55:30 <john> You can also change the url of origin with `git remote --set-url origin git://foo`
13:55:33 *** GabrieleV has joined #gnucash
13:56:02 <warlord> I could do that, but I want to be able to have the gitolite repo push into github..
13:56:18 <warlord> But I guess I can add a new origin to an empty bare repo?
13:56:37 *** fabior has quit IRC
13:57:01 *** split has quit IRC
13:57:37 <john> Yes, just change origin and try running update -- or just `git push origin`
13:57:59 <john> You might try first with a new bare repo not in gitolite, just to remove that variable.
13:58:55 <john> Once everything else is working, you might have to do a forced push to github for the first update from code.
13:59:35 <warlord> Would I need to do a rebase from github before I push?
14:00:33 <warlord> I guess I don't understand why the mirror script requires a bare repo?
14:01:01 <john> Oh, wait. I know what the problem is.
14:02:03 <john> You have a different git-svn-id so your hashes are coming out different. That's what's causing the not-fast-forward.
14:04:59 <john> The mirror script doesn't require a not-bare repo, but git will bitch about pushing to the checked out branch of a working (not-bare) repo. Public repos are supposed to be bare.
14:06:20 <john> WRT the rebase from github, no, if the hashes match git will just skip over them and it can still be fast-forward.
14:06:43 <john> The problem is that the hashes don't match because the ids are different.
14:07:19 <warlord> Why are the ids different?
14:07:35 <warlord> They are all coming from the same svn source
14:09:08 <john> git svn writes an id message that includes the svn url at the bottom of each commit message. The url in the github repo is "svn+ssh://svn.gnucash.org/repo/gnucash" and yours is "file:///repo/gnucash"
14:09:51 <john> The different text changes the hash of the commit, so git doesn't see them as the same.
14:17:44 *** GabrieleV has quit IRC
14:19:00 <warlord> UGGH.. So that means I have to use the same url to get the same hashes, which means I have to go through the svn+ssh .... :-/
14:19:32 <warlord> I guess that's doable..
14:22:17 <warlord> I'll go play with that this afternoon and try again.
14:22:34 <warlord> (and we should update the wiki to make it clear that the svn URL must be the same)
14:29:08 <john> I think there's another reason, as well: That's the url that we devs are going to have to use until we switch over to git entirely, and so when we git svn dcommit, our local changes will have that url in the id. Git needs to match the hashes between the remote (whether it's code or github) and local in order to correctly update the local repo.
14:36:17 <warlord> Fair enough..
14:36:43 <warlord> I didn't think about that... I never paid much attention to the git work, and didn't realize the svn url was in the commit message. But now that you mention it that makes sense.
14:42:06 <john> Just in case you thought you didn't have enough to do today, I see that the trac SVN browser is broken. "Unsupported version control system "svn": No module named svn"
14:42:55 <warlord> was it working before yesterday?
14:43:29 <warlord> Try now? (I just restarted httpd)
14:43:58 <john> Nope, same error.
14:46:16 *** notam2000 has joined #gnucash
14:46:24 <warlord> Hmm... mod_svn did get updated. Maybe that messed up a config..
14:46:34 <warlord> was it working last week?
14:46:57 <warlord> (there is an updated trac -- let me try that, too)_
14:47:41 <john> I don't remember when I last hit on it, but the cached view shows 22688 being 10 days old.
14:49:51 <john> And it was committed the first, so I guess the last time I looked was 11 days ago.
14:51:30 <warlord> Okay, trac updated...
14:52:22 <john> No joy.
14:57:24 <warlord> Yeah, I see it. ..
15:01:51 <john> I've updated the wiki page with more info about the svn url.
15:02:26 <warlord> okay. thanks.
15:06:32 <warlord> Fixed. The updated subversion package required a *new* subversion-python package to also get installed.
15:06:38 <warlord> Trac is back.
15:11:55 <john> Works here, too. Yay!
15:12:33 *** GabrieleV has joined #gnucash
15:13:10 <warlord> Yeah, it was missing the subversion python bindings.
15:13:23 <warlord> They USED to be part of the svn package, but they got split out in an update.
15:16:16 *** fell has quit IRC
15:17:19 <warlord> john: back to git-svn.. does this mean that 'svn+ssh://YOU@code.gnucash.org/repo' is wrong -- it shouldn't handle the 'YOU@' portion?
15:18:17 <john> No, it strips the "you@" part out of the commit messageā€¦ good thing, too, or only one person would be able to use the repo!
15:19:21 <warlord> Ah, phew!
15:25:05 <warlord> john: do I need to 'git-update' before I run 'git-svn-mirror' in my git-svn repos?
15:25:17 <warlord> (the wiki is still unclear on that)
15:30:27 *** aqua___ has joined #gnucash
15:30:35 <john> No, you shouldn't. After all, you've just cloned, and git svn init takes only a second. Besides, it won't work once you delete the [branch] sections from config (unless you specify a branch on the command line, e.g. `git-update trunk`).
15:30:49 <warlord> ok
15:42:08 *** Strateger has joined #gnucash
15:43:58 *** Strateger has quit IRC
15:50:16 *** evo has joined #gnucash
15:55:04 <warlord> Testing with gnucash-docs, which appears to be the smallest of the three repos
16:00:23 <warlord> Nope, john, that wasn't sufficient.
16:01:31 <warlord> Do I need to add the [svn] and [svn2git] sections before I run git svn init?
16:14:27 *** arrainey has quit IRC
16:15:00 *** arrainey has joined #gnucash
16:21:37 *** aqua___ has quit IRC
16:32:03 *** john has quit IRC
16:36:36 *** fabior has joined #gnucash
16:43:23 *** KaiForce has quit IRC
16:47:27 *** john has joined #gnucash
16:47:27 *** gncbot sets mode: +o john
16:51:31 *** fabior has quit IRC
16:59:41 *** arrainey has quit IRC
17:01:38 *** aqua___ has joined #gnucash
17:01:47 *** notam2000 has quit IRC
17:03:43 *** evo has left #gnucash
17:03:51 <warlord> hey john ... not sure if you saw my previous message.
17:07:59 <john> Sorry, I had to go out for a bit.
17:08:44 <john> I don't think it matters when you modify the config file as long as you do it before running git-svn-mirror update.
17:11:22 <warlord> Well, I did, but I'm still getting the fast-forward issue.
17:11:24 <john> I foolishly started the procedure with gnucash-trunk. That's going to take days, so I started over with gnucash-docs.
17:11:51 <warlord> Yeah, that's much shorter. (gnucash itself takes several hours for me, not days, but I'm local)
17:15:04 <warlord> I can try to ignore gitolite to remove that as an intermediary..
17:18:07 <john> OK. I thought that you already had. Try creating an empty bare repo and then pointing origin's url at it, then run git-svn-mirror update again. Should just zip through the svn part (it's already up to date) and push to the new bare repo.
17:18:42 <warlord> I bet that part works. But then what happens if I try to push *that* to github?
17:23:44 <warlord> Okay, so.. going to a bare file:/// repo works...
17:23:52 <john> That will depend upon what the hashes look like. Once you've gotten that far, we can look at them. However, since Github updates within seconds of a commit, it's unlikely that you'll ever have anything to push.
17:23:53 <warlord> (not too surprising)
17:24:19 <warlord> well, the hope is that eventually code itself will do the pushes, so we don't need your server as the intermediary
17:24:43 *** benoitg has quit IRC
17:25:23 *** benoitg has joined #gnucash
17:25:43 <john> So far so good. Now clone it so that you can run git log, and compare the hashes against the ones in Github.
17:26:42 <warlord> I just did a 'git log -b trunk' ... that worked without a clone..
17:27:02 <warlord> And comparing that to the clone from github:
17:27:12 <warlord> commit be728f08a56884636ba2c66acd62281d64b20c67
17:27:12 <warlord> Author: Yawar Amin <yawar.amin@gmail.com>
17:27:12 <warlord> Date: Sun Jan 20 04:54:54 2013 +0000
17:27:19 <warlord> .... versus ....
17:27:27 <warlord> commit d7f94f194240c1be745fb792b9c45539222be5d5
17:27:27 <warlord> Author: Yawar Amin <yawar.amin@gmail.com>
17:27:27 <warlord> Date: Sun Jan 20 04:54:54 2013 +0000
17:27:51 <warlord> So, the commits *are* different, even though the ids appear the same:
17:27:52 <warlord> git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash-docs/trunk@22718 57a11ea4-9604-0410-9ed3-97b8803252fd
17:27:54 <warlord> vs.
17:28:12 <warlord> git-svn-id: svn+ssh://code.gnucash.org/repo/gnucash-docs/trunk@22718 57a11ea4-9604-0410-9ed3-97b8803252fd
17:28:28 <warlord> So the git-svn-id is the same, but the commit hash is different.
17:29:18 <john> Well, something is different.
17:31:27 <warlord> Obviously, but what? Other than that I'm on LInux and you are on Mac?
17:32:26 <john> But my server is on Linux as well. It's PPC, so the endianness is different, but that shouldn't matter.
17:33:25 <warlord> shouldnt...
17:33:42 <warlord> do you have an x86 linux to retry?
17:34:39 <john> Yeah, I can test it in a VM.
17:35:12 <warlord> -docs should be pretty quick.
17:38:19 <john> Yeah, my test on my x86 mac just completed, including round-tripping (i.e., cloning github, cloning that as working, setting up as a mirror, and updating back to the bare clone).
17:38:44 <john> I got the same be728f08 hash as github.
17:39:26 <warlord> Hmm.. What svn url are you using?
17:42:15 <john> svn+ssh://jralls@svn.gnucash.org/repo/gnucash-docs
17:44:11 <warlord> Oh, you're using SVN.gnucash.org, not CODE.gnucash.org!!!
17:44:44 <warlord> THAT could explain the difference..
17:44:49 <warlord> Let me retry..
17:44:59 <warlord> (well, after my current try finishes)
17:46:22 <john> Sigh. That's clear in the two ids you posted, and we *both* missed it.
17:46:34 <john> I'm old. What's your excuse? ;-)
17:53:08 <warlord> I'm tired
17:56:02 <warlord> trying with svn.gnucash.org..
18:03:07 <warlord> john: Hmm, changing to svn.gnucash.org and now they are different.. but still not matching yours. :-/
18:03:15 <warlord> Now I get:
18:03:17 <warlord> commit fe3249a943aa4b92f0fc588e43f1962c40870495
18:03:17 <warlord> Author: Yawar Amin <yawar.amin@gmail.com>
18:03:17 <warlord> Date: Sun Jan 20 04:54:54 2013 +0000
18:03:32 *** ErKa has joined #gnucash
18:03:32 <warlord> this is with: url = svn+ssh://svn.gnucash.org/repo
18:04:07 <warlord> What happens if you use that url directly, and set up your .ssh/config with:
18:04:12 <warlord> Host svn.gnucash.org
18:04:14 <warlord> User jralls
18:06:05 <warlord> (without hacking into your code account, which I *could* do, I cannot test the theory that it doesn't strip out the User@ from the URL.
18:06:17 <warlord> or perhaps it is case-sensitive?)
18:06:34 <warlord> Is the ignorecase = true important?
18:08:54 <warlord> (testing with ignorecase = true)
18:15:30 <warlord> Nope, ignorecase doesn't help. I still get:
18:15:31 <warlord> commit fe3249a943aa4b92f0fc588e43f1962c40870495
18:15:31 <warlord> Author: Yawar Amin <yawar.amin@gmail.com>
18:15:31 <warlord> Date: Sun Jan 20 04:54:54 2013 +0000
18:15:40 <john> Well, the Linux test worked, in that I got the be728f08 hash for the last commit and the push worked. Trying with the abridged URL now.
18:16:56 <warlord> okay..
18:19:44 <john> Wait, you get the same hash with a different URL? That shouldn't happen.
18:20:25 *** benoitg has quit IRC
18:21:27 <warlord> No, i get the same has with and without ignorecase = true
18:21:31 <john> Oh, I confused myself with the ignore case report. never mind
18:21:52 <warlord> I suppose I can try the user@ just to see if I get a different hash
18:22:08 <warlord> ... and if we do, I don't know how we solve the problem.
18:26:37 <john> Well, my no-user check should be done in a couple of minutes. Let's see what happens.
18:27:59 <warlord> yep
18:28:09 <warlord> and if it *is* different, what do we do?
18:38:44 <john> Dunno. But it's not, it's be728f08. and the push back was successful.
18:39:30 <warlord> :(
18:39:43 <warlord> So what am I doing different?
18:39:55 <john> What's the id line from your latest try?
18:41:55 <warlord> git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash-docs/trunk@22718 57a11ea4-9604-0410-9ed3-97b8803252fd
18:42:08 <warlord> or did you want the hash?
18:42:50 <john> No, got the hash, fe3249a9. That's what I wanted.
18:44:37 <john> Try this: in each repo (i.e., the one you cloned from git and your latest mirror)
18:44:46 <john> git format-patch HEAD^
18:45:00 <john> and then diff the resulting patches.
18:46:40 <warlord> The only diff is the hash
18:46:53 <warlord> --- /tmp/0001-Bug-633524.patch 2013-01-21 18:45:59.000000000 -0500
18:46:53 <warlord> +++ 0001-Bug-633524.patch 2013-01-21 18:45:24.000000000 -0500
18:46:53 <warlord> @@ -1,4 +1,4 @@
18:46:53 <warlord> -From be728f08a56884636ba2c66acd62281d64b20c67 Mon Sep 17 00:00:00 2001
18:46:53 <warlord> +From fe3249a943aa4b92f0fc588e43f1962c40870495 Mon Sep 17 00:00:00 2001
18:46:53 <gncbot> warlord: Error: "@" is not a valid command.
18:46:54 <warlord> From: Yawar Amin <yawar.amin@gmail.com>
18:46:56 <warlord> Date: Sun, 20 Jan 2013 04:54:54 +0000
18:46:58 <warlord> Subject: [PATCH] Bug #633524
18:49:20 <warlord> john: here is my .git/config: http://pastebin.ca/2305609
18:55:01 <john> Aside from order, and paths, it's the same as mine. Paths isn't the issue, either, as they're different between mac and linux (/Users/john vs. /home/john).
19:03:12 <john> Looking into what gets hashed a bit more, the commit contains the tree hash and parent (i.e., previous commit) hash. If those are different, the result will have a different hash.
19:03:58 <john> You can look at them with git cat-file -p hash.
19:08:44 *** aqua_ has joined #gnucash
19:12:11 *** Silly has quit IRC
19:17:28 *** aqua___ has quit IRC
19:24:08 <john> warlord, did you ever try running the procedure with everything outside of gitolite?
19:32:19 <warlord> yes.
19:33:38 <warlord> that cat-file command isnt working for me
19:34:39 <warlord> the only issue with gitolite, AFAICT, is that the hashes differ, causing the issues.
19:35:18 <warlord> I suspect that if I used an empty gitolite repo it would work the same as my local repo, but the hashes might still differ from yours.
19:43:05 *** aqua_ has quit IRC
19:57:03 *** john has quit IRC
21:10:50 *** aqua___ has joined #gnucash
21:12:35 *** arrainey has joined #gnucash
21:33:01 *** arrainey has quit IRC
21:33:41 *** arrainey has joined #gnucash
21:34:31 *** aqua___ has quit IRC
21:42:41 *** yawar has joined #gnucash
21:55:48 *** ErKa has quit IRC
22:08:20 *** fell has joined #gnucash
22:08:20 *** gncbot sets mode: +o fell
22:49:23 *** arrainey has quit IRC
22:49:56 *** arrainey has joined #gnucash
23:05:17 *** arrainey has quit IRC
23:05:52 *** arrainey has joined #gnucash
23:11:00 *** arrainey has quit IRC
23:11:40 *** arrainey has joined #gnucash
23:30:03 *** GabrieleV has quit IRC
23:37:07 *** arrainey has quit IRC
23:37:43 *** arrainey has joined #gnucash
23:47:12 *** aqua___ has joined #gnucash
23:58:13 *** arrainey has quit IRC
23:58:46 *** arrainey has joined #gnucash