diff options
Diffstat (limited to 'tests/data/src/sample/setup.py')
-rw-r--r-- | tests/data/src/sample/setup.py | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/tests/data/src/sample/setup.py b/tests/data/src/sample/setup.py new file mode 100644 index 000000000..c86ab8a3c --- /dev/null +++ b/tests/data/src/sample/setup.py @@ -0,0 +1,103 @@ +from setuptools import setup, find_packages +import codecs +import os +import re + +here = os.path.abspath(os.path.dirname(__file__)) + +# Read the version number from a source file. +# Why read it, and not import? +# see https://groups.google.com/d/topic/pypa-dev/0PkjVpcxTzQ/discussion +def find_version(*file_paths): + # Open in Latin-1 so that we avoid encoding errors. + # Use codecs.open for Python 2 compatibility + with codecs.open(os.path.join(here, *file_paths), 'r', 'latin1') as f: + version_file = f.read() + + # The version line must have the form + # __version__ = 'ver' + version_match = re.search(r"^__version__ = ['\"]([^'\"]*)['\"]", + version_file, re.M) + if version_match: + return version_match.group(1) + raise RuntimeError("Unable to find version string.") + + +# Get the long description from the relevant file +with codecs.open('DESCRIPTION.rst', encoding='utf-8') as f: + long_description = f.read() + +setup( + name="sample", + version=find_version('sample', '__init__.py'), + description="A sample Python project", + long_description=long_description, + + # The project URL. + url='https://github.com/pypa/sampleproject', + + # Author details + author='The Python Packaging Authority', + author_email='pypa-dev@googlegroups.com', + + # Choose your license + license='MIT', + + 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 :: Build Tools', + + # 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 :: 2', + 'Programming Language :: Python :: 2.6', + 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.1', + 'Programming Language :: Python :: 3.2', + 'Programming Language :: Python :: 3.3', + ], + + # What does your project relate to? + keywords='sample setuptools development', + + # You can just specify the packages manually here if your project is + # simple. Or you can use find_packages. + packages=find_packages(exclude=["contrib", "docs", "tests*"]), + + # List run-time dependencies here. These will be installed by pip when your + # project is installed. + install_requires = ['peppercorn'], + + # If there are data files included in your packages that need to be + # installed, specify them here. If using Python 2.6 or less, then these + # have to be included in MANIFEST.in as well. + package_data={ + 'sample': ['package_data.dat'], + }, + + # Although 'package_data' is the preferred approach, in some case you may + # need to place data files outside of your packages. + # see http://docs.python.org/3.4/distutils/setupscript.html#installing-additional-files + # In this case, 'data_file' will be installed into '<sys.prefix>/my_data' + data_files=[('my_data', ['data/data_file'])], + + # 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={ + 'console_scripts': [ + 'sample=sample:main', + ], + }, +) |