mirror of
				https://github.com/balkian/pre-commit-hooks.git
				synced 2025-11-04 09:08:18 +00:00 
			
		
		
		
	Fixed installation issues
This commit is contained in:
		@@ -18,18 +18,21 @@ pro-commit hooks for various projects
 | 
			
		||||
"""
 | 
			
		||||
 | 
			
		||||
from __future__ import print_function
 | 
			
		||||
import semver
 | 
			
		||||
from .version import __version__
 | 
			
		||||
 | 
			
		||||
__version_info__ = semver.parse_version_info(__version__)
 | 
			
		||||
try:
 | 
			
		||||
    import semver
 | 
			
		||||
    __version_info__ = semver.parse_version_info(__version__)
 | 
			
		||||
 | 
			
		||||
if __version_info__.prerelease:
 | 
			
		||||
    import logging
 | 
			
		||||
    logger = logging.getLogger(__name__)
 | 
			
		||||
    msg = 'WARNING: You are using a pre-release version of {} ({})'.format(
 | 
			
		||||
        __name__, __version__)
 | 
			
		||||
    if len(logging.root.handlers) > 0:
 | 
			
		||||
        logger.info(msg)
 | 
			
		||||
    else:
 | 
			
		||||
        import sys
 | 
			
		||||
        print(msg, file=sys.stderr)
 | 
			
		||||
    if __version_info__.prerelease:
 | 
			
		||||
        import logging
 | 
			
		||||
        logger = logging.getLogger(__name__)
 | 
			
		||||
        msg = 'WARNING: You are using a pre-release version of {} ({})'.format(
 | 
			
		||||
            __name__, __version__)
 | 
			
		||||
        if len(logging.root.handlers) > 0:
 | 
			
		||||
            logger.info(msg)
 | 
			
		||||
        else:
 | 
			
		||||
            import sys
 | 
			
		||||
            print(msg, file=sys.stderr)
 | 
			
		||||
except ImportError:
 | 
			
		||||
    print('semver not installed, not doing version checking')
 | 
			
		||||
 
 | 
			
		||||
@@ -8,14 +8,17 @@ def main(argv=None):
 | 
			
		||||
    parser.add_argument('filenames', nargs='*')
 | 
			
		||||
    args = parser.parse_args(argv)
 | 
			
		||||
    branch_name = check_output(['git', 'rev-parse', '--abbrev-ref', 'HEAD']).strip().decode()
 | 
			
		||||
    if branch_name == 'master':
 | 
			
		||||
        for fn in args.filenames:
 | 
			
		||||
            if os.path.basename(fn) == 'VERSION':
 | 
			
		||||
                with open(fn) as f:
 | 
			
		||||
                    version = semver.parse_version_info(f.read())
 | 
			
		||||
                    if version.prerelease:
 | 
			
		||||
                        return 1
 | 
			
		||||
    for fn in args.filenames:
 | 
			
		||||
        if os.path.basename(fn) == 'VERSION':
 | 
			
		||||
            with open(fn) as f:
 | 
			
		||||
                currentcontent = f.read().strip()
 | 
			
		||||
                prevcontent = check_output(['git', 'show', 'HEAD:{}'.format(fn)]).strip().decode()
 | 
			
		||||
                current = semver.parse_version_info(currentcontent)
 | 
			
		||||
                print('Checking versions: {} -> {}'.format(prevcontent, currentcontent))
 | 
			
		||||
                if (branch_name == 'master' and current.prerelease) or\
 | 
			
		||||
                   (semver.compare(currentcontent, prevcontent)<1):
 | 
			
		||||
                    return 1
 | 
			
		||||
    return 0
 | 
			
		||||
            
 | 
			
		||||
 | 
			
		||||
if __name__ == '__main__':
 | 
			
		||||
    exit(main())
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user