##// END OF EJS Templates
vcsserver: few fixes for python3 support
super-admin -
r1076:69a85da8 python3
parent child Browse files
Show More
@@ -328,8 +328,7 b' class GitRemote(RemoteBase):'
328 args = [wire, rev]
328 args = [wire, rev]
329 result[attr] = method(*args)
329 result[attr] = method(*args)
330 except KeyError as e:
330 except KeyError as e:
331 raise exceptions.VcsException(e)(
331 raise exceptions.VcsException(e)(f"Unknown bulk attribute: {attr}")
332 "Unknown bulk attribute: %s" % attr)
333 return result
332 return result
334
333
335 return _bulk_request(repo_id, rev, sorted(pre_load))
334 return _bulk_request(repo_id, rev, sorted(pre_load))
@@ -359,7 +358,7 b' class GitRemote(RemoteBase):'
359
358
360 @reraise_safe_exceptions
359 @reraise_safe_exceptions
361 def check_url(self, url, config):
360 def check_url(self, url, config):
362 url_obj = url_parser(url)
361 url_obj = url_parser(safe_bytes(url))
363 test_uri, _ = url_obj.authinfo()
362 test_uri, _ = url_obj.authinfo()
364 url_obj.passwd = '*****' if url_obj.passwd else url_obj.passwd
363 url_obj.passwd = '*****' if url_obj.passwd else url_obj.passwd
365 url_obj.query = obfuscate_qs(url_obj.query)
364 url_obj.query = obfuscate_qs(url_obj.query)
@@ -470,9 +469,11 b' class GitRemote(RemoteBase):'
470 object_store = repo.object_store
469 object_store = repo.object_store
471
470
472 # Create tree and populates it with blobs
471 # Create tree and populates it with blobs
472 if commit_tree:
473 commit_tree = safe_bytes(commit_tree)
473
474
474 if commit_tree and repo[commit_tree]:
475 if commit_tree and repo[commit_tree]:
475 git_commit = repo[commit_data['parents'][0]]
476 git_commit = repo[safe_bytes(commit_data['parents'][0])]
476 commit_tree = repo[git_commit.tree] # root tree
477 commit_tree = repo[git_commit.tree] # root tree
477 else:
478 else:
478 commit_tree = objects.Tree()
479 commit_tree = objects.Tree()
@@ -575,12 +576,16 b' class GitRemote(RemoteBase):'
575 'author',
576 'author',
576 'committer',
577 'committer',
577 'message',
578 'message',
578 'encoding'
579 'encoding',
580 'parents'
579 ]
581 ]
580
582
581 for k, v in commit_data.items():
583 for k, v in commit_data.items():
582 if k in bytes_keys:
584 if k in bytes_keys:
583 v = safe_bytes(v)
585 if k == 'parents':
586 v = [safe_bytes(x) for x in v]
587 else:
588 v = safe_bytes(v)
584 setattr(commit, k, v)
589 setattr(commit, k, v)
585
590
586 object_store.add_object(commit)
591 object_store.add_object(commit)
@@ -18,9 +18,10 b''
18 import io
18 import io
19 import logging
19 import logging
20 import stat
20 import stat
21 import urllib.request, urllib.parse, urllib.error
21 import urllib.request
22 import urllib.request, urllib.error, urllib.parse
22 import urllib.parse
23 import traceback
23 import traceback
24 import hashlib
24
25
25 from hgext import largefiles, rebase, purge
26 from hgext import largefiles, rebase, purge
26
27
@@ -23,7 +23,7 b' class RemoteBase(object):'
23
23
24 def _region(self, wire):
24 def _region(self, wire):
25 cache_repo_id = wire.get('cache_repo_id', '')
25 cache_repo_id = wire.get('cache_repo_id', '')
26 cache_namespace_uid = 'cache_repo.{}'.format(cache_repo_id)
26 cache_namespace_uid = f'cache_repo.{cache_repo_id}'
27 return rc_cache.get_or_create_region('repo_object', cache_namespace_uid)
27 return rc_cache.get_or_create_region('repo_object', cache_namespace_uid)
28
28
29 def _cache_on(self, wire):
29 def _cache_on(self, wire):
@@ -38,7 +38,7 b' class RemoteBase(object):'
38 from vcsserver.lib import rc_cache
38 from vcsserver.lib import rc_cache
39 repo_id = wire.get('repo_id', '')
39 repo_id = wire.get('repo_id', '')
40 cache_repo_id = wire.get('cache_repo_id', '')
40 cache_repo_id = wire.get('cache_repo_id', '')
41 cache_namespace_uid = 'cache_repo.{}'.format(cache_repo_id)
41 cache_namespace_uid = f'cache_repo.{cache_repo_id}'
42
42
43 if delete:
43 if delete:
44 rc_cache.clear_cache_namespace(
44 rc_cache.clear_cache_namespace(
General Comments 0
You need to be logged in to leave comments. Login now