[PATCH 2 of 5] convert: rename sink hascommit to hascommitforsplicemap

Augie Fackler raf at durin42.com
Mon May 26 11:28:26 CDT 2014


On Mon, May 19, 2014 at 10:33:30PM +0200, Mads Kiilerich wrote:
> # HG changeset patch
> # User Mads Kiilerich <madski at unity3d.com>
> # Date 1400530274 -7200
> #      Mon May 19 22:11:14 2014 +0200
> # Node ID 51fc2a2b012f3b85976c9945cf0e561d77d5df30
> # Parent  e72812aa311af3c22607c9100cc5fa9ad1057864
> convert: rename sink hascommit to hascommitforsplicemap
>
> The name 'hascommit' sounds like something generic ... but it might also throw
> exceptions in specific and it is thus (apparently) only useful for splicemap.

exceptions in specific what?

>
> diff --git a/hgext/convert/common.py b/hgext/convert/common.py
> --- a/hgext/convert/common.py
> +++ b/hgext/convert/common.py
> @@ -260,8 +260,10 @@ class converter_sink(object):
>          """
>          pass
>
> -    def hascommit(self, rev):
> -        """Return True if the sink contains rev"""
> +    def hascommitforsplicemap(self, rev):
> +        """This method is for the special needs for splicemap handling and not
> +        for general use. Returns True if the sink contains rev, aborts on some
> +        special cases."""
>          raise NotImplementedError
>
>  class commandline(object):
> diff --git a/hgext/convert/convcmd.py b/hgext/convert/convcmd.py
> --- a/hgext/convert/convcmd.py
> +++ b/hgext/convert/convcmd.py
> @@ -193,7 +193,7 @@ class converter(object):
>          """
>          for c in sorted(splicemap):
>              if c not in parents:
> -                if not self.dest.hascommit(self.map.get(c, c)):
> +                if not self.dest.hascommitforsplicemap(self.map.get(c, c)):
>                      # Could be in source but not converted during this run
>                      self.ui.warn(_('splice map revision %s is not being '
>                                     'converted, ignoring\n') % c)
> @@ -201,7 +201,7 @@ class converter(object):
>              pc = []
>              for p in splicemap[c]:
>                  # We do not have to wait for nodes already in dest.
> -                if self.dest.hascommit(self.map.get(p, p)):
> +                if self.dest.hascommitforsplicemap(self.map.get(p, p)):
>                      continue
>                  # Parent is not in dest and not being converted, not good
>                  if p not in parents:
> diff --git a/hgext/convert/hg.py b/hgext/convert/hg.py
> --- a/hgext/convert/hg.py
> +++ b/hgext/convert/hg.py
> @@ -253,7 +253,7 @@ class mercurial_sink(converter_sink):
>              destmarks[bookmark] = bin(updatedbookmark[bookmark])
>          destmarks.write()
>
> -    def hascommit(self, rev):
> +    def hascommitforsplicemap(self, rev):
>          if rev not in self.repo and self.clonebranches:
>              raise util.Abort(_('revision %s not found in destination '
>                                 'repository (lookups with clonebranches=true '
> diff --git a/hgext/convert/subversion.py b/hgext/convert/subversion.py
> --- a/hgext/convert/subversion.py
> +++ b/hgext/convert/subversion.py
> @@ -1300,7 +1300,7 @@ class svn_sink(converter_sink, commandli
>          self.ui.warn(_('writing Subversion tags is not yet implemented\n'))
>          return None, None
>
> -    def hascommit(self, rev):
> +    def hascommitforsplicemap(self, rev):
>          # This is not correct as one can convert to an existing subversion
>          # repository and childmap would not list all revisions. Too bad.
>          if rev in self.childmap:
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at selenic.com
> http://selenic.com/mailman/listinfo/mercurial-devel


More information about the Mercurial-devel mailing list