245 try: |
245 try: |
246 import pygments |
246 import pygments |
247 return True |
247 return True |
248 except ImportError: |
248 except ImportError: |
249 return False |
249 return False |
|
250 |
|
251 def has_python243(): |
|
252 return sys.version_info >= (2, 4, 3) |
250 |
253 |
251 def has_outer_repo(): |
254 def has_outer_repo(): |
252 # failing for other reasons than 'no repo' imply that there is a repo |
255 # failing for other reasons than 'no repo' imply that there is a repo |
253 return not matchoutput('hg root 2>&1', |
256 return not matchoutput('hg root 2>&1', |
254 r'abort: no repository found', True) |
257 r'abort: no repository found', True) |
318 "mtn": (has_mtn, "monotone client (>= 1.0)"), |
321 "mtn": (has_mtn, "monotone client (>= 1.0)"), |
319 "outer-repo": (has_outer_repo, "outer repo"), |
322 "outer-repo": (has_outer_repo, "outer repo"), |
320 "p4": (has_p4, "Perforce server and client"), |
323 "p4": (has_p4, "Perforce server and client"), |
321 "pyflakes": (has_pyflakes, "Pyflakes python linter"), |
324 "pyflakes": (has_pyflakes, "Pyflakes python linter"), |
322 "pygments": (has_pygments, "Pygments source highlighting library"), |
325 "pygments": (has_pygments, "Pygments source highlighting library"), |
|
326 "python243": (has_python243, "python >= 2.4.3"), |
323 "root": (has_root, "root permissions"), |
327 "root": (has_root, "root permissions"), |
324 "serve": (has_serve, "platform and python can manage 'hg serve -d'"), |
328 "serve": (has_serve, "platform and python can manage 'hg serve -d'"), |
325 "ssl": (has_ssl, "python >= 2.6 ssl module and python OpenSSL"), |
329 "ssl": (has_ssl, "python >= 2.6 ssl module and python OpenSSL"), |
326 "svn": (has_svn, "subversion client and admin tools"), |
330 "svn": (has_svn, "subversion client and admin tools"), |
327 "svn13": (has_svn13, "subversion client and admin tools >= 1.3"), |
331 "svn13": (has_svn13, "subversion client and admin tools >= 1.3"), |