diff --git a/hgext/convert/__init__.py b/hgext/convert/__init__.py index 96dcc78468e3adc8170500ec351c6524f759f132_aGdleHQvY29udmVydC9fX2luaXRfXy5weQ==..281214150561c18884f789bd2298ef085c37fee3_aGdleHQvY29udmVydC9fX2luaXRfXy5weQ== 100644 --- a/hgext/convert/__init__.py +++ b/hgext/convert/__init__.py @@ -28,103 +28,6 @@ # leave the attribute unspecified. testedwith = 'ships-with-hg-core' -configtable = {} -configitem = registrar.configitem(configtable) - -configitem('convert', 'cvsps.cache', - default=True, -) -configitem('convert', 'cvsps.fuzz', - default=60, -) -configitem('convert', 'cvsps.logencoding', - default=None, -) -configitem('convert', 'cvsps.mergefrom', - default=None, -) -configitem('convert', 'cvsps.mergeto', - default=None, -) -configitem('convert', 'git.committeractions', - default=lambda: ['messagedifferent'], -) -configitem('convert', 'git.extrakeys', - default=list, -) -configitem('convert', 'git.findcopiesharder', - default=False, -) -configitem('convert', 'git.remoteprefix', - default='remote', -) -configitem('convert', 'git.renamelimit', - default=400, -) -configitem('convert', 'git.saverev', - default=True, -) -configitem('convert', 'git.similarity', - default=50, -) -configitem('convert', 'git.skipsubmodules', - default=False, -) -configitem('convert', 'hg.clonebranches', - default=False, -) -configitem('convert', 'hg.ignoreerrors', - default=False, -) -configitem('convert', 'hg.revs', - default=None, -) -configitem('convert', 'hg.saverev', - default=False, -) -configitem('convert', 'hg.sourcename', - default=None, -) -configitem('convert', 'hg.startrev', - default=None, -) -configitem('convert', 'hg.tagsbranch', - default='default', -) -configitem('convert', 'hg.usebranchnames', - default=True, -) -configitem('convert', 'ignoreancestorcheck', - default=False, -) -configitem('convert', 'localtimezone', - default=False, -) -configitem('convert', 'p4.encoding', - default=lambda: convcmd.orig_encoding, -) -configitem('convert', 'p4.startrev', - default=0, -) -configitem('convert', 'skiptags', - default=False, -) -configitem('convert', 'svn.debugsvnlog', - default=True, -) -configitem('convert', 'svn.trunk', - default=None, -) -configitem('convert', 'svn.tags', - default=None, -) -configitem('convert', 'svn.branches', - default=None, -) -configitem('convert', 'svn.startrev', - default=0, -) - # Commands definition was moved elsewhere to ease demandload job. @command('convert', diff --git a/hgext/convert/p4.py b/hgext/convert/p4.py index 96dcc78468e3adc8170500ec351c6524f759f132_aGdleHQvY29udmVydC9wNC5weQ==..281214150561c18884f789bd2298ef085c37fee3_aGdleHQvY29udmVydC9wNC5weQ== 100644 --- a/hgext/convert/p4.py +++ b/hgext/convert/p4.py @@ -44,6 +44,9 @@ class p4_source(common.converter_source): def __init__(self, ui, path, revs=None): + # avoid import cycle + from . import convcmd + super(p4_source, self).__init__(ui, path, revs=revs) if "/" in path and not path.startswith('//'): @@ -53,7 +56,8 @@ common.checktool('p4', abort=False) self.revmap = {} - self.encoding = self.ui.config('convert', 'p4.encoding') + self.encoding = self.ui.config('convert', 'p4.encoding', + convcmd.orig_encoding) self.re_type = re.compile( "([a-z]+)?(text|binary|symlink|apple|resource|unicode|utf\d+)" "(\+\w+)?$") diff --git a/mercurial/configitems.py b/mercurial/configitems.py index 96dcc78468e3adc8170500ec351c6524f759f132_bWVyY3VyaWFsL2NvbmZpZ2l0ZW1zLnB5..281214150561c18884f789bd2298ef085c37fee3_bWVyY3VyaWFsL2NvbmZpZ2l0ZW1zLnB5 100644 --- a/mercurial/configitems.py +++ b/mercurial/configitems.py @@ -208,6 +208,99 @@ default=None, generic=True, ) +coreconfigitem('convert', 'cvsps.cache', + default=True, +) +coreconfigitem('convert', 'cvsps.fuzz', + default=60, +) +coreconfigitem('convert', 'cvsps.logencoding', + default=None, +) +coreconfigitem('convert', 'cvsps.mergefrom', + default=None, +) +coreconfigitem('convert', 'cvsps.mergeto', + default=None, +) +coreconfigitem('convert', 'git.committeractions', + default=lambda: ['messagedifferent'], +) +coreconfigitem('convert', 'git.extrakeys', + default=list, +) +coreconfigitem('convert', 'git.findcopiesharder', + default=False, +) +coreconfigitem('convert', 'git.remoteprefix', + default='remote', +) +coreconfigitem('convert', 'git.renamelimit', + default=400, +) +coreconfigitem('convert', 'git.saverev', + default=True, +) +coreconfigitem('convert', 'git.similarity', + default=50, +) +coreconfigitem('convert', 'git.skipsubmodules', + default=False, +) +coreconfigitem('convert', 'hg.clonebranches', + default=False, +) +coreconfigitem('convert', 'hg.ignoreerrors', + default=False, +) +coreconfigitem('convert', 'hg.revs', + default=None, +) +coreconfigitem('convert', 'hg.saverev', + default=False, +) +coreconfigitem('convert', 'hg.sourcename', + default=None, +) +coreconfigitem('convert', 'hg.startrev', + default=None, +) +coreconfigitem('convert', 'hg.tagsbranch', + default='default', +) +coreconfigitem('convert', 'hg.usebranchnames', + default=True, +) +coreconfigitem('convert', 'ignoreancestorcheck', + default=False, +) +coreconfigitem('convert', 'localtimezone', + default=False, +) +coreconfigitem('convert', 'p4.encoding', + default=dynamicdefault, +) +coreconfigitem('convert', 'p4.startrev', + default=0, +) +coreconfigitem('convert', 'skiptags', + default=False, +) +coreconfigitem('convert', 'svn.debugsvnlog', + default=True, +) +coreconfigitem('convert', 'svn.trunk', + default=None, +) +coreconfigitem('convert', 'svn.tags', + default=None, +) +coreconfigitem('convert', 'svn.branches', + default=None, +) +coreconfigitem('convert', 'svn.startrev', + default=0, +) coreconfigitem('debug', 'dirstate.delaywrite', default=0, ) diff --git a/tests/test-lfconvert.t b/tests/test-lfconvert.t index 96dcc78468e3adc8170500ec351c6524f759f132_dGVzdHMvdGVzdC1sZmNvbnZlcnQudA==..281214150561c18884f789bd2298ef085c37fee3_dGVzdHMvdGVzdC1sZmNvbnZlcnQudA== 100644 --- a/tests/test-lfconvert.t +++ b/tests/test-lfconvert.t @@ -233,5 +233,6 @@ $ cd .. round-trip: converting back to a normal (non-largefiles) repo with -"lfconvert --to-normal" should give the same as ../bigfile-repo +"lfconvert --to-normal" should give the same as ../bigfile-repo. The +convert extension is disabled to show config items can be loaded without it. $ cd largefiles-repo @@ -237,5 +238,5 @@ $ cd largefiles-repo - $ hg lfconvert --to-normal . ../normal-repo + $ hg --config extensions.convert=! lfconvert --to-normal . ../normal-repo initializing destination ../normal-repo 0 additional largefiles cached scanning source...