diff -r d5d1edf66091 -r 162b81e65e60 hgext/phabricator.py --- a/hgext/phabricator.py Sun Oct 06 17:21:26 2019 +0100 +++ b/hgext/phabricator.py Sat Oct 12 14:41:59 2019 +0100 @@ -518,7 +518,7 @@ def addhunk(self, hunk): if not isinstance(hunk, phabhunk): raise error.Abort(b'phabchange.addhunk only takes phabhunks') - self.hunks.append(hunk) + self.hunks.append(pycompat.byteskwargs(attr.asdict(hunk))) # It's useful to include these stats since the Phab web UI shows them, # and uses them to estimate how large a change a Revision is. Also used # in email subjects for the [+++--] bit. @@ -549,7 +549,9 @@ def addchange(self, change): if not isinstance(change, phabchange): raise error.Abort(b'phabdiff.addchange only takes phabchanges') - self.changes[change.currentPath] = change + self.changes[change.currentPath] = pycompat.byteskwargs( + attr.asdict(change) + ) def maketext(pchange, ctx, fname):