Skip to content

Plethora of tests failing on a Debian system in 0.3 branch #216

Closed
@yarikoptic

Description

@yarikoptic

I was about to update python-git package in Debian, and since I am a paranoid fella I wanted to enable build time unittesting. For that I have updated gitdb
to 0.6.0 and smmap to 0.8.3 but now I am getting a plethora of tests failing with 0.3.2.1 (btw -- please use annotated tags for the releases!) and even with tip of 0.3 (0.3.2.1-24-g891b124). Here are erroring and failing tests on my jessie/sid box

======================================================================
ERROR: test_index_merge_tree (git.test.test_index.TestIndex)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/lib/helper.py", line 111, in repo_creator
    return func(self, rw_repo)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/test_index.py", line 217, in test_index_merge_tree
    unmerged_tree = IndexFile.from_tree(rw_repo, parent_commit, tree, next_commit)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/index/base.py", line 335, in from_tree
    repo.git.read_tree(*arg_list, **kwargs)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/cmd.py", line 242, in <lambda>
    return lambda *args, **kwargs: self._call_process(name, *args, **kwargs)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/cmd.py", line 540, in _call_process
    return self.execute(make_call(), **_kwargs)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/cmd.py", line 403, in execute
    raise GitCommandError(command, status, stderr_value)
GitCommandError: 'git read-tree --reset --aggressive --index-output=/home/yoh/.tmp/tmp4i1jT3non_bare_test_index_merge_tree/.git/z53Ynf c76852d0bff115720af3f27acdb084c59361e5f6 dbf49515b3c9357beddebdd45994e69690386934 4c39f9da792792d4e73fc3a5effde66576ae128c' returned exit status 128: error: cache entry has null sha1: MANIFEST.in
fatal: unable to write new index file

that directory /home/yoh/.tmp/tmp4i1jT3non_bare_test_index_merge_tree/.git/ is there, and there is MANIFEST.in:

ls /home/yoh/.tmp/tmp4i1jT3non_bare_test_index_merge_tree/     
AUTHORS  CHANGES  LICENSE  MANIFEST.in  README  VERSION  doc/  ez_setup.py  lib/  setup.py  test/
======================================================================
ERROR: test_index_mutation (git.test.test_index.TestIndex)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/lib/helper.py", line 111, in repo_creator
    return func(self, rw_repo)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/test_index.py", line 463, in test_index_mutation
    [os.path.abspath(os.path.join('lib', 'git', 'head.py'))] * 2, fprogress=self._fprogress_add)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/index/base.py", line 690, in add
    paths, entries = self._preprocess_add_items(items)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/index/base.py", line 552, in _preprocess_add_items
    paths.append(self._to_relative_path(item))
  File "/home/yoh/deb/gits/python-git.gitsvn/git/index/base.py", line 542, in _to_relative_path
    raise ValueError("Absolute path %r is not in git repository at %r" % (path, self.repo.working_tree_dir))
ValueError: Absolute path '/tmp/tmpE34FxXnon_bare_test_index_mutation/lib/git/head.py' is not in git repository at '/home/yoh/.tmp/tmpE34FxXnon_bare_test_index_mutation'

lie:

(git)hopa:~/.tmp/tmpE34FxXnon_bare_test_index_mutation[upstream-0.3]git
$> git status
On branch upstream-0.3
Your branch and 'origin/upstream-0.3' have diverged,
and have 3 and 791 different commits each, respectively.
  (use "git pull" to merge the remote branch into yours)
Untracked files:
  (use "git add <file>..." to include in what will be committed)

    lib/

nothing added to commit but untracked files present (use "git add" to track)

3

======================================================================
ERROR: test_base (git.test.test_reflog.TestRefLog)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/test_reflog.py", line 42, in test_base
    reflog = RefLog.from_file(rlp_master_ro)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/refs/log.py", line 157, in from_file
    return cls(filepath)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/refs/log.py", line 131, in __init__
    self._read_from_file()
  File "/home/yoh/deb/gits/python-git.gitsvn/git/refs/log.py", line 143, in _read_from_file
    self._deserialize(fmap)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/refs/log.py", line 293, in _deserialize
    self.extend(self.iter_entries(stream))
  File "/home/yoh/deb/gits/python-git.gitsvn/git/refs/log.py", line 183, in iter_entries
    yield new_entry(line.strip())
  File "/home/yoh/deb/gits/python-git.gitsvn/git/refs/log.py", line 89, in from_line
    raise ValueError("line is missing tab separator")
ValueError: line is missing tab separator

not sure what to check/report

similar one(s):

======================================================================
ERROR: test_reflog (git.test.test_refs.TestRefs)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/test_refs.py", line 538, in test_reflog
    assert isinstance(self.rorepo.heads.master.log(), RefLog)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/refs/symbolic.py", line 351, in log
    return RefLog.from_file(RefLog.path(self))
  File "/home/yoh/deb/gits/python-git.gitsvn/git/refs/log.py", line 157, in from_file
    return cls(filepath)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/refs/log.py", line 131, in __init__
    self._read_from_file()
  File "/home/yoh/deb/gits/python-git.gitsvn/git/refs/log.py", line 143, in _read_from_file
    self._deserialize(fmap)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/refs/log.py", line 293, in _deserialize
    self.extend(self.iter_entries(stream))
  File "/home/yoh/deb/gits/python-git.gitsvn/git/refs/log.py", line 183, in iter_entries
    yield new_entry(line.strip())
  File "/home/yoh/deb/gits/python-git.gitsvn/git/refs/log.py", line 89, in from_line
    raise ValueError("line is missing tab separator")
ValueError: line is missing tab separator

4

======================================================================
ERROR: test_fetch_info (git.test.test_remote.TestRemote)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/test_remote.py", line 454, in test_fetch_info
    fetch_info_line_fmt % 'remote-tracking branch')
  File "/home/yoh/deb/gits/python-git.gitsvn/git/remote.py", line 260, in _from_line
    raise ValueError("Failed to parse FETCH__HEAD line: %r" % fetch_line)
ValueError: Failed to parse FETCH__HEAD line: "c437ee5deb8d00cf02f03720693e4c802e99f390 not-for-merge   remote-tracking branch '0.3' of git://github.com/gitpython-developers/GitPython"

probably has to do that local branch is called upstream-0.3. Was initiated with git co --track -b upstream-0.3 upstream/0.3

5

======================================================================
ERROR: test_rev_parse (git.test.test_repo.TestRepo)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/test_repo.py", line 502, in test_rev_parse
    obj = self._assert_rev_parse(path_section)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/test_repo.py", line 451, in _assert_rev_parse
    self._assert_rev_parse_types(rev, obj2)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/test_repo.py", line 432, in _assert_rev_parse_types
    obj = rev_parse(name + ':CHANGES')
  File "/home/yoh/deb/gits/python-git.gitsvn/git/repo/fun.py", line 296, in rev_parse
    obj = obj[rev[start:]]
  File "/home/yoh/deb/gits/python-git.gitsvn/git/objects/tree.py", line 238, in __getitem__
    return self.__div__(item)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/objects/tree.py", line 192, in __div__
    raise KeyError(msg % file)
KeyError: "Blob or Tree named 'CHANGES' not found"

6

======================================================================
ERROR: test_base_rw (git.test.test_submodule.TestSubmodule)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/lib/helper.py", line 111, in repo_creator
    return func(self, rw_repo)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/test_submodule.py", line 381, in test_base_rw
    self._do_base_tests(rwrepo)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/test_submodule.py", line 203, in _do_base_tests
    sm.update(recursive=True)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/objects/submodule/base.py", line 476, in update
    submodule.update(recursive, init, to_latest_revision, progress=progress, dry_run=dry_run)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/objects/submodule/base.py", line 391, in update
    mrepo = git.Repo.clone_from(self.url, module_path, n=True)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/repo/base.py", line 753, in clone_from
    return cls._clone(Git(os.getcwd()), url, to_path, GitCmdObjectDB, progress, **kwargs)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/repo/base.py", line 705, in _clone
    finalize_process(proc)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/util.py", line 132, in finalize_process
    proc.wait()
  File "/home/yoh/deb/gits/python-git.gitsvn/git/cmd.py", line 114, in wait
    raise GitCommandError(self.args, status, self.proc.stderr.read())
GitCommandError: 'git clone -n -v /home/yoh/deb/gits/python-git.gitsvn/git/ext/gitdb/gitdb/ext/async /home/yoh/.tmp/tmpprVOajnon_bare_test_base_rw/git/ext/gitdb/gitdb/ext/async' returned exit status 128: fatal: repository '/home/yoh/deb/gits/python-git.gitsvn/git/ext/gitdb/gitdb/ext/async' does not exist

I do not see anything about defining this one (only gitdb/ext/smmap) in gitdb submodule

7

======================================================================
ERROR: test_root_module (git.test.test_submodule.TestSubmodule)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/lib/helper.py", line 111, in repo_creator
    return func(self, rw_repo)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/test_submodule.py", line 464, in test_root_module
    nsm = Submodule.add(rwrepo, nsmn, nsmp, url=async_url)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/objects/submodule/base.py", line 286, in add
    mrepo = git.Repo.clone_from(url, path, **kwargs)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/repo/base.py", line 753, in clone_from
    return cls._clone(Git(os.getcwd()), url, to_path, GitCmdObjectDB, progress, **kwargs)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/repo/base.py", line 705, in _clone
    finalize_process(proc)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/util.py", line 132, in finalize_process
    proc.wait()
  File "/home/yoh/deb/gits/python-git.gitsvn/git/cmd.py", line 114, in wait
    raise GitCommandError(self.args, status, self.proc.stderr.read())
GitCommandError: 'git clone -v /home/yoh/deb/gits/python-git.gitsvn/git/ext/gitdb/gitdb/ext/smmap submrepo' returned exit status 128: fatal: repository '/home/yoh/deb/gits/python-git.gitsvn/git/ext/gitdb/gitdb/ext/smmap' does not exist

because I apparently didn't recurse into init/update submodules within gitdb submod. May be test could be improved to report "Please init/update submodules under git/ext/gitdb" (I found no init --recursive, although there is update --recursive)

8-11

======================================================================
FAIL: test_with_rw_remote_and_rw_repo (git.test.test_base.TestBase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/lib/helper.py", line 199, in remote_repo_creator
    'Please start a git-daemon to run this test, execute: git-daemon "%s"' % os.path.dirname(_mktemp()))
AssertionError: Please start a git-daemon to run this test, execute: git-daemon "/home/yoh/.tmp"

======================================================================
FAIL: test_iteration (git.test.test_commit.TestCommit)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/test_commit.py", line 183, in test_iteration
    assert len(ltd_commits) < len(less_ltd_commits)
AssertionError

======================================================================
FAIL: test_base (git.test.test_remote.TestRemote)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/lib/helper.py", line 199, in remote_repo_creator
    'Please start a git-daemon to run this test, execute: git-daemon "%s"' % os.path.dirname(_mktemp()))
AssertionError: Please start a git-daemon to run this test, execute: git-daemon "/home/yoh/.tmp"

======================================================================
FAIL: test_parse_date (git.test.test_util.TestUtils)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/test_util.py", line 107, in test_parse_date
    assert_rval(parse_date(date), veri_time, offset)
  File "/home/yoh/deb/gits/python-git.gitsvn/git/test/test_util.py", line 90, in assert_rval
    assert rval[0] == veri_time
AssertionError

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions