Files @ 631e8000eae8
Branch filter:

Location: kallithea/rhodecode/lib/vcs/__init__.py - annotation

Mads Kiilerich
diff parser: match the header order of hg diff --git patches

The output might look like:

diff --git a/A b/B
old mode 100644
new mode 100755
rename from A
rename to B
--- a/A
+++ b/B

Such files were shown as 'modified binary file chmod 100644 => 100755' without
diff.

Now the chmod and diff will be shown ... but still not the rename.

Correct parsing of headers do require a better parser - one do not just use a
regexp.
# -*- coding: utf-8 -*-
"""
    vcs
    ~~~

    Various version Control System (vcs) management abstraction layer for
    Python.

    :created_on: Apr 8, 2010
    :copyright: (c) 2010-2011 by Marcin Kuzminski, Lukasz Balcerzak.
"""

VERSION = (0, 5, 0, 'dev')

__version__ = '.'.join((str(each) for each in VERSION[:4]))

__all__ = [
    'get_version', 'get_repo', 'get_backend',
    'VCSError', 'RepositoryError', 'ChangesetError'
]

import sys
from rhodecode.lib.vcs.backends import get_repo, get_backend
from rhodecode.lib.vcs.exceptions import VCSError, RepositoryError, ChangesetError


def get_version():
    """
    Returns shorter version (digit parts only) as string.
    """
    return '.'.join((str(each) for each in VERSION[:3]))


def main(argv=None):
    if argv is None:
        argv = sys.argv
    from rhodecode.lib.vcs.cli import ExecutionManager
    manager = ExecutionManager(argv)
    manager.execute()
    return 0

if __name__ == '__main__':
    sys.exit(main(sys.argv))