{"thread":{"id":"18207","subject":"t9500-gitweb-standalone-no-errors.sh.prb 4 errors","startedAt":"2009-03-08T00:11:47Z","lastAt":"2009-03-08T01:29:38Z","messageCount":3,"participants":["Boyd Lynn Gerber","Jakub Narebski"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"107359","messageId":"alpine.LNX.2.00.0903071645370.20607@suse104.zenez.com","threadId":"18207","inReplyTo":null,"subject":"t9500-gitweb-standalone-no-errors.sh.prb 4 errors","fromName":"Boyd Lynn Gerber","fromEmail":"gerberb@zenez.com","sentAt":"2009-03-08T00:11:47Z","receivedAt":"2009-03-08T00:11:47Z","isPatch":false,"sender":{"key":"gerberb@zenez.com","avatar":null},"body":"Test fails for SCO OpenServer 6.0 MP4 with 1.6.2\n\nBelow is the set -x output of the tests.\n\n-- \nBoyd Gerber <gerberb@zenez.com> 801 849-0213\nZENEZ\t1042 East Fort Union #135, Midvale Utah  84047\n\n\n+ test_description='gitweb as standalone script (basic tests).\n\nThis test runs gitweb (git web interface) as CGI script from\ncommandline, and checks that it would not write any errors\nor warnings to log.'\n+ . ./test-lib.sh\n++ ORIGINAL_TERM=xterm\n++ LANG=C\n++ LC_ALL=C\n++ PAGER=cat\n++ TZ=UTC\n++ TERM=dumb\n++ export LANG LC_ALL PAGER TERM TZ\n++ EDITOR=:\n++ VISUAL=:\n++ unset GIT_EDITOR\n++ unset AUTHOR_DATE\n++ unset AUTHOR_EMAIL\n++ unset AUTHOR_NAME\n++ unset COMMIT_AUTHOR_EMAIL\n++ unset COMMIT_AUTHOR_NAME\n++ unset EMAIL\n++ unset GIT_ALTERNATE_OBJECT_DIRECTORIES\n++ unset GIT_AUTHOR_DATE\n++ GIT_AUTHOR_EMAIL=author@example.com\n++ GIT_AUTHOR_NAME='A U Thor'\n++ unset GIT_COMMITTER_DATE\n++ GIT_COMMITTER_EMAIL=committer@example.com\n++ GIT_COMMITTER_NAME='C O Mitter'\n++ unset GIT_DIFF_OPTS\n++ unset GIT_DIR\n++ unset GIT_WORK_TREE\n++ unset GIT_EXTERNAL_DIFF\n++ unset GIT_INDEX_FILE\n++ unset GIT_OBJECT_DIRECTORY\n++ unset GIT_CEILING_DIRECTORIES\n++ unset SHA1_FILE_DIRECTORIES\n++ unset SHA1_FILE_DIRECTORY\n++ GIT_MERGE_VERBOSITY=5\n++ export GIT_MERGE_VERBOSITY\n++ export GIT_AUTHOR_EMAIL GIT_AUTHOR_NAME\n++ export GIT_COMMITTER_EMAIL GIT_COMMITTER_NAME\n++ export EDITOR VISUAL\n++ GIT_TEST_CMP='diff -u'\n++ unset CDPATH\n++ case $(echo $GIT_TRACE |tr \"[A-Z]\" \"[a-z]\") in\n+++ echo\n+++ tr '[A-Z]' '[a-z]'\n++ '[' xxterm '!=' xdumb ']'\n++ TERM=xterm\n++ export TERM\n++ '[' -t 1 ']'\n++ test 0 -ne 0\n++ test -n ''\n++ test 'gitweb as standalone script (basic tests).\n\nThis test runs gitweb (git web interface) as CGI script from\ncommandline, and checks that it would not write any errors\nor warnings to log.' '!=' ''\n++ test '' = t\n++ exec\n++ test '' = t\n++ exec\n++ test_failure=0\n++ test_count=0\n++ test_fixed=0\n++ test_broken=0\n++ test_success=0\n++ trap die EXIT\n+++ pwd\n++ TEST_DIRECTORY=/tmp/git-1.6.2/t\n++ \nPATH=/tmp/git-1.6.2/t/..:/usr/local/bin:/usr/gnu/bin:/home/gerberb/bin:/usr/bin:/bin:/sbin:/usr/sbin:/etc:/usr/X11R6/bin\n+++ pwd\n++ GIT_EXEC_PATH=/tmp/git-1.6.2/t/..\n+++ pwd\n++ GIT_TEMPLATE_DIR=/tmp/git-1.6.2/t/../templates/blt\n++ unset GIT_CONFIG\n++ GIT_CONFIG_NOSYSTEM=1\n++ GIT_CONFIG_NOGLOBAL=1\n++ export PATH GIT_EXEC_PATH GIT_TEMPLATE_DIR GIT_CONFIG_NOSYSTEM \nGIT_CONFIG_NOGLOBAL\n+++ pwd\n+++ pwd\n++ \nGITPERLLIB=/tmp/git-1.6.2/t/../perl/blib/lib:/tmp/git-1.6.2/t/../perl/blib/arch/auto/Git\n++ export GITPERLLIB\n++ test -d ../templates/blt\n++ test -x ../test-chmtime\n++ . ../GIT-BUILD-OPTIONS\n+++ SHELL_PATH=/usr/bin/bash\n+++ TAR=gtar\n+++ basename ./t9500-gitweb-standalone-no-errors.sh .sh\n++ test='trash directory.t9500-gitweb-standalone-no-errors'\n++ test '!' -z ''\n++ remove_trash='/tmp/git-1.6.2/t/trash \ndirectory.t9500-gitweb-standalone-no-errors'\n++ rm -fr 'trash directory.t9500-gitweb-standalone-no-errors'\n++ test_create_repo 'trash directory.t9500-gitweb-standalone-no-errors'\n++ test 1 = 1\n+++ pwd\n++ owd=/tmp/git-1.6.2/t\n++ repo='trash directory.t9500-gitweb-standalone-no-errors'\n++ mkdir -p 'trash directory.t9500-gitweb-standalone-no-errors'\n++ cd 'trash directory.t9500-gitweb-standalone-no-errors'\n++ /tmp/git-1.6.2/t/../git init --template=/tmp/git-1.6.2/t/../templates/blt/\n++ mv .git/hooks .git/hooks-disabled\n++ cd /tmp/git-1.6.2/t\n++ cd -P 'trash directory.t9500-gitweb-standalone-no-errors'\n+++ expr ././t9500-gitweb-standalone-no-errors.sh : '.*/\\(t[0-9]*\\)-[^/]*$'\n++ this_test=t9500\n+ perl -MEncode -e 'decode_utf8(\"\", Encode::FB_CROAK)'\n+ gitweb_init\n++ perl -MPOSIX=getcwd -e 'print quotemeta(getcwd)'\n+ safe_pwd='\\/tmp\\/git\\-1\\.6\\.2\\/t\\/trash\\ \ndirectory\\.t9500\\-gitweb\\-standalone\\-no\\-errors'\n+ cat\n+ cat\n+ test_expect_success 'no commits: projects_list (implicit)' gitweb_run\n+ test 2 = 2\n+ test_skip 'no commits: projects_list (implicit)' gitweb_run\n++ expr ././t9500-gitweb-standalone-no-errors.sh : '.*/\\(t[0-9]*\\)-[^/]*$'\n+ this_test=t9500\n...\n+ echo ''\n+ test_debug 'cat gitweb.log'\n+ test '' = ''\n+ test_expect_success '.git blob (file)' 'gitweb_run \"p=.git;a=blob;f=file\"'\n+ test 2 = 2\n+ test_skip '.git blob (file)' 'gitweb_run \"p=.git;a=blob;f=file\"'\n++ expr ././t9500-gitweb-standalone-no-errors.sh : '.*/\\(t[0-9]*\\)-[^/]*$'\n+ this_test=t9500\n++ expr 17 + 1\n+ this_test=t9500.18\n+ to_skip=\n+ case \"$to_skip\" in\n+ false\n+ say 'expecting success: gitweb_run \"p=.git;a=blob;f=file\"'\n+ say_color info 'expecting success: gitweb_run \"p=.git;a=blob;f=file\"'\n+ test -z info\n+ shift\n+ echo '* expecting success: gitweb_run \"p=.git;a=blob;f=file\"'\n+ test_run_ 'gitweb_run \"p=.git;a=blob;f=file\"'\n+ eval 'gitweb_run \"p=.git;a=blob;f=file\"'\n+ eval_ret=255\n+ return 0\n+ '[' 0 = 0 -a 255 = 0 ']'\n+ test_failure_ '.git blob (file)' 'gitweb_run \"p=.git;a=blob;f=file\"'\n++ expr 17 + 1\n+ test_count=18\n++ expr 0 + 1\n+ test_failure=1\n+ say_color error 'FAIL 18: .git blob (file)'\n+ test -z error\n+ shift\n+ echo '* FAIL 18: .git blob (file)'\n* FAIL 18: .git blob (file)\n+ shift\n+ echo 'gitweb_run \"p=.git;a=blob;f=file\"'\n+ sed -e 's/^/\t/'\n      \tgitweb_run \"p=.git;a=blob;f=file\"\n+ test '' = ''\n+ echo ''\n+ test_debug 'cat gitweb.log'\n+ test '' = ''\n+ test_expect_success '.git blob_plain (file)' 'gitweb_run \n\"p=.git;a=blob_plain;f=file\"'\n+ test 2 = 2\n+ test_skip '.git blob_plain (file)' 'gitweb_run \"p=.git;a=blob_plain;f=file\"'\n++ expr ././t9500-gitweb-standalone-no-errors.sh : '.*/\\(t[0-9]*\\)-[^/]*$'\n+ this_test=t9500\n++ expr 18 + 1\n+ this_test=t9500.19\n+ to_skip=\n+ case \"$to_skip\" in\n+ false\n+ say 'expecting success: gitweb_run \"p=.git;a=blob_plain;f=file\"'\n+ say_color info 'expecting success: gitweb_run \"p=.git;a=blob_plain;f=file\"'\n+ test -z info\n+ shift\n+ echo '* expecting success: gitweb_run \"p=.git;a=blob_plain;f=file\"'\n+ test_run_ 'gitweb_run \"p=.git;a=blob_plain;f=file\"'\n+ eval 'gitweb_run \"p=.git;a=blob_plain;f=file\"'\n+ eval_ret=255\n+ return 0\n+ '[' 0 = 0 -a 255 = 0 ']'\n+ test_failure_ '.git blob_plain (file)' 'gitweb_run \n\"p=.git;a=blob_plain;f=file\"'\n++ expr 18 + 1\n+ test_count=19\n++ expr 1 + 1\n+ test_failure=2\n+ say_color error 'FAIL 19: .git blob_plain (file)'\n+ test -z error\n+ shift\n+ echo '* FAIL 19: .git blob_plain (file)'\n* FAIL 19: .git blob_plain (file)\n+ shift\n+ echo 'gitweb_run \"p=.git;a=blob_plain;f=file\"'\n+ sed -e 's/^/\t/'\n      \tgitweb_run \"p=.git;a=blob_plain;f=file\"\n...\n+ echo ''\n+ test_debug 'cat gitweb.log'\n+ test '' = ''\n+ test_expect_success 'path_info: project/branch:file' 'gitweb_run \"\" \n\"/.git/master:file\"'\n+ test 2 = 2\n+ test_skip 'path_info: project/branch:file' 'gitweb_run \"\" \n\"/.git/master:file\"'\n++ expr ././t9500-gitweb-standalone-no-errors.sh : '.*/\\(t[0-9]*\\)-[^/]*$'\n+ this_test=t9500\n++ expr 61 + 1\n+ this_test=t9500.62\n+ to_skip=\n+ case \"$to_skip\" in\n+ false\n+ say 'expecting success: gitweb_run \"\" \"/.git/master:file\"'\n+ say_color info 'expecting success: gitweb_run \"\" \"/.git/master:file\"'\n+ test -z info\n+ shift\n+ echo '* expecting success: gitweb_run \"\" \"/.git/master:file\"'\n+ test_run_ 'gitweb_run \"\" \"/.git/master:file\"'\n+ eval 'gitweb_run \"\" \"/.git/master:file\"'\n+ eval_ret=2\n+ return 0\n+ '[' 0 = 0 -a 2 = 0 ']'\n+ test_failure_ 'path_info: project/branch:file' 'gitweb_run \"\" \n\"/.git/master:file\"'\n++ expr 61 + 1\n+ test_count=62\n++ expr 2 + 1\n+ test_failure=3\n+ say_color error 'FAIL 62: path_info: project/branch:file'\n+ test -z error\n+ shift\n+ echo '* FAIL 62: path_info: project/branch:file'\n* FAIL 62: path_info: project/branch:file\n+ shift\n+ echo 'gitweb_run \"\" \"/.git/master:file\"'\n+ sed -e 's/^/\t/'\n      \tgitweb_run \"\" \"/.git/master:file\"\n...\n+ test -z ''\n+ test -n ''\n+ shift\n+ echo '*   ok 65: path_info: project/branch:dir/ (non-existent)'\n*   ok 65: path_info: project/branch:dir/ (non-existent)\n+ echo ''\n+ test_debug 'cat gitweb.log'\n+ test '' = ''\n+ test_expect_success 'path_info: project/branch:/file' 'gitweb_run \"\" \n\"/.git/master:/file\"'\n+ test 2 = 2\n+ test_skip 'path_info: project/branch:/file' 'gitweb_run \"\" \n\"/.git/master:/file\"'\n++ expr ././t9500-gitweb-standalone-no-errors.sh : '.*/\\(t[0-9]*\\)-[^/]*$'\n+ this_test=t9500\n++ expr 65 + 1\n+ this_test=t9500.66\n+ to_skip=\n+ case \"$to_skip\" in\n+ false\n+ say 'expecting success: gitweb_run \"\" \"/.git/master:/file\"'\n+ say_color info 'expecting success: gitweb_run \"\" \"/.git/master:/file\"'\n+ test -z info\n+ shift\n+ echo '* expecting success: gitweb_run \"\" \"/.git/master:/file\"'\n+ test_run_ 'gitweb_run \"\" \"/.git/master:/file\"'\n+ eval 'gitweb_run \"\" \"/.git/master:/file\"'\n+ eval_ret=2\n+ return 0\n+ '[' 0 = 0 -a 2 = 0 ']'\n+ test_failure_ 'path_info: project/branch:/file' 'gitweb_run \"\" \n\"/.git/master:/file\"'\n++ expr 65 + 1\n+ test_count=66\n++ expr 3 + 1\n+ test_failure=4\n+ say_color error 'FAIL 66: path_info: project/branch:/file'\n+ test -z error\n+ shift\n+ echo '* FAIL 66: path_info: project/branch:/file'\n* FAIL 66: path_info: project/branch:/file\n+ shift\n+ echo 'gitweb_run \"\" \"/.git/master:/file\"'\n+ sed -e 's/^/\t/'\n      \tgitweb_run \"\" \"/.git/master:/file\"\n...\n+ echo ''\n+ test_debug 'cat gitweb.log'\n+ test '' = ''\n+ test_done\n+ trap - EXIT\n+ test_results_dir=/tmp/git-1.6.2/t/test-results\n+ mkdir -p /tmp/git-1.6.2/t/test-results\n+ \ntest_results_path=/tmp/git-1.6.2/t/test-results/./t9500-gitweb-standalone-no-1287\n+ echo 'total 87'\n+ echo 'success 83'\n+ echo 'fixed 0'\n+ echo 'broken 0'\n+ echo 'failed 4'\n+ echo ''\n+ test 0 '!=' 0\n+ test 0 '!=' 0\n+ msg='87 test(s)'\n+ case \"$test_failure\" in\n+ say_color error 'failed 4 among 87 test(s)'\n+ test -z error\n+ shift\n+ echo '* failed 4 among 87 test(s)'\n* failed 4 among 87 test(s)\n+ exit 1\n"},{"id":"107362","messageId":"m3ab7wizz5.fsf@localhost.localdomain","threadId":"18207","inReplyTo":"alpine.LNX.2.00.0903071645370.20607@suse104.zenez.com","subject":"Re: t9500-gitweb-standalone-no-errors.sh.prb 4 errors","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2009-03-08T01:05:47Z","receivedAt":"2009-03-08T01:05:47Z","isPatch":false,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"Boyd Lynn Gerber <gerberb@zenez.com> writes:\n\n> Test fails for SCO OpenServer 6.0 MP4 with 1.6.2\n> \n> Below is the set -x output of the tests.\n\nCould you run it without -x, but with --debug (as option to test\nitself) instead?  Because what matters here not on which command the\ntest failed (we know it is on gitweb_run), but what error message\ngitweb returned.\n\nAlso the problem might with in Perl modules gitweb uses (CGI, Encode,\n...), and with Perl version used, although it is less likely...\n\n-- \nJakub Narebski\nPoland\nShadeHawk on #git\n"},{"id":"107369","messageId":"alpine.LNX.2.00.0903071814050.20607@suse104.zenez.com","threadId":"18207","inReplyTo":"m3ab7wizz5.fsf@localhost.localdomain","subject":"Re: t9500-gitweb-standalone-no-errors.sh.prb 4 errors","fromName":"Boyd Lynn Gerber","fromEmail":"gerberb@zenez.com","sentAt":"2009-03-08T01:29:38Z","receivedAt":"2009-03-08T01:29:38Z","isPatch":false,"sender":{"key":"gerberb@zenez.com","avatar":null},"body":"On Sat, 7 Mar 2009, Jakub Narebski wrote:\n> Boyd Lynn Gerber <gerberb@zenez.com> writes:\n>> Test fails for SCO OpenServer 6.0 MP4 with 1.6.2\n>>\n>> Below is the set -x output of the tests.\n>\n> Could you run it without -x, but with --debug (as option to test\n> itself) instead?  Because what matters here not on which command the\n> test failed (we know it is on gitweb_run), but what error message\n> gitweb returned.\n\nYes,\n\n> Also the problem might with in Perl modules gitweb uses (CGI, Encode,\n> ...), and with Perl version used, although it is less likely...\n\nIt is a perl problem...\n\n* FAIL 18: .git blob (file)\n         gitweb_run \"p=.git;a=blob;f=file\"\n[Sun Mar  8 01:11:44 2009] gitweb.perl: -T and -B not implemented on \nfilehandles at /tmp/git-1.6.2/t/../gitweb/gitweb.perl line 2853.\n* FAIL 19: .git blob_plain (file)\n         gitweb_run \"p=.git;a=blob_plain;f=file\"\n[Sun Mar  8 01:11:44 2009] gitweb.perl: -T and -B not implemented on \nfilehandles at /tmp/git-1.6.2/t/../gitweb/gitweb.perl line 2853.\n* FAIL 62: path_info: project/branch:file\n         gitweb_run \"\" \"/.git/master:file\"\n[Sun Mar  8 01:12:15 2009] gitweb.perl: -T and -B not implemented on \nfilehandles at /tmp/git-1.6.2/t/../gitweb/gitweb.perl line 2853.\n* FAIL 66: path_info: project/branch:/file\n         gitweb_run \"\" \"/.git/master:/file\"\n[Sun Mar  8 01:12:17 2009] gitweb.perl: -T and -B not implemented on \nfilehandles at /tmp/git-1.6.2/t/../gitweb/gitweb.perl line 2853.\n\nI am not really sure what to do about it.  I contacted SCO on a \ndifferent problem with the same type of filehandle problem and they told \nme they have not implemented any thing is the OS that could do this test.\n\nThis is what I traced it to...\n\nThis is what Tim Rice and I received from SCO...\n\n  Re: __fpending()\n\nTim Rice wrote:\n> It looks like it needs __fpending, __fpurge, & __freading.\n> But as mentioned before, we can use funflush for __fpurge.\n\nAnd for __freading() you could use\n\n#define __freading(p) ((p)->__flag & _IOREAD)\n\nor if we were to have had it in <stdio.h>, it'd look\nmore like the following (for C) for various reasons:\n\n#define __freading(p) ((void)sizeof(__filbuf(p)), ((FILE *)(p))->__flag &\n_IOREAD)\n\n> I strongly suspect these missing APIs are responsible for the\nFor C++, it's be an inline routine checking the flag.\n\n> I strongly suspect these missing APIs are responsible for the\n> problem I found with Perl too. See \"uw714 MP4 perl\" and \"osr600 \nMP4 perl\" thread.\n\nThis hadn't been raised as a possibility as far as I've\nread in that thread -- did I miss something?  Does this\nmean you've built your own perl for uw7 and found that\nyou needed one or more of these __f...() routines?\n\nAnd Boyd Gerber wrote:\nAh yes, we're doing\n#if defined(__USLC__)\n   return (fp->__flag & _IOREAD) != 0;\n#else\n   return (fp->_flag & _IOREAD) != 0;\n#endif\n\nWould you consider this test case.\n......\ncat > tst.pl << 'EOF'\nopen (FH, $ARGV[0]) || die (\"Can't open $ARGV[0] -- $!\\n\");\nprint \"Text\\n\" if (-T FH);\nprint \"Binary\\n\" if (-B FH);\nclose (FH);\nEOF\n......\n\nOn OpenServer 5 if you run \"perl tst.pl tst.pl\" it will say\nText\n\nOn UnixWare 7.1.4 MP4 and OpenSever 6.0 MP4 if you run \"perl tst.pl \ntst.pl\" it will say -T and -B not implemented on filehandles at tst.pl \nline 2.\n\nWhile googling I found according to a post by Randal Schwartz that this \nmeans perl doesn't know enough about stdio on that platform.\n\nLooking at /opt/lib/perl5/5.8.8/i386-unixware-thread-multi/Config_heavy.pl\nwe see things like stdio_base='((fp)->_base)' but then we have\nd_stdiobase='undef' so it is not used.\n\nAnd this wouldn't work but probably isn't used because of\nd_stdiobase='undef'\nstdio_bufsiz='((fp)->_cnt + (fp)->_ptr - (fp)->_base)'\n\nIf we had  __fbufsiz() it might be\nstdio_bufsiz='__fbufsiz(fp)'\n\nAs the test program shows, there is something missing in UnixWare's\nand OpenServer 6 perl's implementation.\n\n-- \nBoyd Gerber <gerberb@zenez.com> 801 849-0213\nZENEZ\t1042 East Fort Union #135, Midvale Utah  84047\n"}]}