{"thread":{"id":"40481","subject":"[PATCH v2 1/4] Add Travis CI support","startedAt":"2015-10-04T18:06:13Z","lastAt":"2015-10-05T09:55:16Z","messageCount":16,"participants":["larsxschneider@gmail.com","Junio C Hamano","Lars Schneider","Pete Wyckoff","Torsten Bögershausen","Johannes Schindelin"],"isPatch":true,"patchVersion":2,"patchTotal":4},"messages":[{"id":"271096","messageId":"1443981977-64604-1-git-send-email-larsxschneider@gmail.com","threadId":"40481","inReplyTo":null,"subject":"[PATCH v2 0/4] Add Travis CI support","fromName":"","fromEmail":"larsxschneider@gmail.com","sentAt":"2015-10-04T18:06:13Z","receivedAt":"2015-10-04T18:06:13Z","isPatch":true,"sender":{"key":"larsxschneider@gmail.com","avatar":"https://avatars.githubusercontent.com/u/477434?v=4"},"body":"From: Lars Schneider <larsxschneider@gmail.com>\n\ndiff to v1:\n* improve readabilty of Travis \"before_script\" section\n* make OS X Perforce brew robust against changing Perforce builds [1]\n* add a prereq to detect OS X in tests\n* fix t9815 git-p4-submit-fail test case on OS X\n* disable t9819 git-p4-case-folding test on OS X\n\nThanks Junio for the feedback. You are right, I should have fixed the failing\ntests in the first place. With this patch all tests pass on Linux and OS X:\nhttps://travis-ci.org/larsxschneider/git/builds/83575208\n\nIn a subsequent patch I plan to:\n* add cvs to run t94?? tests\n* add svn to run t91?? tests\n* add apache to run 5539, 5550, and 5561\n* investigate if it is possible to run t1509 root worktree test\n* investigate if it is possible to add jgit to run t5310\n\nPlus I have the following questions:\n* Can you explain to me how the t7006 page tests should be executed?\n* Should we enable EXPENSIVE, CLONE_2GB, and USE_LIBPCRE flag?\n\nThanks,\nLars\n\n[1] This is a workaround. I am in contact about the issue with the homebrew\nmaintainers and maybe we can make this easier soon:\nhttps://github.com/Homebrew/homebrew-binary/pull/267#issuecomment-145317114\n\nLars Schneider (4):\n  Add Travis CI support\n  Add prereq to detect OS X\n  git-p4: Fix t9815 git-p4-submit-fail test case on OS X\n  git-p4: Disable t9819 git-p4-case-folding test on OS X\n\n .travis.yml                    | 31 +++++++++++++++++++++++++++++++\n t/t9815-git-p4-submit-fail.sh  |  8 ++++++--\n t/t9819-git-p4-case-folding.sh |  5 +++++\n t/test-lib.sh                  |  5 ++++-\n 4 files changed, 46 insertions(+), 3 deletions(-)\n create mode 100644 .travis.yml\n\n--\n2.5.1\n"},{"id":"271095","messageId":"1443981977-64604-2-git-send-email-larsxschneider@gmail.com","threadId":"40481","inReplyTo":"1443981977-64604-1-git-send-email-larsxschneider@gmail.com","subject":"[PATCH v2 1/4] Add Travis CI support","fromName":"","fromEmail":"larsxschneider@gmail.com","sentAt":"2015-10-04T18:06:14Z","receivedAt":"2015-10-04T18:06:14Z","isPatch":true,"sender":{"key":"larsxschneider@gmail.com","avatar":"https://avatars.githubusercontent.com/u/477434?v=4"},"body":"From: Lars Schneider <larsxschneider@gmail.com>\n\nThe tests are executed on \"Ubuntu 12.04 LTS Server Edition 64 bit\" and\non \"OS X Mavericks\" using gcc and clang.\n\nPerforce and Git-LFS are installed and therefore available for the\nrespective tests.\n\nSigned-off-by: Lars Schneider <larsxschneider@gmail.com>\n---\n .travis.yml | 31 +++++++++++++++++++++++++++++++\n 1 file changed, 31 insertions(+)\n create mode 100644 .travis.yml\n\ndiff --git a/.travis.yml b/.travis.yml\nnew file mode 100644\nindex 0000000..8a29dd6\n--- /dev/null\n+++ b/.travis.yml\n@@ -0,0 +1,31 @@\n+language: c\n+\n+os:\n+  - linux\n+  - osx\n+\n+compiler:\n+  - clang\n+  - gcc\n+\n+before_script:\n+  - >\n+    if [ ${TRAVIS_OS_NAME:-'linux'} = 'linux' ]; then\n+      wget -q https://package.perforce.com/perforce.pubkey -O - | sudo apt-key add -\n+      echo 'deb http://package.perforce.com/apt/ubuntu precise release' | sudo tee -a /etc/apt/sources.list\n+      wget -q https://packagecloud.io/gpg.key -O - | sudo apt-key add -\n+      echo 'deb https://packagecloud.io/github/git-lfs/debian/ jessie main' | sudo tee -a /etc/apt/sources.list\n+      sudo apt-get update -qq\n+      sudo apt-get install -y apt-transport-https\n+      sudo apt-get install perforce-server git-lfs\n+    elif [ ${TRAVIS_OS_NAME:-'linux'} = 'osx' ]; then\n+      brew update\n+      brew tap homebrew/binary\n+      P4_SERVER_SHA=$(brew fetch --force perforce-server 2>&1 | grep ^SHA256: | cut -d ' ' -f 2)\n+      P4_SHA=$(brew fetch --force perforce 2>&1 | grep ^SHA256: | cut -d ' ' -f 2)\n+      sed -E -i.bak \"s/sha256 \\\"[0-9a-f]{64}\\\"/sha256 \\\"$P4_SERVER_SHA\\\"/g\" /usr/local/Library/Taps/homebrew/homebrew-binary/perforce-server.rb\n+      sed -E -i.bak \"s/sha256 \\\"[0-9a-f]{64}\\\"/sha256 \\\"$P4_SHA\\\"/g\" /usr/local/Library/Taps/homebrew/homebrew-binary/perforce.rb\n+      brew install git-lfs perforce-server perforce\n+    fi\n+\n+install: make configure\n-- \n2.5.1\n"},{"id":"271097","messageId":"1443981977-64604-3-git-send-email-larsxschneider@gmail.com","threadId":"40481","inReplyTo":"1443981977-64604-1-git-send-email-larsxschneider@gmail.com","subject":"[PATCH v2 2/4] Add prereq to detect OS X","fromName":"","fromEmail":"larsxschneider@gmail.com","sentAt":"2015-10-04T18:06:15Z","receivedAt":"2015-10-04T18:06:15Z","isPatch":true,"sender":{"key":"larsxschneider@gmail.com","avatar":"https://avatars.githubusercontent.com/u/477434?v=4"},"body":"From: Lars Schneider <larsxschneider@gmail.com>\n\nSome Unix tools differ between Linux and Mac OS X. Add this prereq to\ndetect OS X and handle it appropriately.\n\nSigned-off-by: Lars Schneider <larsxschneider@gmail.com>\n---\n t/test-lib.sh | 5 ++++-\n 1 file changed, 4 insertions(+), 1 deletion(-)\n\ndiff --git a/t/test-lib.sh b/t/test-lib.sh\nindex 16c4d7b..726af40 100644\n--- a/t/test-lib.sh\n+++ b/t/test-lib.sh\n@@ -913,7 +913,7 @@ yes () {\n \tdone\n }\n \n-# Fix some commands on Windows\n+# Fix some commands on Windows and OS X\n case $(uname -s) in\n *MINGW*)\n \t# Windows has its own (incompatible) sort and find\n@@ -946,6 +946,9 @@ case $(uname -s) in\n \ttest_set_prereq SED_STRIPS_CR\n \ttest_set_prereq GREP_STRIPS_CR\n \t;;\n+*Darwin*)\n+\ttest_set_prereq DARWIN\n+\t;;\n *)\n \ttest_set_prereq POSIXPERM\n \ttest_set_prereq BSLASHPSPEC\n-- \n2.5.1\n"},{"id":"271098","messageId":"1443981977-64604-4-git-send-email-larsxschneider@gmail.com","threadId":"40481","inReplyTo":"1443981977-64604-1-git-send-email-larsxschneider@gmail.com","subject":"[PATCH v2 3/4] git-p4: Fix t9815 git-p4-submit-fail test case on OS X","fromName":"","fromEmail":"larsxschneider@gmail.com","sentAt":"2015-10-04T18:06:16Z","receivedAt":"2015-10-04T18:06:16Z","isPatch":true,"sender":{"key":"larsxschneider@gmail.com","avatar":"https://avatars.githubusercontent.com/u/477434?v=4"},"body":"From: Lars Schneider <larsxschneider@gmail.com>\n\nThe stats command works differently on OS X compared to Linux. Detect\nOS X and execute the appropriate assertions.\n\nSigned-off-by: Lars Schneider <larsxschneider@gmail.com>\n---\n t/t9815-git-p4-submit-fail.sh | 8 ++++++--\n 1 file changed, 6 insertions(+), 2 deletions(-)\n\ndiff --git a/t/t9815-git-p4-submit-fail.sh b/t/t9815-git-p4-submit-fail.sh\nindex 4cff6a7..520b812 100755\n--- a/t/t9815-git-p4-submit-fail.sh\n+++ b/t/t9815-git-p4-submit-fail.sh\n@@ -417,8 +417,12 @@ test_expect_success 'cleanup chmod after submit cancel' '\n \t\t! p4 fstat -T action text &&\n \t\ttest_path_is_file text+x &&\n \t\t! p4 fstat -T action text+x &&\n-\t\tif test_have_prereq !CYGWIN\n-\t\tthen\n+\t\tif test_have_prereq CYGWIN; then\n+\t\t\t: # NOOP\n+\t\telif test_have_prereq DARWIN; then\n+\t\t\tstat -f %Sp text | egrep ^-r-- &&\n+\t\t\tstat -f %Sp text+x | egrep ^-r-x\n+\t\telse\n \t\t\tstat --format=%A text | egrep ^-r-- &&\n \t\t\tstat --format=%A text+x | egrep ^-r-x\n \t\tfi\n-- \n2.5.1\n"},{"id":"271099","messageId":"1443981977-64604-5-git-send-email-larsxschneider@gmail.com","threadId":"40481","inReplyTo":"1443981977-64604-1-git-send-email-larsxschneider@gmail.com","subject":"[PATCH v2 4/4] git-p4: Disable t9819 git-p4-case-folding test on OS X","fromName":"","fromEmail":"larsxschneider@gmail.com","sentAt":"2015-10-04T18:06:17Z","receivedAt":"2015-10-04T18:06:17Z","isPatch":true,"sender":{"key":"larsxschneider@gmail.com","avatar":"https://avatars.githubusercontent.com/u/477434?v=4"},"body":"From: Lars Schneider <larsxschneider@gmail.com>\n\nThe OS X file system is case insensitive by default. Consequently this\ntest does not apply.\n\nSigned-off-by: Lars Schneider <larsxschneider@gmail.com>\n---\n t/t9819-git-p4-case-folding.sh | 5 +++++\n 1 file changed, 5 insertions(+)\n\ndiff --git a/t/t9819-git-p4-case-folding.sh b/t/t9819-git-p4-case-folding.sh\nindex 78f1d0f..c69ae47 100755\n--- a/t/t9819-git-p4-case-folding.sh\n+++ b/t/t9819-git-p4-case-folding.sh\n@@ -4,6 +4,11 @@ test_description='interaction with P4 case-folding'\n \n . ./lib-git-p4.sh\n \n+if test_have_prereq DARWIN; then\n+\tskip_all='skipping P4 case-folding tests; OS X file system is case insensitive by default'\n+\ttest_done\n+fi\n+\n test_expect_success 'start p4d with case folding enabled' '\n \tstart_p4d -C1\n '\n-- \n2.5.1\n"},{"id":"271101","messageId":"xmqqegha1oj6.fsf@gitster.mtv.corp.google.com","threadId":"40481","inReplyTo":"1443981977-64604-4-git-send-email-larsxschneider@gmail.com","subject":"Re: [PATCH v2 3/4] git-p4: Fix t9815 git-p4-submit-fail test case on OS X","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2015-10-04T18:23:09Z","receivedAt":"2015-10-04T18:23:09Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"larsxschneider@gmail.com writes:\n\n> +\t\tif test_have_prereq CYGWIN; then\n> +\t\t\t: # NOOP\n> +\t\telif test_have_prereq DARWIN; then\n> +\t\t\tstat -f %Sp text | egrep ^-r-- &&\n> +\t\t\tstat -f %Sp text+x | egrep ^-r-x\n> +\t\telse\n>  \t\t\tstat --format=%A text | egrep ^-r-- &&\n>  \t\t\tstat --format=%A text+x | egrep ^-r-x\n>  \t\tfi\n\nNot a new problem but why do we need \"stat\" here?\n\nShouldn't \"test -r\", \"! test -x\", and their usual friends be\nsufficient for the purpose of the test and are more portable?\n"},{"id":"271102","messageId":"xmqqa8ry1ods.fsf@gitster.mtv.corp.google.com","threadId":"40481","inReplyTo":"1443981977-64604-5-git-send-email-larsxschneider@gmail.com","subject":"Re: [PATCH v2 4/4] git-p4: Disable t9819 git-p4-case-folding test on OS X","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2015-10-04T18:26:23Z","receivedAt":"2015-10-04T18:26:23Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"larsxschneider@gmail.com writes:\n\n> From: Lars Schneider <larsxschneider@gmail.com>\n>\n> The OS X file system is case insensitive by default. Consequently this\n> test does not apply.\n>\n> Signed-off-by: Lars Schneider <larsxschneider@gmail.com>\n> ---\n>  t/t9819-git-p4-case-folding.sh | 5 +++++\n>  1 file changed, 5 insertions(+)\n>\n> diff --git a/t/t9819-git-p4-case-folding.sh b/t/t9819-git-p4-case-folding.sh\n> index 78f1d0f..c69ae47 100755\n> --- a/t/t9819-git-p4-case-folding.sh\n> +++ b/t/t9819-git-p4-case-folding.sh\n> @@ -4,6 +4,11 @@ test_description='interaction with P4 case-folding'\n>  \n>  . ./lib-git-p4.sh\n>  \n> +if test_have_prereq DARWIN; then\n> +\tskip_all='skipping P4 case-folding tests; OS X file system is case insensitive by default'\n> +\ttest_done\n> +fi\n\nMakes one wonder what should happen on Windows, or vfat mounted on\nLinux for that matter.  IOW, shouldn't the prerequisite be more like\n\"do not run any of these tests if the filesystem does not allow us\nto have two files in different cases at the same time\"?\n\nPerhaps\n\n        if ! test_have_prereq CASE_INSENSITIVE_FS\n        then\n                skip_all=...\n                test_done\n        fi\n\ninstead, or something?\n"},{"id":"271103","messageId":"xmqq612m1oay.fsf@gitster.mtv.corp.google.com","threadId":"40481","inReplyTo":"1443981977-64604-3-git-send-email-larsxschneider@gmail.com","subject":"Re: [PATCH v2 2/4] Add prereq to detect OS X","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2015-10-04T18:28:05Z","receivedAt":"2015-10-04T18:28:05Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"larsxschneider@gmail.com writes:\n\n> From: Lars Schneider <larsxschneider@gmail.com>\n>\n> Some Unix tools differ between Linux and Mac OS X. Add this prereq to\n> detect OS X and handle it appropriately.\n\nIf my comment on 4/4 turns out to be to the point, then we do not\nneed this, I presume?  In general, we really should think three\ntimes before adding prerequisite based on the platform.  A prereq\nbased on a specific feature of the platform is often what we want\ninstead.\n"},{"id":"271104","messageId":"E363C89B-7039-49F6-B723-8609DBAF2C64@gmail.com","threadId":"40481","inReplyTo":"xmqqa8ry1ods.fsf@gitster.mtv.corp.google.com","subject":"Re: [PATCH v2 4/4] git-p4: Disable t9819 git-p4-case-folding test on OS X","fromName":"Lars Schneider","fromEmail":"larsxschneider@gmail.com","sentAt":"2015-10-04T18:38:31Z","receivedAt":"2015-10-04T18:38:31Z","isPatch":true,"sender":{"key":"larsxschneider@gmail.com","avatar":"https://avatars.githubusercontent.com/u/477434?v=4"},"body":"\nOn 04 Oct 2015, at 11:26, Junio C Hamano <gitster@pobox.com> wrote:\n\n> larsxschneider@gmail.com writes:\n> \n>> From: Lars Schneider <larsxschneider@gmail.com>\n>> \n>> The OS X file system is case insensitive by default. Consequently this\n>> test does not apply.\n>> \n>> Signed-off-by: Lars Schneider <larsxschneider@gmail.com>\n>> ---\n>> t/t9819-git-p4-case-folding.sh | 5 +++++\n>> 1 file changed, 5 insertions(+)\n>> \n>> diff --git a/t/t9819-git-p4-case-folding.sh b/t/t9819-git-p4-case-folding.sh\n>> index 78f1d0f..c69ae47 100755\n>> --- a/t/t9819-git-p4-case-folding.sh\n>> +++ b/t/t9819-git-p4-case-folding.sh\n>> @@ -4,6 +4,11 @@ test_description='interaction with P4 case-folding'\n>> \n>> . ./lib-git-p4.sh\n>> \n>> +if test_have_prereq DARWIN; then\n>> +\tskip_all='skipping P4 case-folding tests; OS X file system is case insensitive by default'\n>> +\ttest_done\n>> +fi\n> \n> Makes one wonder what should happen on Windows, or vfat mounted on\n> Linux for that matter.  IOW, shouldn't the prerequisite be more like\n> \"do not run any of these tests if the filesystem does not allow us\n> to have two files in different cases at the same time\"?\n> \n> Perhaps\n> \n>        if ! test_have_prereq CASE_INSENSITIVE_FS\n>        then\n>                skip_all=...\n>                test_done\n>        fi\n> \n> instead, or something?\nAgreed! Although I think the “!” in the if clause is not correct.\nBy the way... what formatting should I use?\n\nif foo\nthen\n  bar\n\nor\n\nif foo; then\n  bar\n\nI think the latter is more used in the code base.\n\n- Lars"},{"id":"271106","messageId":"90C13A5C-AB19-4E5C-A317-15B3D182444D@gmail.com","threadId":"40481","inReplyTo":"xmqqegha1oj6.fsf@gitster.mtv.corp.google.com","subject":"Re: [PATCH v2 3/4] git-p4: Fix t9815 git-p4-submit-fail test case on OS X","fromName":"Lars Schneider","fromEmail":"larsxschneider@gmail.com","sentAt":"2015-10-04T18:44:55Z","receivedAt":"2015-10-04T18:44:55Z","isPatch":true,"sender":{"key":"larsxschneider@gmail.com","avatar":"https://avatars.githubusercontent.com/u/477434?v=4"},"body":"\nOn 04 Oct 2015, at 11:23, Junio C Hamano <gitster@pobox.com> wrote:\n\n> larsxschneider@gmail.com writes:\n> \n>> +\t\tif test_have_prereq CYGWIN; then\n>> +\t\t\t: # NOOP\n>> +\t\telif test_have_prereq DARWIN; then\n>> +\t\t\tstat -f %Sp text | egrep ^-r-- &&\n>> +\t\t\tstat -f %Sp text+x | egrep ^-r-x\n>> +\t\telse\n>> \t\t\tstat --format=%A text | egrep ^-r-- &&\n>> \t\t\tstat --format=%A text+x | egrep ^-r-x\n>> \t\tfi\n> \n> Not a new problem but why do we need \"stat\" here?\n> \n> Shouldn't \"test -r\", \"! test -x\", and their usual friends be\n> sufficient for the purpose of the test and are more portable?\n\nGood question. The stat call was introduced with df9c545 by Pete Wyckoff.\n@Pete, @Luke: Are you aware of any particular reason for stat?\n\nThanks,\nLars\n"},{"id":"271107","messageId":"580774DE-807D-411C-B6B4-A72D273038C1@gmail.com","threadId":"40481","inReplyTo":"xmqq612m1oay.fsf@gitster.mtv.corp.google.com","subject":"Re: [PATCH v2 2/4] Add prereq to detect OS X","fromName":"Lars Schneider","fromEmail":"larsxschneider@gmail.com","sentAt":"2015-10-04T18:46:08Z","receivedAt":"2015-10-04T18:46:08Z","isPatch":true,"sender":{"key":"larsxschneider@gmail.com","avatar":"https://avatars.githubusercontent.com/u/477434?v=4"},"body":"\nOn 04 Oct 2015, at 11:28, Junio C Hamano <gitster@pobox.com> wrote:\n\n> larsxschneider@gmail.com writes:\n> \n>> From: Lars Schneider <larsxschneider@gmail.com>\n>> \n>> Some Unix tools differ between Linux and Mac OS X. Add this prereq to\n>> detect OS X and handle it appropriately.\n> \n> If my comment on 4/4 turns out to be to the point, then we do not\n> need this, I presume?  In general, we really should think three\n> times before adding prerequisite based on the platform.  A prereq\n> based on a specific feature of the platform is often what we want\n> instead.\nAgreed. I will remove this commit in the next roll.\n\nThanks,\nLars\n"},{"id":"271108","messageId":"xmqqwpv2zcyk.fsf@gitster.mtv.corp.google.com","threadId":"40481","inReplyTo":"E363C89B-7039-49F6-B723-8609DBAF2C64@gmail.com","subject":"Re: [PATCH v2 4/4] git-p4: Disable t9819 git-p4-case-folding test on OS X","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2015-10-04T18:49:07Z","receivedAt":"2015-10-04T18:49:07Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Lars Schneider <larsxschneider@gmail.com> writes:\n\n> By the way... what formatting should I use?\n>\n> if foo\n> then\n>   bar\n>\n> or\n>\n> if foo; then\n>   bar\n>\n> I think the latter is more used in the code base.\n\nI've allowed the latter in fringe scripts (i.e. the ones that I do\nnot care too deeply) over time, but Documentation/CodingGuidelines\nis very clear about it.\n\n - Do not write control structures on a single line with semicolon.\n"},{"id":"271110","messageId":"20151004201823.GA8366@padd.com","threadId":"40481","inReplyTo":"90C13A5C-AB19-4E5C-A317-15B3D182444D@gmail.com","subject":"Re: [PATCH v2 3/4] git-p4: Fix t9815 git-p4-submit-fail test case on OS X","fromName":"Pete Wyckoff","fromEmail":"pw@padd.com","sentAt":"2015-10-04T20:18:23Z","receivedAt":"2015-10-04T20:18:23Z","isPatch":true,"sender":{"key":"pw@padd.com","avatar":null},"body":"larsxschneider@gmail.com wrote on Sun, 04 Oct 2015 11:44 -0700:\n> \n> On 04 Oct 2015, at 11:23, Junio C Hamano <gitster@pobox.com> wrote:\n> \n> > larsxschneider@gmail.com writes:\n> > \n> >> +\t\tif test_have_prereq CYGWIN; then\n> >> +\t\t\t: # NOOP\n> >> +\t\telif test_have_prereq DARWIN; then\n> >> +\t\t\tstat -f %Sp text | egrep ^-r-- &&\n> >> +\t\t\tstat -f %Sp text+x | egrep ^-r-x\n> >> +\t\telse\n> >> \t\t\tstat --format=%A text | egrep ^-r-- &&\n> >> \t\t\tstat --format=%A text+x | egrep ^-r-x\n> >> \t\tfi\n> > \n> > Not a new problem but why do we need \"stat\" here?\n> > \n> > Shouldn't \"test -r\", \"! test -x\", and their usual friends be\n> > sufficient for the purpose of the test and are more portable?\n> \n> Good question. The stat call was introduced with df9c545 by Pete Wyckoff.\n> @Pete, @Luke: Are you aware of any particular reason for stat?\n\nI think you could do this all with test. The key is to make\nsure the files are readable, not writable, and either executable\nor not. Cygwin and darwin oddities were not on my radar 3 years ago.\n\nSee also 4cea4d6 (git p4 test: use test_chmod for cygwin,\n2013-01-26) for the description I wrote about what this test is\ntrying to verify.\n\n\t\t-- Pete\n"},{"id":"271113","messageId":"5611E9BB.5070000@web.de","threadId":"40481","inReplyTo":"1443981977-64604-4-git-send-email-larsxschneider@gmail.com","subject":"Re: [PATCH v2 3/4] git-p4: Fix t9815 git-p4-submit-fail test case on OS X","fromName":"Torsten Bögershausen","fromEmail":"tboegi@web.de","sentAt":"2015-10-05T03:08:43Z","receivedAt":"2015-10-05T03:08:43Z","isPatch":true,"sender":{"key":"tboegi@web.de","avatar":"https://avatars.githubusercontent.com/u/7138363?v=4"},"body":"On 04.10.15 20:06, larsxschneider@gmail.com wrote:\n> From: Lars Schneider <larsxschneider@gmail.com>\n> \n> The stats command works differently on OS X compared to Linux. Detect\n> OS X and execute the appropriate assertions.\n> \nIs there a special need to use the stat() function at all ?\n\nThat's what I read in t1301-shared-repo.sh:\n\nmodebits () {\n\tls -l \"$1\" | sed -e 's|^\\(..........\\).*|\\1|'\n}\n"},{"id":"271138","messageId":"a10d494741e1252eb0d55d9120d00a07@dscho.org","threadId":"40481","inReplyTo":"1443981977-64604-2-git-send-email-larsxschneider@gmail.com","subject":"Re: [PATCH v2 1/4] Add Travis CI support","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2015-10-05T09:43:42Z","receivedAt":"2015-10-05T09:43:42Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi Lars,\n\nOn 2015-10-04 20:06, larsxschneider@gmail.com wrote:\n> From: Lars Schneider <larsxschneider@gmail.com>\n> \n> The tests are executed on \"Ubuntu 12.04 LTS Server Edition 64 bit\" and\n> on \"OS X Mavericks\" using gcc and clang.\n\nI think that the word \"currently\" is missing from this description, as it is not something this patch controls (but Travis CI's infrastructure).\n\n> Perforce and Git-LFS are installed and therefore available for the\n> respective tests.\n\nThis is *the* bonus of using Travis CI over BuildHive (which is enabled in Git for Windows' fork of git/git): you can install additional dependencies for more extensive testing. Oh, and it tests with clang and on MacOSX, too, which would reduce the number of fixer-upper patches when git/git introduced yet Another Change That Works Only On Linux.\n\n> +before_script:\n> +  - >\n> +    if [ ${TRAVIS_OS_NAME:-'linux'} = 'linux' ]; then\n\nMaybe for readability use\n\n    case \"${TRAVIS_OS_NAME:-linux}\" in\n    linux)\n        ...\n\n?\n\nThanks,\nDscho\n"},{"id":"271139","messageId":"8851e0675d432edac6a35cf9f4daa868@dscho.org","threadId":"40481","inReplyTo":"1443981977-64604-1-git-send-email-larsxschneider@gmail.com","subject":"Re: [PATCH v2 0/4] Add Travis CI support","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2015-10-05T09:55:16Z","receivedAt":"2015-10-05T09:55:16Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi Lars,\n\nOn 2015-10-04 20:06, larsxschneider@gmail.com wrote:\n> From: Lars Schneider <larsxschneider@gmail.com>\n> \n> diff to v1:\n> * improve readabilty of Travis \"before_script\" section\n> * make OS X Perforce brew robust against changing Perforce builds [1]\n> * add a prereq to detect OS X in tests\n> * fix t9815 git-p4-submit-fail test case on OS X\n> * disable t9819 git-p4-case-folding test on OS X\n\nNice! I think that this already shows the promise of using Travis CI: more thorough testing, earlier warning when new changes are not quite as portable as we thought they were.\n\n> In a subsequent patch I plan to:\n> * add cvs to run t94?? tests\n> * add svn to run t91?? tests\n> * add apache to run 5539, 5550, and 5561\n> * investigate if it is possible to run t1509 root worktree test\n> * investigate if it is possible to add jgit to run t5310\n\nVery nice!\n\nThanks,\nJohannes\n"}]}