Localization: Timestamps get wrong if using different locales
Hello!
Running this commands locally (german locale) lead to some wrong dates for the patches upstream.
git format-patch -o patches origin
git send-email --compose --no-chain-reply-to --to [email protected] --suppress-cc=author patches/0001-l10n-Turkish-update.patch
The local
Date: Sat, 4 Aug 2012
became
Wed, 8 Dec 2004
So it looks like matching DD=04=YY MM=08=DD and YY=12=MM
German date format usually looks DD.MM.YYYY
A workaround for me was running the lines with LANGUAGE=en
I am using
git-send-email 1.7.10.4
with the patch from here
http://www.mail-archive.com/[email protected]/msg05240.html
but I do not expect this to do any harm here.
Shall I provide more information?
Regards
Christoph
Quoted 4 lines · Christoph Miebach
Running this commands locally (german locale) lead to some wrong dates for the patches upstream.
git format-patch -o patches origin
What does "git show -s --pretty=fuller HEAD" give you at this point? This is to check what kind of timestamps are stored in the original commit objects.
And what does "grep '^Date: ' patches/0001-*" show you at this point? This is to see if the problem is at the "format-patch" step.
Quoted 2 lines
git send-email --compose --no-chain-reply-to --to [email protected] --suppress-cc=author
patches/0001-l10n-Turkish-update.patch
And what does "grep '^Date: '" for the message that is received by recipients show at this step? They cannot be
Quoted 6 lines
The local
Date: Sat, 4 Aug 2012
becameWed, 8 Dec 2004
as these two do not even have times and zones. It should read something like
Date: Sun, 05 Aug 2012 13:39:12 -0700
or something.
Also "Date" on which message do you see your problem with? The one that is created with --compose? Or the one that was originally produced by format-patch and then sent? Or both?
The timestamps used by git-send-email is obtained by calling time() function of Perl, and is not affected by timezone, and the function format_2822_time() implements the e-mail header timestamp in a way that should not be affected by any locales as far as I know, so it is curious where the "breakage" is coming from.
Quoted 1 line
Shall I provide more information?
Yes.
Hello!
What I am doing is:
invoking a bash script that does the
git add ${i##$TXPATH/}/strings.xml
git commit --author="$AUTHOR" ${i##$TXPATH\/}/strings.xml -m "l10n: $LNAME update"
after a user confirmation.
IIUC setting LANGUAGE=en at the top of this script _did_ help. So I run everything with german locale for reproducing this.
Quoted 10 lines · Junio C Hamano
Quoted 4 lines · Christoph Miebach
Running this commands locally (german locale) lead to some wrong dates for the patches upstream.
git format-patch -o patches origin
What does "git show -s --pretty=fuller HEAD" give you at this point? This is to check what kind of timestamps are stored in the original commit objects.
See pretty_fuller.txt
Quoted 2 lines
And what does "grep '^Date: ' patches/0001-*" show you at this point? This is to see if the problem is at the "format-patch" step.
See date_grep.txt
Quoted 13 lines
Quoted 2 lines
git send-email --compose --no-chain-reply-to --to [email protected] --suppress-cc=author
patches/0001-l10n-Turkish-update.patchAnd what does "grep '^Date: '" for the message that is received by recipients show at this step? They cannot be
Quoted 6 lines
The local
Date: Sat, 4 Aug 2012
becameWed, 8 Dec 2004
Quoted 6 lines
as these two do not even have times and zones. It should read something like
Date: Sun, 05 Aug 2012 13:39:12 -0700or something.
It was a complete line. I just did not copy all of it, for I thought I already pointed out the problem.
The recipient uses en_CA.UTF-8 and guesses:
Date: 12-08-05 06:10 PM
it is Y-M-D, but git thinks it's M-Y-D
Quoted 3 lines
Also "Date" on which message do you see your problem with? The one that is created with --compose? Or the one that was originally produced by format-patch and then sent? Or both?
git log should show the translators name ($AUTHOR in the git commit line)
Sorry for the late (and probably still incomplete) reply. I can provide a complete example or send a patch to a dummy project if you prefer some time next week, I hope.
Regards
Christoph
commit b6f59b4a61f1bd203bb0d449dabac7b16351e2e1
Author: Christoph Miebach <[email protected]> AuthorDate: Mon Aug 6 00:07:54 2012 +0200 Commit: Christoph Miebach <[email protected]> CommitDate: Mon Aug 6 00:07:54 2012 +0200
l10n: German update
Date: Mon, 6 Aug 2012 00:07:54 +0200