From: Junio C Hamano <hidden> Date: 2016-06-15 23:01:55
Stepan Kasal [off-list ref] writes:
Hello Hannes,
attached please find the patches that Karsten pointed out:
1) The unicode file name support was omitted from his unicode patch
series; my mistake, sorry. There is still big part missing: support
for unicode environment; I can only hope the tests would choke on
that.
2) Windows cannot pass non-UTF parameters (commit messages in this
case): original patch by Pat Thoyts was extended to apply to other
similar cases: the commit msg is passed through stdin.
If there are still problems remaining, please tell us.
Thanks,
Stepan
Karsten Blees (2):
Win32: Unicode file name support (except dirent)
Win32: Unicode file name support (dirent)
Pat Thoyts and Stepan Kasal(1):
tests: do not pass iso8859-1 encoded parameter
Thanks. I'll queue these and wait for Windows folks to respond.
With favourable feedback they can go directly from pu to master, I
would think.
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Hello Hannes,
attached please find the patches that Karsten pointed out:
1) The unicode file name support was omitted from his unicode patch
series; my mistake, sorry. There is still big part missing: support
for unicode environment; I can only hope the tests would choke on
that.
2) Windows cannot pass non-UTF parameters (commit messages in this
case): original patch by Pat Thoyts was extended to apply to other
similar cases: the commit msg is passed through stdin.
If there are still problems remaining, please tell us.
Thanks,
Stepan
Karsten Blees (2):
Win32: Unicode file name support (except dirent)
Win32: Unicode file name support (dirent)
Pat Thoyts and Stepan Kasal(1):
tests: do not pass iso8859-1 encoded parameter
Thanks. I'll queue these and wait for Windows folks to respond.
With favourable feedback they can go directly from pu to master, I
would think.
Looking good. After fixing the ELOOP and fchmod issues (see followup
patches), there are 9 test failures left. Only one of these is
environment related, and for the rest we have fixes in the msysgit
fork:
* t0081-line-buffer: 1
Using file descriptor other than 0, 1, 2.
https://github.com/msysgit/git/commit/4940c51a
* t0110-urlmatch-normalization: 1
Passing binary data on the command line...would have to teach test-urlmatch-normalization.c to read from stdin or file.
https://github.com/msysgit/git/commit/be0d6dee
* t4036-format-patch-signer-mime: 1
not ok 4 - format with non ASCII signer name
#
# GIT_COMMITTER_NAME="はまの ふにおう" \
# git format-patch -s --stdout -1 >output &&
# grep Content-Type output
#
Passing non-ASCII by environment variable, will be fixed by Unicode environment support.
* t4201-shortlog: 3
Passing binary data on the command line ('git-commit -m').
https://github.com/msysgit/git/commit/3717ce1b
* t4210-log-i18n: 2
Passing binary data on the command line ('git log --grep=$latin1_e').
https://github.com/msysgit/git/commit/dd2defa3
* t7001-mv: 6
cp -P fails in MinGW - perhaps use the long option forms (--no-dereference)?
https://github.com/msysgit/git/commit/00764ca1
* t8001-annotate/t8002-blame: 5
Msys.dll thinks '-L/regex/' is an absolute path and expands to '-LC:/msysgit/regex/'.
https://github.com/msysgit/git/commit/2d52168a
* t8005-blame-i18n: 4
Passing binary data on the command line ('git-commit --author -m').
https://github.com/msysgit/git/commit/3717ce1b
* t9902-completion: 2
Must use 'pwd -W' to get Windows-style absolute paths.
https://github.com/msysgit/git/commit/9b612448
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
2.0.1.779.g26aeac4.dirty
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
From: Jonathan Nieder <hidden> Date: 2016-06-15 23:01:56
Karsten Blees wrote:
MinGW and MSVC before 2010 don't define ELOOP, use EMLINK (aka "Too many
links") instead.
[...]
+#ifndef ELOOP
+#define ELOOP EMLINK
+#endif
This could use
#define ELOOP WSAELOOP
as an alternative. But it shouldn't matter since git doesn't look for
EMLINK anywhere (EMLINK = 31, WSAELOOP = wsabaseerr+62 = 10062).
Reviewed-by: Jonathan Nieder <redacted>
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
MinGW and MSVC before 2010 don't define ELOOP, use EMLINK (aka "Too many
links") instead.
[...]
quoted
+#ifndef ELOOP
+#define ELOOP EMLINK
+#endif
This could use
#define ELOOP WSAELOOP
as an alternative. But it shouldn't matter since git doesn't look for
EMLINK anywhere (EMLINK = 31, WSAELOOP = wsabaseerr+62 = 10062).
Reviewed-by: Jonathan Nieder <redacted>
It matters when we report the error to the user (i.e. via die_errno):
strerror(EMLINK) -> "Too many links"
strerror(10062) -> "Unknown error"
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
There is no fchmod() on native Windows platforms (MinGW and MSVC), and the
equivalent Win32 API (SetFileInformationByHandle) requires Windows Vista.
Use chmod() instead.
Signed-off-by: Karsten Blees <redacted>
---
config.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
@@ -1636,8 +1636,8 @@ int git_config_set_multivar_in_file(const char *config_filename,MAP_PRIVATE,in_fd,0);close(in_fd);-if(fchmod(fd,st.st_mode&07777)<0){-error("fchmod on %s failed: %s",+if(chmod(lock->filename,st.st_mode&07777)<0){+error("chmod on %s failed: %s",lock->filename,strerror(errno));ret=CONFIG_NO_WRITE;gotoout_free;
@@ -1815,8 +1815,8 @@ int git_config_rename_section_in_file(const char *config_filename,fstat(fileno(config_file),&st);-if(fchmod(out_fd,st.st_mode&07777)<0){-ret=error("fchmod on %s failed: %s",+if(chmod(lock->filename,st.st_mode&07777)<0){+ret=error("chmod on %s failed: %s",lock->filename,strerror(errno));gotoout;}
--
2.0.1.779.g26aeac4.dirty
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
From: Johannes Sixt <hidden> Date: 2016-06-15 23:01:56
Am 16.07.2014 00:54, schrieb Karsten Blees:
quoted hunk
There is no fchmod() on native Windows platforms (MinGW and MSVC), and the
equivalent Win32 API (SetFileInformationByHandle) requires Windows Vista.
Use chmod() instead.
Signed-off-by: Karsten Blees <redacted>
---
config.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
@@ -1636,8 +1636,8 @@ int git_config_set_multivar_in_file(const char *config_filename,MAP_PRIVATE,in_fd,0);close(in_fd);-if(fchmod(fd,st.st_mode&07777)<0){-error("fchmod on %s failed: %s",+if(chmod(lock->filename,st.st_mode&07777)<0){+error("chmod on %s failed: %s",lock->filename,strerror(errno));ret=CONFIG_NO_WRITE;gotoout_free;
@@ -1815,8 +1815,8 @@ int git_config_rename_section_in_file(const char *config_filename,fstat(fileno(config_file),&st);-if(fchmod(out_fd,st.st_mode&07777)<0){-ret=error("fchmod on %s failed: %s",+if(chmod(lock->filename,st.st_mode&07777)<0){+ret=error("chmod on %s failed: %s",lock->filename,strerror(errno));gotoout;}
I assume you tested this patch on Windows. I am mildly surprised that
(on Windows) chmod() works on a file that is still open.
-- Hannes
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
There is no fchmod() on native Windows platforms (MinGW and MSVC), and the
equivalent Win32 API (SetFileInformationByHandle) requires Windows Vista.
Use chmod() instead.
Signed-off-by: Karsten Blees <redacted>
---
config.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
@@ -1636,8 +1636,8 @@ int git_config_set_multivar_in_file(const char *config_filename,MAP_PRIVATE,in_fd,0);close(in_fd);-if(fchmod(fd,st.st_mode&07777)<0){-error("fchmod on %s failed: %s",+if(chmod(lock->filename,st.st_mode&07777)<0){+error("chmod on %s failed: %s",lock->filename,strerror(errno));ret=CONFIG_NO_WRITE;gotoout_free;
@@ -1815,8 +1815,8 @@ int git_config_rename_section_in_file(const char *config_filename,fstat(fileno(config_file),&st);-if(fchmod(out_fd,st.st_mode&07777)<0){-ret=error("fchmod on %s failed: %s",+if(chmod(lock->filename,st.st_mode&07777)<0){+ret=error("chmod on %s failed: %s",lock->filename,strerror(errno));gotoout;}
I assume you tested this patch on Windows. I am mildly surprised that
(on Windows) chmod() works on a file that is still open.
-- Hannes
Yes, file attributes can be set independently of open files. In fact, existing
code in git already does that in many places (via adjust_shared_perm(), which
is typically called while the file is open).
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Hello Karsten,
thanks for your analysis. Most of the patches you refer to are simply
switching off tests for MINGW; let me comment on the remaining ones:
* t0110-urlmatch-normalization: 1
Passing binary data on the command line...would have to
teach test-urlmatch-normalization.c to read from stdin or file.
https://github.com/msysgit/git/commit/be0d6dee
Indeed, that would be better solution. For now, I'm going to submit the
switch-off patch you mention.
* t4036-format-patch-signer-mime: 1
Passing non-ASCII by environment variable, will be fixed by Unicode
environment support.
Will submit that patch series soon.
* t7001-mv: 6
cp -P fails in MinGW - perhaps use the long option forms (--no-dereference)?
"cp -P" fails with our 2001-edition of cp, so msysgit had to revert:
https://github.com/msysgit/git/commit/6d3e23d4
But I was ashamed to mention that upstream; and I hope mingwGitDevEnv is
going to solve that.
Nice! But I'm afraid the patch cannot be submitted upstream as it is.
I think the hack could be automated by processing options "-L*" this way:
sed 'sX\(^-L\|,\)\^\?/X&\\;*Xg'
Then it would become only few lines at the top of the script, executed
on mingw only.
I hope to submit the patch in this form soon.
Have a nice day,
Stepan
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
From: Thomas Braun <hidden> Date: 2016-06-15 23:01:56
Am 16.07.2014 11:29, schrieb Stepan Kasal:
quoted
* t7001-mv: 6
cp -P fails in MinGW - perhaps use the long option forms (--no-dereference)?
"cp -P" fails with our 2001-edition of cp, so msysgit had to revert:
https://github.com/msysgit/git/commit/6d3e23d4
But I was ashamed to mention that upstream; and I hope mingwGitDevEnv is
going to solve that.
Yes it does. cp in mingwGitDevEnv is from coreutils 5.97 and knows about -P.
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Hello,
this is a collection of quality test suite fixes, hand picked with care,
following the expert advice by Karsten. :-)
Most of them just switch off the tests on MinGW, one uses `pwd -W' to get
the reeal windows path. All of these are time proven, they have been in
msysgit since Dec 2013, at least. ;-)
The fix for t8001,2 (annotate, blame) was created in Sep 2013 in the
straightforward form: editing all the regexps in the long test file:
https://github.com/msysgit/git/commit/2d52168a
I have replaced it by a more tricky version that changes each -L option on
the fly, just before it is passed to the executable.
This is new code, but I beleive it is better suited for the common git
sources.
Johannes Schindelin (2):
MinGW: Skip test redirecting to fd 4
Disable t0110's high-bit test on Windows
Karsten Blees (2):
MinGW: disable legacy encoding tests
t800[12]: work around MSys limitation
Pat Thoyts (2):
t4210: skip command-line encoding tests on mingw
t9902: mingw-specific fix for gitfile link files
t/annotate-tests.sh | 12 ++++++++++++
t/t0081-line-buffer.sh | 2 +-
t/t0110-urlmatch-normalization.sh | 2 +-
t/t3901-i18n-patch.sh | 19 +++++++++++--------
t/t4201-shortlog.sh | 6 +++---
t/t4210-log-i18n.sh | 4 ++--
t/t8005-blame-i18n.sh | 8 ++++----
t/t9902-completion.sh | 17 +++++++++++++----
8 files changed, 47 insertions(+), 23 deletions(-)
--
2.0.0.9635.g0be03cb
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
From: Karsten Blees <redacted>
On Windows, all native APIs are Unicode-based. It is impossible to pass
legacy encoded byte arrays to a process via command line or environment
variables. Disable the tests that try to do so.
In t3901, most tests still work if we don't mess up the repository encoding
in setup, so don't switch to ISO-8859-1 on MinGW.
Note that i18n tests that do their encoding tricks via encoded files (such
as t3900) are not affected by this.
Signed-off-by: Karsten Blees <redacted>
Signed-off-by: Stepan Kasal <redacted>
---
t/t3901-i18n-patch.sh | 19 +++++++++++--------
t/t4201-shortlog.sh | 6 +++---
t/t8005-blame-i18n.sh | 8 ++++----
3 files changed, 18 insertions(+), 15 deletions(-)
@@ -54,10 +54,13 @@ test_expect_success setup 'gitaddyours&&gitcommit-s-m"Second on side"&&-# the second one on the side branch is ISO-8859-1-gitconfigi18n.commitencodingISO8859-1&&-# use author and committer name in ISO-8859-1 to match it.-."$TEST_DIRECTORY"/t3901-8859-1.txt&&+iftest_have_prereqNOT_MINGW+then+# the second one on the side branch is ISO-8859-1+gitconfigi18n.commitencodingISO8859-1&&+# use author and committer name in ISO-8859-1 to match it.+."$TEST_DIRECTORY"/t3901-8859-1.txt+fi&&test_tick&&echoYetanother>theirs&&gitaddtheirs&&
@@ -119,7 +122,7 @@ test_expect_success 'rebase (U/L)' 'check_encoding2'-test_expect_success'rebase (L/L)''+test_expect_successNOT_MINGW'rebase (L/L)''# In this test we want ISO-8859-1 encoded commits as the resultgitconfigi18n.commitencodingISO8859-1&&gitconfigi18n.logoutputencodingISO8859-1&&
@@ -131,7 +134,7 @@ test_expect_success 'rebase (L/L)' 'check_encoding28859'-test_expect_success'rebase (L/U)''+test_expect_successNOT_MINGW'rebase (L/U)''# This is pathological -- use UTF-8 as intermediate form# to get ISO-8859-1 results.gitconfigi18n.commitencodingISO8859-1&&
@@ -159,7 +162,7 @@ test_expect_success 'cherry-pick(U/U)' 'check_encoding3'-test_expect_success'cherry-pick(L/L)''+test_expect_successNOT_MINGW'cherry-pick(L/L)''# Both the commitencoding and logoutputencoding is set to ISO-8859-1gitconfigi18n.commitencodingISO8859-1&&
@@ -189,7 +192,7 @@ test_expect_success 'cherry-pick(U/L)' 'check_encoding3'-test_expect_success'cherry-pick(L/U)''+test_expect_successNOT_MINGW'cherry-pick(L/U)''# Again, the commitencoding is set to ISO-8859-1 but# logoutputencoding is set to UTF-8.
@@ -93,7 +93,7 @@ test_expect_success 'output from user-defined format is re-wrapped' 'test_cmpexpectlog.predictable'-test_expect_success'shortlog wrapping''+test_expect_successNOT_MINGW'shortlog wrapping''cat>expect<<\EOF&& AUThor(5):Test
@@ -114,7 +114,7 @@ EOFtest_cmpexpectout'-test_expect_success'shortlog from non-git directory''+test_expect_successNOT_MINGW'shortlog from non-git directory''gitlogHEAD>log&&GIT_DIR=non-existinggitshortlog-w<log>out&&test_cmpexpectout
--
2.0.0.9635.g0be03cb
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
From: Pat Thoyts <redacted>
The path in a .git platform independent link file needs to be absolute
and under mingw we need it to be a windows type path, not a unix style
path so it should start with a drive letter and not a /.
Signed-off-by: Pat Thoyts <redacted>
Signed-off-by: Stepan Kasal <redacted>
---
t/t9902-completion.sh | 17 +++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-)
@@ -224,8 +233,8 @@ test_expect_success '__gitdir - gitfile in cwd' '' test_expect_success'__gitdir - gitfile in parent''-echo"$(pwd-P)/otherrepo/.git">expected&&-echo"gitdir: $TRASH_DIRECTORY/otherrepo/.git">subdir/.git&&+echo"$(pwd_P_W)/otherrepo/.git">expected&&+echo"gitdir: $(pwd_P_W)/otherrepo/.git">subdir/.git&&test_when_finished"rm -f subdir/.git"&&(cdsubdir/subsubdir&&
--
2.0.0.9635.g0be03cb
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
From: Johannes Schindelin <redacted>
... because that does not work in MinGW.
Signed-off-by: Johannes Schindelin <redacted>
Signed-off-by: Stepan Kasal <redacted>
---
t/t0081-line-buffer.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
@@ -29,7 +29,7 @@ test_expect_success '0-length read, send along greeting' 'test_cmpexpectactual'-test_expect_success'read from file descriptor''+test_expect_successNOT_MINGW'read from file descriptor''rm-finput&&echohello>expect&&echohello>input&&
--
2.0.0.9635.g0be03cb
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
From: Karsten Blees <redacted>
MSys works very hard to convert Unix-style paths into DOS-style ones.
*Very* hard.
So hard, indeed, that
git blame -L/hello/,/green/
is translated into something like
git blame -LC:/msysgit/hello/,C:/msysgit/green/
As seen in msys_p2w in src\msys\msys\rt\src\winsup\cygwin\path.cc, line
3204ff:
case '-':
//
// here we check for POSIX paths as attributes to a POSIX switch.
//
...
seemingly absolute POSIX paths in single-letter options get expanded by
msys.dll unless they contain '=' or ';'.
So a quick and very dirty fix is to use '-L/;*evil/'. (Using an equal sign
works only when it is before a comma, so in the above example, /=*green/
would still be converted to a DOS-style path.)
The -L mangling can be done by the script, just before the parameter is
passed to the executable. This version does not modify the body of the
tests and is active on MinGW only.
Commit-message-by: Johannes Schindelin [off-list ref]
Author: Stepan Kasal [off-list ref]
Signed-off-by: Johannes Schindelin <redacted>
Signed-off-by: Stepan Kasal <redacted>
---
t/annotate-tests.sh | 12 ++++++++++++
1 file changed, 12 insertions(+)
@@ -1,6 +1,17 @@# This file isn't used as a test script directly, instead it is# sourced from t8001-annotate.sh and t8002-blame.sh.+iftest_have_prereqMINGW+then+sanitize_L(){+echo"$1"|sed'sX\(^-L\|,\)\^\?/X&\\;*Xg'+}+else+sanitize_L(){+echo"$1"+}+fi+ check_count(){head=&&file='file'&&
--
2.0.0.9635.g0be03cb
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
From: Johannes Schindelin <redacted>
The bash Git for Windows uses (i.e. the MSys bash) cannot pass
command-line arguments with high bits set verbatim to non-MSys programs,
but instead converts those characters with high bits set to their hex
representation.
For example, when running
strings "$(echo -e '\x80')"
(where strings.exe is a MinGW program, not an MSys one) it will complain
about not finding the file called "80".
Signed-off-by: Johannes Schindelin <redacted>
Signed-off-by: Stepan Kasal <redacted>
---
t/t0110-urlmatch-normalization.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--
2.0.0.9635.g0be03cb
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
From: Johannes Schindelin <redacted>
The bash Git for Windows uses (i.e. the MSys bash) cannot pass
command-line arguments with high bits set verbatim to non-MSys programs,
but instead converts those characters with high bits set to their hex
representation.
The description is not entirely correct...the Unicode-enabled MSYS.dll
expects the command line to be UTF-8. Only *invalid* UTF-8 is converted
to hex code for convenience. So its not the high bits that cause trouble,
but specifying 0x80 without proper UTF-8 lead byte.
I believe the last line of the test may actually work:
test "$(test-urlmatch-normalization -p "$(cat "$tu-11")")" = "x://q/%C2%80%DF%BF%E0%A0%80%EF%BF%BD%F0%90%80%80%F0%AF%BF%BD"
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
From: Pat Thoyts <redacted>
On Windows the application command line is provided as unicode and in
mingw-git we convert that to utf-8. So these tests that require a iso-8859-1
input are being subverted by the encoding transformations we perform and
should be skipped.
Signed-off-by: Pat Thoyts <redacted>
Signed-off-by: Stepan Kasal <redacted>
---
t/t4210-log-i18n.sh | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
@@ -34,7 +34,7 @@ test_expect_success 'log --grep searches in log output encoding (utf8)' 'test_cmpexpectactual'-test_expect_success'log --grep searches in log output encoding (latin1)''+test_expect_successNOT_MINGW'log --grep searches in log output encoding (latin1)''cat>expect<<-\EOF&&latin1utf8
@@ -43,7 +43,7 @@ test_expect_success 'log --grep searches in log output encoding (latin1)' 'test_cmpexpectactual'-test_expect_success'log --grep does not find non-reencoded values (utf8)''+test_expect_successNOT_MINGW'log --grep does not find non-reencoded values (utf8)''>expect&&gitlog--encoding=utf8--format=%s--grep=$latin1_e>actual&&test_cmpexpectactual
--
2.0.0.9635.g0be03cb
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
From: Erik Faye-Lund <hidden> Date: 2016-06-15 23:01:58
On Thu, Jul 17, 2014 at 5:37 PM, Stepan Kasal [off-list ref] wrote:
quoted hunk
From: Pat Thoyts <redacted>
On Windows the application command line is provided as unicode and in
mingw-git we convert that to utf-8. So these tests that require a iso-8859-1
input are being subverted by the encoding transformations we perform and
should be skipped.
Signed-off-by: Pat Thoyts <redacted>
Signed-off-by: Stepan Kasal <redacted>
---
t/t4210-log-i18n.sh | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
@@ -34,7 +34,7 @@ test_expect_success 'log --grep searches in log output encoding (utf8)' 'test_cmpexpectactual'-test_expect_success'log --grep searches in log output encoding (latin1)''+test_expect_successNOT_MINGW'log --grep searches in log output encoding (latin1)''cat>expect<<-\EOF&&latin1utf8
@@ -43,7 +43,7 @@ test_expect_success 'log --grep searches in log output encoding (latin1)' 'test_cmpexpectactual'-test_expect_success'log --grep does not find non-reencoded values (utf8)''+test_expect_successNOT_MINGW'log --grep does not find non-reencoded values (utf8)''
Perhaps these checks would be more readable a few years in the future,
if we make a separate capability along the lines of
NON_UNICODE_LOCALE?
--
--
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.
You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.