# HG changeset patch # User Mads Kiilerich # Date 2020-05-10 20:04:17 # Node ID 79ce82bdb06eebcee636e50229707ce75b0c2227 # Parent db9718bde286390977a777d29ce71bd0c2ad82ba feeds: fix failure getting feed for Git repos (Issue #372) GitChangeset.diff() did return ''.join(self.repository.get_diff(...)) even though get_diff returned a string. It worked, but was unnecessary and inefficient. That fails in py3: get_diff returns bytes ... and iterating doesn't give characters but integers and we would get: TypeError: sequence item 0: expected a bytes-like object, int found Fixed by dropping the unnecessary iteration and joining. This function is only used for feeds statistics. diff --git a/kallithea/lib/vcs/backends/git/changeset.py b/kallithea/lib/vcs/backends/git/changeset.py --- a/kallithea/lib/vcs/backends/git/changeset.py +++ b/kallithea/lib/vcs/backends/git/changeset.py @@ -231,9 +231,9 @@ class GitChangeset(BaseChangeset): # Only used to feed diffstat rev1 = self.parents[0] if self.parents else self.repository.EMPTY_CHANGESET rev2 = self - return b''.join(self.repository.get_diff(rev1, rev2, + return self.repository.get_diff(rev1, rev2, ignore_whitespace=ignore_whitespace, - context=context)) + context=context) def get_file_mode(self, path): """