git/list[1] front-page[2] threads[3] people[4] search[5] about
 

git-cvsserver test failures (still)

From
Brian Gernhardt <benji@silverinsanity.com>
Date
Oct 3, 2007, 19:50 UTC
Message-ID
<A78B5F62-4FCC-4650-9B0D-0F64FEDB8423@silverinsanity.com>

Periodically I am reminded that the git-cvsserver does not pass it's tests (t9400-git-cvsserver.sh) on my machine, so I once again ask for help. The failing tests are: (they say skip because this is from the last "find other errors" run)

* skip 9: req_Root failure (strict-paths)
* skip 11: req_Root failure (w/o strict-paths)
* skip 13: req_Root failure (base-path)
No other tests fail, including other req_Root failure tests :
*   ok 6: req_Root failure (relative pathname)
*   ok 7: req_Root failure (conflicting roots)
*   ok 15: req_Root failure (export-all w/o whitelist)
All three tests fail with the exact same error log:

E /Users/brian/dev/git/t/trash/gitcvs.git/ does not seem to be a valid GIT repository E error 1 /Users/brian/dev/git/t/trash/gitcvs.git/ is not a valid repository E Invalid root /Users/brian/dev/git/t/trash/gitcvs.git

This appears to be from git-cvsserver.perl:148-9:
     req_Root('root', $line) # reuse Root
        or die "E Invalid root $line \n";

This fails the test suite because die() exits with code 255 (checked with "perl -e 'die'; echo $?"), which is outside what test_expect_failure accepts (see t/test-lib.sh:179).

My questions become:
1) Why hasn't this hit anyone else?
2) Is this where these tests are supposed to fail?
3) If it is, should the code be using print and exit 1 instead of die?
4) If not, should the test be altered to end with "|| false" or  
similar so the test passes?

I'd happily submit a patch to fix this, but don't know what the correct fix is.

~~ Brian Gernhardt
Next: Frank Lichtenheld
Message 1 of 3 in “git-cvsserver test failures (still)”
  1. Brian GernhardtOct 3, 2007
  2. Frank LichtenheldOct 4, 2007
  3. Use exit 1 instead of die when req_Root fails.Brian Gernhardt, Oct 4, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.