{"thread":{"id":"37663","subject":"Failing tests in t0027-autocrlf.sh under msysgit/git-win-sdk","startedAt":"2014-10-02T12:39:05Z","lastAt":"2014-10-02T14:14:21Z","messageCount":3,"participants":["Thomas Braun","Torsten Bögershausen"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"250161","messageId":"542D4769.60503@virtuell-zuhause.de","threadId":"37663","inReplyTo":null,"subject":"Failing tests in t0027-autocrlf.sh under msysgit/git-win-sdk","fromName":"Thomas Braun","fromEmail":"thomas.braun@virtuell-zuhause.de","sentAt":"2014-10-02T12:39:05Z","receivedAt":"2014-10-02T12:39:05Z","isPatch":false,"sender":{"key":"thomas.braun@virtuell-zuhause.de","avatar":"https://avatars.githubusercontent.com/u/1185677?v=4"},"body":"Hi,\n\nI've enabled EXPENSIVE and ran the git test suite under msysgit/git-win-sdk with\ngit version 2.1.0.9753.g360f311.dirty.\n\nNow I have some failing tests in t0027-autocrlf.sh in the MINGW only section which puzzle me.\n\nThe offending test sets are\n\ndiff --git a/t/t0027-auto-crlf.sh b/t/t0027-auto-crlf.sh\nindex 72dd3e8..90c4cd1 100755\n--- a/t/t0027-auto-crlf.sh\n+++ b/t/t0027-auto-crlf.sh\n@@ -245,18 +245,18 @@ if test_have_prereq MINGW\n then\n check_files_in_ws \"\"      false \"\"        LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n check_files_in_ws \"\"      true  \"\"        CRLF  CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n-check_files_in_ws \"\"      false \"auto\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n+# check_files_in_ws \"\"      false \"auto\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # first broken\n check_files_in_ws \"\"      true  \"auto\"    CRLF  CRLF  CRLF         LF_mix_CR    CRLF_nul\n-check_files_in_ws \"\"      false \"text\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n+# check_files_in_ws \"\"      false \"text\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # broken\n check_files_in_ws \"\"      true  \"text\"    CRLF  CRLF  CRLF         CRLF_mix_CR  CRLF_nul\n check_files_in_ws \"\"      false \"-text\"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n check_files_in_ws \"\"      true  \"-text\"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n \n check_files_in_ws native  false \"\"        LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n check_files_in_ws native  true  \"\"        CRLF  CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n-check_files_in_ws native  false \"auto\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n+# check_files_in_ws native  false \"auto\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # broken\n check_files_in_ws native  true  \"auto\"    CRLF  CRLF  CRLF         LF_mix_CR    CRLF_nul\n-check_files_in_ws native  false \"text\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n+# check_files_in_ws native  false \"text\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # broken\n check_files_in_ws native  true  \"text\"    CRLF  CRLF  CRLF         CRLF_mix_CR  CRLF_nul\n check_files_in_ws native  false \"-text\"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n check_files_in_ws native  true  \"-text\"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n\nI tried with NATIVE_CRLF = YesPlease but 117 failed too.\n\nFirst question, under what MINGW system do these tests pass?\nSecond question any hints how to tackle this?\n\nThe first failing test is\nnot ok 117 - checkout core.eol= core.autocrlf=false gitattributes=auto file=LF\n#\n#                       compare_ws_file eol__crlf_false_attr_auto_ LF    crlf_false_attr__LF.txt\n#\n\n\nwhere I have in the trash directory\n\n$ diff -Nur *expect* *actual*\n--- LF.expect   2014-10-02 12:15:17 +0000\n+++ eol__crlf_false_attr_auto_.actual.crlf_false_attr__LF.txt   2014-10-02 12:15\n:17 +0000\n@@ -1,3 +1,3 @@\n-0000000   l   i   n   e   1  \\n   l   i   n   e   2  \\n   l   i   n   e\n-0000020   3\n-0000021\n+0000000   l   i   n   e   1  \\r  \\n   l   i   n   e   2  \\r  \\n   l   i\n+0000020   n   e   3\n+0000023\n\nReading convert.h tells me that for undefined NATIVE_CRLF the native EOL is LF.\nWhich looks like the test is correct.\n\nThomas\n"},{"id":"250168","messageId":"542D563A.8070306@web.de","threadId":"37663","inReplyTo":"542D4769.60503@virtuell-zuhause.de","subject":"Re: Failing tests in t0027-autocrlf.sh under msysgit/git-win-sdk","fromName":"Torsten Bögershausen","fromEmail":"tboegi@web.de","sentAt":"2014-10-02T13:42:18Z","receivedAt":"2014-10-02T13:42:18Z","isPatch":false,"sender":{"key":"tboegi@web.de","avatar":"https://avatars.githubusercontent.com/u/7138363?v=4"},"body":"On 2014-10-02 14.39, Thomas Braun wrote:\n> Hi,\n> \n> I've enabled EXPENSIVE and ran the git test suite under msysgit/git-win-sdk with\n> git version 2.1.0.9753.g360f311.dirty.\n> \n> Now I have some failing tests in t0027-autocrlf.sh in the MINGW only section which puzzle me.\n> \n> The offending test sets are\n> \n> diff --git a/t/t0027-auto-crlf.sh b/t/t0027-auto-crlf.sh\n> index 72dd3e8..90c4cd1 100755\n> --- a/t/t0027-auto-crlf.sh\n> +++ b/t/t0027-auto-crlf.sh\n> @@ -245,18 +245,18 @@ if test_have_prereq MINGW\n>  then\n>  check_files_in_ws \"\"      false \"\"        LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>  check_files_in_ws \"\"      true  \"\"        CRLF  CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n> -check_files_in_ws \"\"      false \"auto\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n> +# check_files_in_ws \"\"      false \"auto\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # first broken\n\n>  check_files_in_ws \"\"      true  \"auto\"    CRLF  CRLF  CRLF         LF_mix_CR    CRLF_nul\n> -check_files_in_ws \"\"      false \"text\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n> +# check_files_in_ws \"\"      false \"text\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # broken\n>  check_files_in_ws \"\"      true  \"text\"    CRLF  CRLF  CRLF         CRLF_mix_CR  CRLF_nul\n>  check_files_in_ws \"\"      false \"-text\"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>  check_files_in_ws \"\"      true  \"-text\"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>  \n>  check_files_in_ws native  false \"\"        LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>  check_files_in_ws native  true  \"\"        CRLF  CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n> -check_files_in_ws native  false \"auto\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n> +# check_files_in_ws native  false \"auto\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # broken\n>  check_files_in_ws native  true  \"auto\"    CRLF  CRLF  CRLF         LF_mix_CR    CRLF_nul\n> -check_files_in_ws native  false \"text\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n> +# check_files_in_ws native  false \"text\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # broken\n>  check_files_in_ws native  true  \"text\"    CRLF  CRLF  CRLF         CRLF_mix_CR  CRLF_nul\n>  check_files_in_ws native  false \"-text\"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>  check_files_in_ws native  true  \"-text\"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n> \n> I tried with NATIVE_CRLF = YesPlease but 117 failed too.\n> \n> First question, under what MINGW system do these tests pass?\n> Second question any hints how to tackle this?\n\n> \n> The first failing test is\n> not ok 117 - checkout core.eol= core.autocrlf=false gitattributes=auto file=LF\n> #\n> #                       compare_ws_file eol__crlf_false_attr_auto_ LF    crlf_false_attr__LF.txt\n> #\n> \n> \n> where I have in the trash directory\n> \n> $ diff -Nur *expect* *actual*\n> --- LF.expect   2014-10-02 12:15:17 +0000\n> +++ eol__crlf_false_attr_auto_.actual.crlf_false_attr__LF.txt   2014-10-02 12:15\n\nFirst things first:\nWe have a file with LF in the repo, and check it out.\n\nRead it like this:\n\"eol__crlf_false_attr_auto_.actual\"\n                 ^ *.txt auto in .gitconfig   \n      ^\n      core.autocrlf is false \n  ^\n  core.eol is unset\n\nThe file is expected to have LF in the working tree, but has CRLF\n\n> :17 +0000\n> @@ -1,3 +1,3 @@\n> -0000000   l   i   n   e   1  \\n   l   i   n   e   2  \\n   l   i   n   e\n> -0000020   3\n> -0000021\n> +0000000   l   i   n   e   1  \\r  \\n   l   i   n   e   2  \\r  \\n   l   i\n> +0000020   n   e   3\n> +0000023\n> \n> Reading convert.h tells me that for undefined NATIVE_CRLF the native EOL is LF.\n> Which looks like the test is correct.\n> \n> Thomas\n> \nWhich version of t0027 do you have:\nThe latest version in git.git is this one,\nand \"should pass\" (but I may have missed something)\n\ncommit f6975a6b119128de1c5a89e6cd64f75ed1de2177\nAuthor: Torsten Bögershausen <tboegi@web.de>\nDate:   Sat Aug 16 22:16:58 2014 +0200\n\n    t0027: Tests for core.eol=native, eol=lf, eol=crlf\n    \n    Add test cases for core.eol \"native\" and \"\" (unset).\n    (MINGW uses CRLF, all other systems LF as native line endings)\n    \n    Add test cases for the attributes \"eol=lf\" and \"eol=crlf\"\n    \n    Other minor changes:\n    - Use the more portable 'tr' instead of 'od -c' to convert '\\n' into 'Q'\n      and '\\0' into 'N'\n    - Style fixes for shell functions according to the coding guide lines\n    - Replace \"txtbin\" with \"attr\"\n    \n    Signed-off-by: Torsten Bögershausen <tboegi@web.de>\n    Signed-off-by: Junio C Hamano <gitster@pobox.com>\n"},{"id":"250170","messageId":"542D5DBD.9090506@virtuell-zuhause.de","threadId":"37663","inReplyTo":"542D563A.8070306@web.de","subject":"Re: Failing tests in t0027-autocrlf.sh under msysgit/git-win-sdk","fromName":"Thomas Braun","fromEmail":"thomas.braun@virtuell-zuhause.de","sentAt":"2014-10-02T14:14:21Z","receivedAt":"2014-10-02T14:14:21Z","isPatch":false,"sender":{"key":"thomas.braun@virtuell-zuhause.de","avatar":"https://avatars.githubusercontent.com/u/1185677?v=4"},"body":"Am 02.10.2014 um 15:42 schrieb Torsten Bögershausen:\n> On 2014-10-02 14.39, Thomas Braun wrote:\n>> Hi,\n>>\n>> I've enabled EXPENSIVE and ran the git test suite under msysgit/git-win-sdk with\n>> git version 2.1.0.9753.g360f311.dirty.\n>>\n>> Now I have some failing tests in t0027-autocrlf.sh in the MINGW only section which puzzle me.\n>>\n>> The offending test sets are\n>>\n>> diff --git a/t/t0027-auto-crlf.sh b/t/t0027-auto-crlf.sh\n>> index 72dd3e8..90c4cd1 100755\n>> --- a/t/t0027-auto-crlf.sh\n>> +++ b/t/t0027-auto-crlf.sh\n>> @@ -245,18 +245,18 @@ if test_have_prereq MINGW\n>>  then\n>>  check_files_in_ws \"\"      false \"\"        LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>>  check_files_in_ws \"\"      true  \"\"        CRLF  CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>> -check_files_in_ws \"\"      false \"auto\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>> +# check_files_in_ws \"\"      false \"auto\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # first broken\n> \n>>  check_files_in_ws \"\"      true  \"auto\"    CRLF  CRLF  CRLF         LF_mix_CR    CRLF_nul\n>> -check_files_in_ws \"\"      false \"text\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>> +# check_files_in_ws \"\"      false \"text\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # broken\n>>  check_files_in_ws \"\"      true  \"text\"    CRLF  CRLF  CRLF         CRLF_mix_CR  CRLF_nul\n>>  check_files_in_ws \"\"      false \"-text\"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>>  check_files_in_ws \"\"      true  \"-text\"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>>  \n>>  check_files_in_ws native  false \"\"        LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>>  check_files_in_ws native  true  \"\"        CRLF  CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>> -check_files_in_ws native  false \"auto\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>> +# check_files_in_ws native  false \"auto\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # broken\n>>  check_files_in_ws native  true  \"auto\"    CRLF  CRLF  CRLF         LF_mix_CR    CRLF_nul\n>> -check_files_in_ws native  false \"text\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>> +# check_files_in_ws native  false \"text\"    LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul # broken\n>>  check_files_in_ws native  true  \"text\"    CRLF  CRLF  CRLF         CRLF_mix_CR  CRLF_nul\n>>  check_files_in_ws native  false \"-text\"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>>  check_files_in_ws native  true  \"-text\"   LF    CRLF  CRLF_mix_LF  LF_mix_CR    CRLF_nul\n>>\n>> I tried with NATIVE_CRLF = YesPlease but 117 failed too.\n>>\n>> First question, under what MINGW system do these tests pass?\n>> Second question any hints how to tackle this?\n> \n>>\n>> The first failing test is\n>> not ok 117 - checkout core.eol= core.autocrlf=false gitattributes=auto file=LF\n>> #\n>> #                       compare_ws_file eol__crlf_false_attr_auto_ LF    crlf_false_attr__LF.txt\n>> #\n>>\n>>\n>> where I have in the trash directory\n>>\n>> $ diff -Nur *expect* *actual*\n>> --- LF.expect   2014-10-02 12:15:17 +0000\n>> +++ eol__crlf_false_attr_auto_.actual.crlf_false_attr__LF.txt   2014-10-02 12:15\n> \n> First things first:\n> We have a file with LF in the repo, and check it out.\n> \n> Read it like this:\n> \"eol__crlf_false_attr_auto_.actual\"\n>                  ^ *.txt auto in .gitconfig   \n>       ^\n>       core.autocrlf is false \n>   ^\n>   core.eol is unset\n\nThanks for the explanation.\n\n> The file is expected to have LF in the working tree, but has CRLF\n> \n>> :17 +0000\n>> @@ -1,3 +1,3 @@\n>> -0000000   l   i   n   e   1  \\n   l   i   n   e   2  \\n   l   i   n   e\n>> -0000020   3\n>> -0000021\n>> +0000000   l   i   n   e   1  \\r  \\n   l   i   n   e   2  \\r  \\n   l   i\n>> +0000020   n   e   3\n>> +0000023\n>>\n>> Reading convert.h tells me that for undefined NATIVE_CRLF the native EOL is LF.\n>> Which looks like the test is correct.\n>>\n>> Thomas\n>>\n> Which version of t0027 do you have:\n> The latest version in git.git is this one,\n> and \"should pass\" (but I may have missed something)\n> \n> commit f6975a6b119128de1c5a89e6cd64f75ed1de2177\n> Author: Torsten Bögershausen <tboegi@web.de>\n> Date:   Sat Aug 16 22:16:58 2014 +0200\n> \n>     t0027: Tests for core.eol=native, eol=lf, eol=crlf\n>     \n>     Add test cases for core.eol \"native\" and \"\" (unset).\n>     (MINGW uses CRLF, all other systems LF as native line endings)\n>     \n>     Add test cases for the attributes \"eol=lf\" and \"eol=crlf\"\n>     \n>     Other minor changes:\n>     - Use the more portable 'tr' instead of 'od -c' to convert '\\n' into 'Q'\n>       and '\\0' into 'N'\n>     - Style fixes for shell functions according to the coding guide lines\n>     - Replace \"txtbin\" with \"attr\"\n>     \n>     Signed-off-by: Torsten Bögershausen <tboegi@web.de>\n>     Signed-off-by: Junio C Hamano <gitster@pobox.com>\n\nCorrect guess! I've been testing the original version 343151dc (t0027:\ncombinations of core.autocrlf, core.eol and text, 2014-07-08).\nf6975a6 of t0027-autocrlf.sh passes now completely.\n\nThanks for the quick reply.\n\nThomas\n"}]}