Mercurial > hg > mercurial-crew-with-dirclash
annotate mercurial/repo.py @ 3990:96e21337dc03
Improved error message for extensions overriding commands (with test):
- Old text "module foo overrides bar" was misread as overriding module bar.
- Only print a single warning line per extension instead of one for each
command.
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Tue, 26 Dec 2006 15:33:50 +0100 |
parents | 01d98d68d697 |
children | 63b9d2deed48 |
rev | line source |
---|---|
1089 | 1 # repo.py - repository base classes for mercurial |
2 # | |
3 # Copyright 2005 Matt Mackall <mpm@selenic.com> | |
2858 | 4 # Copyright 2006 Vadim Gelfer <vadim.gelfer@gmail.com> |
1089 | 5 # |
6 # This software may be used and distributed according to the terms | |
7 # of the GNU General Public License, incorporated herein by reference. | |
8 | |
2612
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
9 class RepoError(Exception): |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
10 pass |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
11 |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
12 class repository(object): |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
13 def capable(self, name): |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
14 '''tell whether repo supports named capability. |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
15 return False if not supported. |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
16 if boolean capability, return True. |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
17 if string capability, return string.''' |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
18 name_eq = name + '=' |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
19 for cap in self.capabilities: |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
20 if name == cap: |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
21 return True |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
22 if cap.startswith(name_eq): |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
23 return cap[len(name_eq):] |
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1089
diff
changeset
|
24 return False |