equal
deleted
inserted
replaced
14 demandload(globals(), "re lock transaction tempfile stat mdiff errno ui") |
14 demandload(globals(), "re lock transaction tempfile stat mdiff errno ui") |
15 demandload(globals(), "os revlog time util") |
15 demandload(globals(), "os revlog time util") |
16 |
16 |
17 class localrepository(repo.repository): |
17 class localrepository(repo.repository): |
18 capabilities = ('lookup', 'changegroupsubset') |
18 capabilities = ('lookup', 'changegroupsubset') |
|
19 supported = ('revlogv1',) |
19 |
20 |
20 def __del__(self): |
21 def __del__(self): |
21 self.transhandle = None |
22 self.transhandle = None |
22 def __init__(self, parentui, path=None, create=0): |
23 def __init__(self, parentui, path=None, create=0): |
23 repo.repository.__init__(self) |
24 repo.repository.__init__(self) |
42 if not os.path.exists(path): |
43 if not os.path.exists(path): |
43 os.mkdir(path) |
44 os.mkdir(path) |
44 os.mkdir(self.path) |
45 os.mkdir(self.path) |
45 #if self.spath != self.path: |
46 #if self.spath != self.path: |
46 # os.mkdir(self.spath) |
47 # os.mkdir(self.spath) |
|
48 requirements = ("revlogv1",) |
|
49 reqfile = self.opener("requires", "w") |
|
50 for r in requirements: |
|
51 reqfile.write("%s\n" % r) |
|
52 reqfile.close() |
47 else: |
53 else: |
48 raise repo.RepoError(_("repository %s not found") % path) |
54 raise repo.RepoError(_("repository %s not found") % path) |
49 elif create: |
55 elif create: |
50 raise repo.RepoError(_("repository %s already exists") % path) |
56 raise repo.RepoError(_("repository %s already exists") % path) |
|
57 else: |
|
58 # find requirements |
|
59 try: |
|
60 requirements = self.opener("requires").read().splitlines() |
|
61 except IOError, inst: |
|
62 if inst.errno != errno.ENOENT: |
|
63 raise |
|
64 requirements = [] |
|
65 # check them |
|
66 for r in requirements: |
|
67 if r not in self.supported: |
|
68 raise repo.RepoError(_("requirement '%s' not supported") % r) |
51 |
69 |
52 # setup store |
70 # setup store |
53 self.spath = self.path |
71 self.spath = self.path |
54 self.sopener = util.opener(self.spath) |
72 self.sopener = util.opener(self.spath) |
55 |
73 |