comparison hgext/lfs/pointer.py @ 38161:aa10675c5dd6

lfs: clarify pointer validation error messages It wasn't obvious that LFS was involved from the error messages when `hg verify` fails.
author Matt Harbison <matt_harbison@yahoo.com>
date Thu, 26 Apr 2018 23:00:19 -0400
parents 32bc3815efae
children 67dc32d4e790
comparison
equal deleted inserted replaced
38160:c974320d20b9 38161:aa10675c5dd6
63 """raise InvalidPointer on error. return self if there is no error""" 63 """raise InvalidPointer on error. return self if there is no error"""
64 requiredcount = 0 64 requiredcount = 0
65 for k, v in self.iteritems(): 65 for k, v in self.iteritems():
66 if k in self._requiredre: 66 if k in self._requiredre:
67 if not self._requiredre[k].match(v): 67 if not self._requiredre[k].match(v):
68 raise InvalidPointer(_('unexpected value: %s=%s') 68 raise InvalidPointer(
69 % (k, stringutil.pprint(v))) 69 _('unexpected lfs pointer value: %s=%s')
70 % (k, stringutil.pprint(v)))
70 requiredcount += 1 71 requiredcount += 1
71 elif not self._keyre.match(k): 72 elif not self._keyre.match(k):
72 raise InvalidPointer(_('unexpected key: %s') % k) 73 raise InvalidPointer(_('unexpected lfs pointer key: %s') % k)
73 if not self._valuere.match(v): 74 if not self._valuere.match(v):
74 raise InvalidPointer(_('unexpected value: %s=%s') 75 raise InvalidPointer(_('unexpected lfs pointer value: %s=%s')
75 % (k, stringutil.pprint(v))) 76 % (k, stringutil.pprint(v)))
76 if len(self._requiredre) != requiredcount: 77 if len(self._requiredre) != requiredcount:
77 miss = sorted(set(self._requiredre.keys()).difference(self.keys())) 78 miss = sorted(set(self._requiredre.keys()).difference(self.keys()))
78 raise InvalidPointer(_('missed keys: %s') % ', '.join(miss)) 79 raise InvalidPointer(_('missing lfs pointer keys: %s')
80 % ', '.join(miss))
79 return self 81 return self
80 82
81 deserialize = gitlfspointer.deserialize 83 deserialize = gitlfspointer.deserialize