/tortoisehg/util/hgversion.py
https://bitbucket.org/tortoisehg/hgtk/ · Python · 35 lines · 22 code · 3 blank · 10 comment · 8 complexity · e1fbc5cba2feb194ba7e2a74565e888c MD5 · raw file
- # hgversion.py - Version information for Mercurial
- #
- # Copyright 2009 Steve Borho <steve@borho.org>
- #
- # This software may be used and distributed according to the terms of the
- # GNU General Public License version 2, incorporated herein by reference.
- import re
- try:
- # post 1.1.2
- from mercurial import util
- hgversion = util.version()
- except AttributeError:
- # <= 1.1.2
- from mercurial import version
- hgversion = version.get_version()
- def checkhgversion(v):
- """range check the Mercurial version"""
- reqver = ['1', '7']
- v = v.split('+')[0]
- if not v or v == 'unknown' or len(v) >= 12:
- # can't make any intelligent decisions about unknown or hashes
- return
- vers = re.split(r'\.|-', v)[:2]
- if vers == reqver or len(vers) < 2:
- return
- nextver = list(reqver)
- nextver[1] = chr(ord(reqver[1])+1)
- if vers == nextver:
- return
- return (('This version of TortoiseHg requires Mercurial '
- 'version %s.n to %s.n, but finds %s') %
- ('.'.join(reqver), '.'.join(nextver), v))