Hi,
I dive into the problem and I thing the attached patch (generated with
quilt) should fix the problems.
I installed it on my mercurial server, and I can't see any problem yet.
I didn't find any test suite to validate I didn't break anything.
BR,
Jeremy
fix: repo.changectx method has been removed from the API
fix: repo.join method has been removed from the API
Index: mercurial-server-1.2/src/mercurialserver/changes.py
===================================================================
--- mercurial-server-1.2.orig/src/mercurialserver/changes.py 2011-09-06 12:40:10.000000000 +0200
+++ mercurial-server-1.2/src/mercurialserver/changes.py 2019-12-13 14:48:13.712436790 +0100
@@ -3,10 +3,10 @@
"""
def changes(repo, node):
- start = repo.changectx(node).rev()
+ start = repo[node].rev()
try:
end = len(repo.changelog)
except:
end = repo.changelog.count()
for rev in xrange(start, end):
- yield repo.changectx(rev)
+ yield repo[repo.changelog.node(rev)]
Index: mercurial-server-1.2/src/mercurialserver/servelog.py
===================================================================
--- mercurial-server-1.2.orig/src/mercurialserver/servelog.py 2011-09-06 12:40:10.000000000 +0200
+++ mercurial-server-1.2/src/mercurialserver/servelog.py 2019-12-13 14:48:13.720436800 +0100
@@ -26,7 +26,7 @@
else:
raise mercurial.util.Abort(_('servelog installed as wrong hook type,'
' must be changegroup or outgoing but is %s') % hooktype)
- log = open(repo.join("mercurial-server.log"), "a+")
+ log = open(os.path.join(repo.path, "mercurial-server.log"), "a+")
try:
fcntl.flock(log.fileno(), fcntl.LOCK_EX)
log.seek(0, os.SEEK_END)