# Distributed under the terms of the GNU General Public License v2
# $Id$
-EAPI=5
+EAPI=6
PYTHON_COMPAT=( python2_7 )
dev-python/pyyaml
dev-python/setuptools
dev-python/pygments
- git? ( =dev-python/pygit2-0.20* )
+ git? ( >=dev-python/pygit2-0.21.3 )
mercurial? ( >=dev-vcs/mercurial-1.6 )"
DEPEND="${RDEPEND}
python_prepare_all() {
if ! use git; then
rm -rf blohg/vcs_backends/git || die 'rm failed'
+ else
+ local PATCHES=( "${FILESDIR}/use-recent-libgit2.patch" )
fi
if ! use mercurial; then
--- /dev/null
+diff --git a/blohg/vcs_backends/git/filectx.py b/blohg/vcs_backends/git/filectx.py
+index 84f7aa3..5e20762 100644
+--- a/blohg/vcs_backends/git/filectx.py
++++ b/blohg/vcs_backends/git/filectx.py
+@@ -73,7 +73,11 @@ def _last_changeset(self):
+ GIT_SORT_TIME):
+ diff = self._repo.diff(head, commit)
+ for patch in diff:
+- if patch.new_file_path == self._path:
++ try:
++ new_file_path = patch.delta.new_file.path
++ except AttributeError:
++ new_file_path = patch.new_file_path
++ if new_file_path == self._path:
+ return head
+ head = commit
+