How to resolve "invalid author/committer line - bad email"

2,794 views
Skip to first unread message

ferzkopp

unread,
Mar 27, 2012, 10:41:47 AM3/27/12
to hg-git
Hi,

I am trying create an automated hg-github clone script for SDL and ran
into the "bad email" issue"

MiniMac:SDL aschiffler$ hg push -f -v git+ssh://
g...@github.com:ferzkopp/SDL.git
pushing to git+ssh://g...@github.com:ferzkopp/SDL.git
creating and sending data
["git-receive-pack 'ferzkopp/SDL.git'"]
error: object 0e3a60dd45abd6593e0fba540234b4cbbd749aad:invalid author/
committer line - bad email
fatal: Error in object

Here are some questions:
- how can this be debugged? -v did not tell me the "bad email"
- is there a way to get this autoresolved (i.e. replace all "bad
emails" with "good email" ... like mine);

I am using the latest hg-git sources (fresh clone).

Thanks,
Andreas

Keshav Kini

unread,
Mar 30, 2012, 7:09:12 AM3/30/12
to hg-...@googlegroups.com
I think you can debug this by going to the git repository that hg-git creates in the .hg directory, and then running `git cat-file -p 0e3a60dd`. This should show you the invalid author/email line, if I'm not mistaken. It looks to me like this is dulwich creating an invalid git object, and then git (on github's servers) complaining about the invalid object you're trying to send it. But I'm not sure, without the actual data.

-Keshav

ferzkopp

unread,
Mar 30, 2012, 9:58:54 AM3/30/12
to hg-...@googlegroups.com
Thanks Keshav - good tip. It looks like the email got messed up pretty bad.

MiniMac:git aschiffler$ git cat-file -p 0e3a60dd
tree 45773ca16e4cdd609ffee7875754f37c280bf10f
parent d4637e7a6510d4d16d5e4b123aa017b6f0f294ee
author Dennis Cappendijk <Dennis.C...@tass-safe.com <none@none> 1303291501 +0200
committer Dennis Cappendijk <Dennis.C...@tass-safe.com <none@none> 1303291501 +0200

Debug win 32 settings was wrongfully set to build the Release 32bit version.

Augie Fackler

unread,
Mar 30, 2012, 10:11:43 AM3/30/12
to hg-...@googlegroups.com

On Mar 30, 2012, at 8:58 AM, ferzkopp wrote:

> Thanks Keshav - good tip. It looks like the email got messed up pretty bad.
>
> MiniMac:git aschiffler$ git cat-file -p 0e3a60dd
> tree 45773ca16e4cdd609ffee7875754f37c280bf10f
> parent d4637e7a6510d4d16d5e4b123aa017b6f0f294ee
> author Dennis Cappendijk <Dennis.C...@tass-safe.com <none@none>
> 1303291501 +0200
> committer Dennis Cappendijk <Dennis.C...@tass-safe.com <none@none>
> 1303291501 +0200

Ugh. This looks like a regression from a recent patch series. I'll back it out and then ping this thread and the author of the changes.

> --
> You received this message because you are subscribed to the Google Groups "hg-git" group.
> To view this discussion on the web visit https://groups.google.com/d/msg/hg-git/-/s67gLWQ5w2wJ.
> To post to this group, send email to hg-...@googlegroups.com.
> To unsubscribe from this group, send email to hg-git+un...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/hg-git?hl=en.
>

Augie Fackler

unread,
Mar 30, 2012, 10:31:12 AM3/30/12
to hg-...@googlegroups.com

On Mar 30, 2012, at 8:58 AM, ferzkopp wrote:

> Thanks Keshav - good tip. It looks like the email got messed up pretty bad.
>
> MiniMac:git aschiffler$ git cat-file -p 0e3a60dd
> tree 45773ca16e4cdd609ffee7875754f37c280bf10f
> parent d4637e7a6510d4d16d5e4b123aa017b6f0f294ee
> author Dennis Cappendijk <Dennis.C...@tass-safe.com <none@none>
> 1303291501 +0200
> committer Dennis Cappendijk <Dennis.C...@tass-safe.com <none@none>
> 1303291501 +0200

Can you try checking out hg-git revision 1189e52ba27c and see if that fixes the problem? I think this is caused by e58a6d0b80e2, so it turns out the author is already paying attention.

(I'm using hg revision IDs for hg-git. Canonical repo is https://bitbucket.org/durin42/hg-git/ if you're using the git source for some reason.)

Keshav Kini

unread,
Mar 30, 2012, 2:36:48 PM3/30/12
to hg-...@googlegroups.com
Can you take a look at the equivalent commit in the original Hg repository and see what the username/email string looks like there? (I'm the author of e58a6d0b80e2, which Augie referred to above.)

-Keshav


On Friday, March 30, 2012 6:58:54 AM UTC-7, ferzkopp wrote:
Thanks Keshav - good tip. It looks like the email got messed up pretty bad.

MiniMac:git aschiffler$ git cat-file -p 0e3a60dd
tree 45773ca16e4cdd609ffee7875754f37c280bf10f
parent d4637e7a6510d4d16d5e4b123aa017b6f0f294ee
author Dennis Cappendijk <Dennis.Cappendijk@tass-safe.com <none@none> 1303291501 +0200
committer Dennis Cappendijk <Dennis.Cappendijk@tass-safe.com <none@none> 1303291501 +0200

ferzkopp

unread,
Mar 31, 2012, 3:14:34 AM3/31/12
to hg-...@googlegroups.com

The original email was missing the closing ">" ... this is the commit message for the item in question:
http://hg.libsdl.org/SDL/rev/82cd9b2ec39c

After updating both hg-git and the source repo, the push segfaults.

MiniMac:SDL aschiffler$ hg push -f git+ssh://g...@github.com:ferzkopp/SDL.git

pushing to git+ssh://g...@github.com:ferzkopp/SDL.git
creating and sending data
["git-receive-pack 'ferzkopp/SDL.git'"]
error: index-pack died of signal 11

--Andreas

Keshav Kini

unread,
Apr 3, 2012, 11:18:27 AM4/3/12
to hg-...@googlegroups.com
On Sat, Mar 31, 2012 at 15:14, ferzkopp <aschi...@ferzkopp.net> wrote:
>
> The original email was missing the closing ">" ... this is the commit
> message for the item in question:
> http://hg.libsdl.org/SDL/rev/82cd9b2ec39c

Hmm. I can't replicate this with the latest hg-git from bitbucket::

fs@boone ~/src $ hg clone http://hg.libsdl.org/SDL/
destination directory: SDL
requesting all changes
adding changesets
adding manifests
adding file changes
added 6304 changesets with 28656 changes to 3347 files (+1 heads)
updating to branch default
1033 files updated, 0 files merged, 0 files removed, 0 files unresolved
fs@boone ~/src $ cd SDL
fs@boone ~/src/SDL $ hg gexport
exporting hg objects to git
exporting [================================================> ] 6303/6304 01s
fs@boone ~/src/SDL $ hg log | grep -B1 "Dennis Cappendijk"
changeset: 5543:82cd9b2ec39c
user: Dennis Cappendijk <Dennis.C...@tass-safe.com
fs@boone ~/src/SDL $ grep "82cd9b2ec39c" .hg/git-mapfile
36d698513a503d4294e5e524deddae0c575eeb08
82cd9b2ec39cd3c112adcfb1f12275891387d345
fs@boone ~/src/SDL $ cd .hg/git
fs@boone ~/src/SDL/.hg/git $ git cat-file -p
36d698513a503d4294e5e524deddae0c575eeb08
tree 45773ca16e4cdd609ffee7875754f37c280bf10f
parent d4637e7a6510d4d16d5e4b123aa017b6f0f294ee
author Dennis Cappendijk <Dennis.C...@tass-safe.com> 1303291501 +0200
committer Dennis Cappendijk <Dennis.C...@tass-safe.com>
1303291501 +0200

Debug win 32 settings was wrongfully set to build the Release 32bit version.

fs@boone ~/src/SDL/.hg/git $ git fsck
notice: HEAD points to an unborn branch (master)
Checking object directories: 100% (256/256), done.
dangling commit bd38a4b755b77f1b61a4b2856ea81599714db301
dangling commit 374b48d7f83dc5d0110f08c0d7f72ce3f3a19678
dangling commit 3d629289a0e80fead0bac4566af3e71ca11b386d
dangling commit 4596282a20840008e1c961a0211ce29f4ff3c0dc
dangling commit 37acd6534b89661bc144edb43d04602da37c9968
dangling commit 18b66e3d2e6f0780e935daed204c2cbaa2ede7dc
dangling commit 8cca3c9e868e5d65541d1e64ac8fc9fc32de75b0
dangling commit 73d23c5dc81b553117c1346234274055944a3500
dangling commit 8e10f5f1fd27b4d6a83d953f5b1d95e42018cb3d
dangling commit 8d4b99416f68c45519bcab15ac1a1964435f0b0b
dangling commit f559eb8223416ba836478dc029717ad57752af3a
dangling commit 3a930fc65696ea4577258d88e5acaa74c7abf59e
dangling commit 93bd217847ac329e8992329511ff1d9eea13cb70
dangling commit ebc0ad80d69fa34a5c5b5973bfd5876f39237d32
dangling commit 24df9f9b0fb22fdf7ca52daf3d080169607db268

Looks all in order to me... The "dangling commit" stuff is just a bunch of
Mercurial heads which don't have git branches attached to them, viz. ::

fs@boone ~/src/SDL/.hg/git $ git fsck | grep "dangling commit" | wc -l
notice: HEAD points to an unborn branch (master)
Checking object directories: 100% (256/256), done.
15
fs@boone ~/src/SDL/.hg/git $ hg -R ../.. heads -c | grep changeset | wc -l
15

-Keshav

Reply all
Reply to author
Forward
0 new messages