diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 0000000..a27c7f2 --- /dev/null +++ b/setup.cfg @@ -0,0 +1,14 @@ +# for a pure Python package that supports Python 2 and 3 +[wheel] +universal=1 + +# make pypi render markdown files +[metadata] +description-file = README.md + +[pytest] +flakes-ignore = + __init__.py UnusedImport + _compat.py UnusedImport + tests/* ALL + build/* ALL diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..39bcce9 --- /dev/null +++ b/setup.py @@ -0,0 +1,111 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +"""Based on https://github.com/pypa/sampleproject/blob/master/setup.py.""" +from __future__ import unicode_literals +# To use a consistent encoding +import codecs +import os +from setuptools import setup, find_packages +import sys + +# Shortcut for building/publishing to Pypi +if sys.argv[-1] == 'publish': + os.system('python setup.py sdist bdist_wheel upload') + sys.exit() + + +def parse_reqs(req_path='./requirements.txt'): + """Recursively parse requirements from nested pip files.""" + install_requires = [] + with codecs.open(req_path, 'r') as handle: + # remove comments and empty lines + lines = (line.strip() for line in handle + if line.strip() and not line.startswith('#')) + + for line in lines: + # check for nested requirements files + if line.startswith('-r'): + # recursively call this function + install_requires += parse_reqs(req_path=line[3:]) + + else: + # add the line as a new requirement + install_requires.append(line) + + return install_requires + + +def parse_readme(): + """Parse contents of the README.""" + # Get the long description from the relevant file + here = os.path.abspath(os.path.dirname(__file__)) + readme_path = os.path.join(here, 'README.md') + with codecs.open(readme_path, encoding='utf-8') as handle: + long_description = handle.read() + + return long_description + + +setup( + name='undiff1c', + + # Versions should comply with PEP440. For a discussion on + # single-sourcing the version across setup.py and the project code, + # see http://packaging.python.org/en/latest/tutorial.html#version + version='1.0.1', + + description='Vanguard contains all the boilerplate you need to bootstrap a modern Python package.', + long_description=parse_readme(), + # What does your project relate to? Separate with spaces. + keywords='undiff1c', + author='Shenja Sosna', + author_email='shenja@sosna.zp.ua', + license='Apache 2.0', + + # The project's main homepage + url='https://github.com/pumbaEO/undiff1c', + + packages=find_packages(exclude=('tests*', 'docs', 'examples')), + + # If there are data files included in your packages that need to be + # installed, specify them here. + include_package_data=True, + zip_safe=False, + + # Install requirements loaded from ``requirements.txt`` + install_requires=parse_reqs(), + + test_suite='tests', + + # To provide executable scripts, use entry points in preference to the + # "scripts" keyword. Entry points provide cross-platform support and + # allow pip to create the appropriate form of executable for the + # target platform. + entry_points=dict( + console_scripts=[ + 'undiff1c = undiff1c.undiff1c:main', + ], + ), + + # See: http://pypi.python.org/pypi?%3Aaction=list_classifiers + classifiers=[ + # How mature is this project? Common values are: + # 3 - Alpha + # 4 - Beta + # 5 - Production/Stable + 'Development Status :: 3 - Alpha', + + # Indicate who your project is intended for + 'Intended Audience :: Developers', + 'Topic :: Software Development', + + # Pick your license as you wish (should match "license" above) + 'License :: OSI Approved :: MIT License', + + # Specify the Python versions you support here. In particular, ensure + # that you indicate whether you support Python 2, Python 3 or both. + 'Programming Language :: Python :: 3.4', + + 'Environment :: Console', + ], +) diff --git a/src/undiff1c/__init__.py b/undiff1c/__init__.py similarity index 100% rename from src/undiff1c/__init__.py rename to undiff1c/__init__.py diff --git a/src/undiff1c/undiff1c.py b/undiff1c/undiff1c.py similarity index 95% rename from src/undiff1c/undiff1c.py rename to undiff1c/undiff1c.py index 59f390d..6dc19ff 100644 --- a/src/undiff1c/undiff1c.py +++ b/undiff1c/undiff1c.py @@ -12,7 +12,7 @@ from unidiff import PatchSet import codecs -__version__ = '0.0.2' +__version__ = '1.0.1' logging.basicConfig(level=logging.ERROR) # DEBUG => print ALL msgs log = logging.getLogger('undiff1c') @@ -121,10 +121,10 @@ def replace_old_form_attr(filelists): attributes.append( (re.compile('(\s?', '', '', '', '', - '' + '', + '' ) + typefiles = ('template.xml', + 'form.xml' + ) if args.g is True: files = get_list_of_comitted_files() for file in files: - if not file[-12:] == "Template.xml": + filename = os.path.basename(file) + if not filename.lower() in typefiles: continue data = get_diff_forfile(file)