#!/usr/bin/env python import codecs import os import re import sys from setuptools import setup, find_packages from setuptools.command.test import test as TestCommand long_description = open("README.rst", "r").read() here = os.path.abspath(os.path.dirname(__file__)) def read(*parts): # intentionally *not* adding an encoding option to open, See: # https://github.com/pypa/virtualenv/issues/201#issuecomment-3145690 with codecs.open(os.path.join(here, *parts), "r") as fp: return fp.read() def find_version(*file_paths): version_file = read(*file_paths) 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.") class PyTest(TestCommand): def finalize_options(self): TestCommand.finalize_options(self) self.test_args = [] self.test_suite = True def run_tests(self): # import here, cause outside the eggs aren't loaded import pytest errno = pytest.main(self.test_args) sys.exit(errno) install_requires = [ "PyYAML", "wrapt", "six>=1.5", 'yarl; python_version>="3.6"', 'yarl<1.4; python_version=="3.5"', ] setup( name="vcrpy", version=find_version("vcr", "__init__.py"), description=("Automatically mock your HTTP interactions to simplify and " "speed up testing"), long_description=long_description, author="Kevin McCarthy", author_email="me@kevinmccarthy.org", url="https://github.com/kevin1024/vcrpy", packages=find_packages(exclude=["tests*"]), python_requires=">=3.5", install_requires=install_requires, license="MIT", tests_require=["pytest", "mock", "pytest-httpbin"], classifiers=[ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Testing", "Topic :: Internet :: WWW/HTTP", "License :: OSI Approved :: MIT License", ], )