mercurial/localrepo.py
changeset 6895 a6bb94930105
parent 6894 29772acb5d2a
child 6896 40690d614ce6
equal deleted inserted replaced
6894:29772acb5d2a 6895:a6bb94930105
    48                 raise repo.RepoError(_("repository %s not found") % path)
    48                 raise repo.RepoError(_("repository %s not found") % path)
    49         elif create:
    49         elif create:
    50             raise repo.RepoError(_("repository %s already exists") % path)
    50             raise repo.RepoError(_("repository %s already exists") % path)
    51         else:
    51         else:
    52             # find requirements
    52             # find requirements
       
    53             requirements = []
    53             try:
    54             try:
    54                 requirements = self.opener("requires").read().splitlines()
    55                 requirements = self.opener("requires").read().splitlines()
       
    56                 for r in requirements:
       
    57                     if r not in self.supported:
       
    58                         raise repo.RepoError(_("requirement '%s' not supported") % r)
    55             except IOError, inst:
    59             except IOError, inst:
    56                 if inst.errno != errno.ENOENT:
    60                 if inst.errno != errno.ENOENT:
    57                     raise
    61                     raise
    58                 requirements = []
       
    59         # check them
       
    60         for r in requirements:
       
    61             if r not in self.supported:
       
    62                 raise repo.RepoError(_("requirement '%s' not supported") % r)
       
    63 
    62 
    64         self.store = store.store(requirements, self.path)
    63         self.store = store.store(requirements, self.path)
    65 
       
    66         self.spath = self.store.path
    64         self.spath = self.store.path
    67         self.sopener = self.store.opener
    65         self.sopener = self.store.opener
    68         self.sjoin = self.store.join
    66         self.sjoin = self.store.join
    69         self.opener.createmode = self.store.createmode
    67         self.opener.createmode = self.store.createmode
    70 
    68