<commit_before>from __future__ import print_function
from os import getenv, path
import subprocess
import sys

# Make sure the system has the right Python version.
if sys.version_info[:2] < (2, 6):
    print("SymEngine requires Python 2.6 or newer. Python %d.%d detected" % sys.version_info[:2])
    sys.exit(-1)

# use setuptools by default as per the official advice at:
# packaging.python.org/en/latest/current.html#packaging-tool-recommendations
use_setuptools = True
# set the environment variable USE_DISTUTILS=True to force the use of distutils
use_distutils = getenv('USE_DISTUTILS')
if use_distutils is not None:
    if use_distutils.lower() == 'true':
        use_setuptools = False
    else:
        print("Value {} for USE_DISTUTILS treated as False".\
              format(use_distutils))

from distutils.command.build import build as _build

if use_setuptools:
    try:
        from setuptools import setup
        from setuptools.command.install import install as _install
    except ImportError:
        use_setuptools = False

if not use_setuptools:
    from distutils.core import setup
    from distutils.command.install import install as _install

cmake_opts = [("PYTHON_BIN", sys.executable), ("CMAKE_INSTALL_RPATH_USE_LINK_PATH", "yes")]
cmake_generator = [None]
cmake_build_type = ["Release"]

def process_opts(opts):
    return ['-D'+'='.join(o) for o in opts]

class BuildWithCmake(_build):
    _build_opts = _build.user_options
    user_options = [
        ('symengine-dir=', None, 'path to symengine installation or build directory'),
        ('generator=', None, 'cmake build generator'),
        ('build-type=', None, 'build type: Release or Debug'),
        ('define=', 'D',
         'options to cmake <var>:<type>=<value>')
    ]
    user_options.extend(_build_opts)

    def initialize_options(self):
        _build.initialize_options(self)
        self.define = None
        self.symengine_dir = None
        self.generator = None
        self.build_type = "Release"

    def finalize_options(self):
        _build.finalize_options(self)
        # The argument parsing will result in self.define being a string, but
        # it has to be a list of 2-tuples.
        # Multiple symbols can be separated with semi-colons.
        if self.define:
            defines = self.define.split(';')
            self.define = [(s.strip(), None) if '=' not in s else
                           tuple(ss.strip() for ss in s.split('='))
                           for s in defines]
            cmake_opts.extend(self.define)
        if self.symengine_dir:
            cmake_opts.extend([('SymEngine_DIR', self.symengine_dir)])

        if self.generator:
            cmake_generator[0] = self.generator

        cmake_build_type[0] = self.build_type

    def cmake_build(self):
        dir = path.dirname(path.realpath(__file__))
        cmake_cmd = ["cmake", dir, "-DCMAKE_BUILD_TYPE=" + cmake_build_type[0]]
        cmake_cmd.extend(process_opts(cmake_opts))
        if not path.exists("CMakeCache.txt"):
            cmake_cmd.extend(self.get_generator())
        if subprocess.call(cmake_cmd) != 0:
            raise EnvironmentError("error calling cmake")

        if subprocess.call(["cmake", "--build", ".", "--config", cmake_build_type[0]]) != 0:
            raise EnvironmentError("error building project")

    def get_generator(self):
        if cmake_generator[0]:
            return ["-G", cmake_generator[0]]
        else:
            import platform, sys
            if (platform.system() == "Windows"):
                compiler = str(self.compiler).lower()
                if ("msys" in compiler):
                    return ["-G", "MSYS Makefiles"]
                elif ("mingw" in compiler):
                    return ["-G", "MinGW Makefiles"]
                elif sys.maxsize > 2**32:
                    return ["-G", "Visual Studio 14 2015 Win64"]
                else:
                    return ["-G", "Visual Studio 14 2015"]
            return []

    def run(self):
        self.cmake_build()
        # can't use super() here because _build is an old style class in 2.7
        _build.run(self)

class InstallWithCmake(_install):
    _install_opts = _install.user_options
    user_options = [
        ('symengine-dir=', None, 'path to symengine installation or build directory'),
        ('generator=', None, 'cmake build generator'),
        ('build-type=', None, 'build type: Release or Debug'),
        ('define=', 'D',
         'options to cmake <var>:<type>=<value>')
    ]
    user_options.extend(_install_opts)

    def initialize_options(self):
        _install.initialize_options(self)
        self.define = None
        self.symengine_dir = None
        self.generator = None
        self.build_type = "Release"

    def finalize_options(self):
        _install.finalize_options(self)
        # The argument parsing will result in self.define being a string, but
        # it has to be a list of 2-tuples.
        # Multiple symbols can be separated with semi-colons.
        if self.define:
            defines = self.define.split(';')
            self.define = [(s.strip(), None) if '=' not in s else
                           tuple(ss.strip() for ss in s.split('='))
                           for s in defines]
            cmake_opts.extend(self.define)
        if self.symengine_dir:
            cmake_opts.extend([('SymEngine_DIR', self.symengine_dir)])

        if self.generator:
            cmake_generator[0] = self.generator

        cmake_build_type[0] = self.build_type
        cmake_opts.extend([('PYTHON_INSTALL_PATH', self.install_platlib)])
        cmake_opts.extend([('PYTHON_INSTALL_HEADER_PATH', self.install_headers)])

    def cmake_install(self):
        dir = path.dirname(path.realpath(__file__))
        cmake_cmd = ["cmake", dir]
        cmake_cmd.extend(process_opts(cmake_opts))

        # CMake has to be called here to update PYTHON_INSTALL_PATH
        # if build and install were called separately by the user
        if subprocess.call(cmake_cmd) != 0:
            raise EnvironmentError("error calling cmake")

        if subprocess.call(["cmake", "--build", ".", "--config", cmake_build_type[0], "--target", "install"]) != 0:
            raise EnvironmentError("error installing")

        import compileall
        compileall.compile_dir(path.join(self.install_platlib, "symengine"))

    def run(self):
        # can't use super() here because _install is an old style class in 2.7
        _install.run(self)
        self.cmake_install()

long_description = '''
SymEngine is a standalone fast C++ symbolic manipulation library.
Optional thin Python wrappers (SymEngine) allow easy usage from Python and
integration with SymPy and Sage.'''

setup(name = "symengine",
      version="0.1.0.dev",
      description = "Python library providing wrappers to SymEngine",
      setup_requires = ['cython>=0.19.1'],
      long_description = long_description,
      author = "SymPy development team",
      author_email = "sympy@googlegroups.com",
      license = "MIT",
      url = "https://github.com/sympy/symengine",
      cmdclass={
          'build' : BuildWithCmake,
          'install' : InstallWithCmake,
          },
      classifiers=[
        'License :: OSI Approved :: MIT License',
        'Operating System :: OS Independent',
        'Programming Language :: Python',
        'Topic :: Scientific/Engineering',
        'Topic :: Scientific/Engineering :: Mathematics',
        'Topic :: Scientific/Engineering :: Physics',
        'Programming Language :: Python :: 2.6',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3.3',
        'Programming Language :: Python :: 3.4',
        ]
    )
<commit_msg>Update information<commit_after>from __future__ import print_function
from os import getenv, path
import subprocess
import sys

# Make sure the system has the right Python version.
if sys.version_info[:2] < (2, 6):
    print("SymEngine requires Python 2.6 or newer. Python %d.%d detected" % sys.version_info[:2])
    sys.exit(-1)

# use setuptools by default as per the official advice at:
# packaging.python.org/en/latest/current.html#packaging-tool-recommendations
use_setuptools = True
# set the environment variable USE_DISTUTILS=True to force the use of distutils
use_distutils = getenv('USE_DISTUTILS')
if use_distutils is not None:
    if use_distutils.lower() == 'true':
        use_setuptools = False
    else:
        print("Value {} for USE_DISTUTILS treated as False".\
              format(use_distutils))

from distutils.command.build import build as _build

if use_setuptools:
    try:
        from setuptools import setup
        from setuptools.command.install import install as _install
    except ImportError:
        use_setuptools = False

if not use_setuptools:
    from distutils.core import setup
    from distutils.command.install import install as _install

cmake_opts = [("PYTHON_BIN", sys.executable), ("CMAKE_INSTALL_RPATH_USE_LINK_PATH", "yes")]
cmake_generator = [None]
cmake_build_type = ["Release"]

def process_opts(opts):
    return ['-D'+'='.join(o) for o in opts]

class BuildWithCmake(_build):
    _build_opts = _build.user_options
    user_options = [
        ('symengine-dir=', None, 'path to symengine installation or build directory'),
        ('generator=', None, 'cmake build generator'),
        ('build-type=', None, 'build type: Release or Debug'),
        ('define=', 'D',
         'options to cmake <var>:<type>=<value>')
    ]
    user_options.extend(_build_opts)

    def initialize_options(self):
        _build.initialize_options(self)
        self.define = None
        self.symengine_dir = None
        self.generator = None
        self.build_type = "Release"

    def finalize_options(self):
        _build.finalize_options(self)
        # The argument parsing will result in self.define being a string, but
        # it has to be a list of 2-tuples.
        # Multiple symbols can be separated with semi-colons.
        if self.define:
            defines = self.define.split(';')
            self.define = [(s.strip(), None) if '=' not in s else
                           tuple(ss.strip() for ss in s.split('='))
                           for s in defines]
            cmake_opts.extend(self.define)
        if self.symengine_dir:
            cmake_opts.extend([('SymEngine_DIR', self.symengine_dir)])

        if self.generator:
            cmake_generator[0] = self.generator

        cmake_build_type[0] = self.build_type

    def cmake_build(self):
        dir = path.dirname(path.realpath(__file__))
        cmake_cmd = ["cmake", dir, "-DCMAKE_BUILD_TYPE=" + cmake_build_type[0]]
        cmake_cmd.extend(process_opts(cmake_opts))
        if not path.exists("CMakeCache.txt"):
            cmake_cmd.extend(self.get_generator())
        if subprocess.call(cmake_cmd) != 0:
            raise EnvironmentError("error calling cmake")

        if subprocess.call(["cmake", "--build", ".", "--config", cmake_build_type[0]]) != 0:
            raise EnvironmentError("error building project")

    def get_generator(self):
        if cmake_generator[0]:
            return ["-G", cmake_generator[0]]
        else:
            import platform, sys
            if (platform.system() == "Windows"):
                compiler = str(self.compiler).lower()
                if ("msys" in compiler):
                    return ["-G", "MSYS Makefiles"]
                elif ("mingw" in compiler):
                    return ["-G", "MinGW Makefiles"]
                elif sys.maxsize > 2**32:
                    return ["-G", "Visual Studio 14 2015 Win64"]
                else:
                    return ["-G", "Visual Studio 14 2015"]
            return []

    def run(self):
        self.cmake_build()
        # can't use super() here because _build is an old style class in 2.7
        _build.run(self)

class InstallWithCmake(_install):
    _install_opts = _install.user_options
    user_options = [
        ('symengine-dir=', None, 'path to symengine installation or build directory'),
        ('generator=', None, 'cmake build generator'),
        ('build-type=', None, 'build type: Release or Debug'),
        ('define=', 'D',
         'options to cmake <var>:<type>=<value>')
    ]
    user_options.extend(_install_opts)

    def initialize_options(self):
        _install.initialize_options(self)
        self.define = None
        self.symengine_dir = None
        self.generator = None
        self.build_type = "Release"

    def finalize_options(self):
        _install.finalize_options(self)
        # The argument parsing will result in self.define being a string, but
        # it has to be a list of 2-tuples.
        # Multiple symbols can be separated with semi-colons.
        if self.define:
            defines = self.define.split(';')
            self.define = [(s.strip(), None) if '=' not in s else
                           tuple(ss.strip() for ss in s.split('='))
                           for s in defines]
            cmake_opts.extend(self.define)
        if self.symengine_dir:
            cmake_opts.extend([('SymEngine_DIR', self.symengine_dir)])

        if self.generator:
            cmake_generator[0] = self.generator

        cmake_build_type[0] = self.build_type
        cmake_opts.extend([('PYTHON_INSTALL_PATH', self.install_platlib)])
        cmake_opts.extend([('PYTHON_INSTALL_HEADER_PATH', self.install_headers)])

    def cmake_install(self):
        dir = path.dirname(path.realpath(__file__))
        cmake_cmd = ["cmake", dir]
        cmake_cmd.extend(process_opts(cmake_opts))

        # CMake has to be called here to update PYTHON_INSTALL_PATH
        # if build and install were called separately by the user
        if subprocess.call(cmake_cmd) != 0:
            raise EnvironmentError("error calling cmake")

        if subprocess.call(["cmake", "--build", ".", "--config", cmake_build_type[0], "--target", "install"]) != 0:
            raise EnvironmentError("error installing")

        import compileall
        compileall.compile_dir(path.join(self.install_platlib, "symengine"))

    def run(self):
        # can't use super() here because _install is an old style class in 2.7
        _install.run(self)
        self.cmake_install()

long_description = '''
SymEngine is a standalone fast C++ symbolic manipulation library.
Optional thin Python wrappers (SymEngine) allow easy usage from Python and
integration with SymPy and Sage.'''

setup(name = "symengine",
      version="0.1.0.dev",
      description = "Python library providing wrappers to SymEngine",
      setup_requires = ['cython>=0.19.1'],
      long_description = long_description,
      author = "SymEngine development team",
      author_email = "symengine@googlegroups.com",
      license = "MIT",
      url = "https://github.com/symengine/symengine.py",
      cmdclass={
          'build' : BuildWithCmake,
          'install' : InstallWithCmake,
          },
      classifiers=[
        'License :: OSI Approved :: MIT License',
        'Operating System :: OS Independent',
        'Programming Language :: Python',
        'Topic :: Scientific/Engineering',
        'Topic :: Scientific/Engineering :: Mathematics',
        'Topic :: Scientific/Engineering :: Physics',
        'Programming Language :: Python :: 2.6',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3.3',
        'Programming Language :: Python :: 3.4',
        'Programming Language :: Python :: 3.5',
        ]
    )
<|endoftext|>


<commit_before>#! /usr/bin/env python
# -*- coding: utf-8 -*-

from setuptools import setup, find_packages

# Please make sure to cap all dependency versions, in order to avoid unwanted
# functional and integration breaks caused by external code updates.

general_requirements = [
    'dpath >= 1.5.0, < 2.0.0',
    'pytest >= 4.4.1, < 6.0.0',  # For openfisca test
    'numpy >= 1.11, < 1.18',
    'psutil >= 5.4.7, < 6.0.0',
    'PyYAML >= 3.10',
    'sortedcontainers == 2.1.0',
    'numexpr >= 2.7.0, <= 3.0',
    ]

api_requirements = [
    'werkzeug >= 1.0.0, < 2.0.0',
    'flask == 1.1.1',
    'flask-cors == 3.0.7',
    'gunicorn >= 20.0.0, < 21.0.0',
    ]

dev_requirements = [
    'autopep8 >= 1.4.0, < 1.6.0',
    'flake8 >= 3.7.0, < 3.8.0',
    'flake8-bugbear >= 19.3.0, < 20.0.0',
    'flake8-print >= 3.1.0, < 4.0.0',
    'pytest-cov >= 2.6.1, < 3.0.0',
    'mypy >= 0.701, < 0.800',
    'openfisca-country-template >= 3.6.0rc0, < 4.0.0',
    'openfisca-extension-template >= 1.2.0rc0, < 2.0.0'
    ] + api_requirements

setup(
    name = 'OpenFisca-Core',
    version = '34.7.2',
    author = 'OpenFisca Team',
    author_email = 'contact@openfisca.org',
    classifiers = [
        'Development Status :: 5 - Production/Stable',
        'License :: OSI Approved :: GNU Affero General Public License v3',
        'Operating System :: POSIX',
        'Programming Language :: Python',
        'Programming Language :: Python :: 3.6',
        'Programming Language :: Python :: 3.7',
        'Topic :: Scientific/Engineering :: Information Analysis',
        ],
    description = 'A versatile microsimulation free software',
    keywords = 'benefit microsimulation social tax',
    license = 'https://www.fsf.org/licensing/licenses/agpl-3.0.html',
    url = 'https://github.com/openfisca/openfisca-core',

    data_files = [
        ('share/openfisca/openfisca-core', ['CHANGELOG.md', 'LICENSE', 'README.md']),
        ],
    entry_points = {
        'console_scripts': [
            'openfisca=openfisca_core.scripts.openfisca_command:main',
            'openfisca-run-test=openfisca_core.scripts.openfisca_command:main',
            ],
        },
    extras_require = {
        'web-api': api_requirements,
        'dev': dev_requirements,
        'tracker': [
            'openfisca-tracker == 0.4.0',
            ],
        },
    include_package_data = True,  # Will read MANIFEST.in
    install_requires = general_requirements,
    message_extractors = {
        'openfisca_core': [
            ('**.py', 'python', None),
            ],
        },
    packages = find_packages(exclude=['tests*']),
    )
<commit_msg>Bump flask from 1.1.1 to 1.1.2<commit_after>#! /usr/bin/env python
# -*- coding: utf-8 -*-

from setuptools import setup, find_packages

# Please make sure to cap all dependency versions, in order to avoid unwanted
# functional and integration breaks caused by external code updates.

general_requirements = [
    'dpath >= 1.5.0, < 2.0.0',
    'pytest >= 4.4.1, < 6.0.0',  # For openfisca test
    'numpy >= 1.11, < 1.18',
    'psutil >= 5.4.7, < 6.0.0',
    'PyYAML >= 3.10',
    'sortedcontainers == 2.1.0',
    'numexpr >= 2.7.0, <= 3.0',
    ]

api_requirements = [
    'werkzeug >= 1.0.0, < 2.0.0',
    'flask == 1.1.2',
    'flask-cors == 3.0.7',
    'gunicorn >= 20.0.0, < 21.0.0',
    ]

dev_requirements = [
    'autopep8 >= 1.4.0, < 1.6.0',
    'flake8 >= 3.7.0, < 3.8.0',
    'flake8-bugbear >= 19.3.0, < 20.0.0',
    'flake8-print >= 3.1.0, < 4.0.0',
    'pytest-cov >= 2.6.1, < 3.0.0',
    'mypy >= 0.701, < 0.800',
    'openfisca-country-template >= 3.6.0rc0, < 4.0.0',
    'openfisca-extension-template >= 1.2.0rc0, < 2.0.0'
    ] + api_requirements

setup(
    name = 'OpenFisca-Core',
    version = '34.7.2',
    author = 'OpenFisca Team',
    author_email = 'contact@openfisca.org',
    classifiers = [
        'Development Status :: 5 - Production/Stable',
        'License :: OSI Approved :: GNU Affero General Public License v3',
        'Operating System :: POSIX',
        'Programming Language :: Python',
        'Programming Language :: Python :: 3.6',
        'Programming Language :: Python :: 3.7',
        'Topic :: Scientific/Engineering :: Information Analysis',
        ],
    description = 'A versatile microsimulation free software',
    keywords = 'benefit microsimulation social tax',
    license = 'https://www.fsf.org/licensing/licenses/agpl-3.0.html',
    url = 'https://github.com/openfisca/openfisca-core',

    data_files = [
        ('share/openfisca/openfisca-core', ['CHANGELOG.md', 'LICENSE', 'README.md']),
        ],
    entry_points = {
        'console_scripts': [
            'openfisca=openfisca_core.scripts.openfisca_command:main',
            'openfisca-run-test=openfisca_core.scripts.openfisca_command:main',
            ],
        },
    extras_require = {
        'web-api': api_requirements,
        'dev': dev_requirements,
        'tracker': [
            'openfisca-tracker == 0.4.0',
            ],
        },
    include_package_data = True,  # Will read MANIFEST.in
    install_requires = general_requirements,
    message_extractors = {
        'openfisca_core': [
            ('**.py', 'python', None),
            ],
        },
    packages = find_packages(exclude=['tests*']),
    )
<|endoftext|>


<commit_before>import os
from distutils.core import setup

here = os.path.abspath(os.path.dirname(__file__))
README = open(os.path.join(here, 'README.rst')).read()
CHANGES = open(os.path.join(here, 'CHANGES.rst')).read()
LICENSE = open(os.path.join(here, 'LICENSE')).read()

setup(
    name='saferedisqueue',
    version='1.0.0',
    description='A small wrapper around Redis that provides access to a FIFO queue.',
    long_description=README + '\n\n' + CHANGES,
    license=LICENSE,
    author="Fabian Neumann, ferret go GmbH",
    author_email="neumann@ferret-go.com",
    classifiers=[
        "Development Status :: 5 - Production/Stable",
        "Intended Audience :: Developers",
        "License :: OSI Approved :: BSD License",
        "Operating System :: OS Independent",
        "Programming Language :: Python",
        "Programming Language :: Python :: 2.7",
        "Topic :: Internet",
    ],
    keywords='Redis, key-value store, queue, queueing, Storm',
    url='https://github.com/hellp/saferedisqueue',
    py_modules=['saferedisqueue'],
    install_requires=[
        'redis < 2.5',
    ],
    zip_safe=False,
)
<commit_msg>StrictRedis was only introduced in 2.4.10<commit_after>import os
from distutils.core import setup

here = os.path.abspath(os.path.dirname(__file__))
README = open(os.path.join(here, 'README.rst')).read()
CHANGES = open(os.path.join(here, 'CHANGES.rst')).read()
LICENSE = open(os.path.join(here, 'LICENSE')).read()

setup(
    name='saferedisqueue',
    version='1.0.0',
    description='A small wrapper around Redis that provides access to a FIFO queue.',
    long_description=README + '\n\n' + CHANGES,
    license=LICENSE,
    author="Fabian Neumann, ferret go GmbH",
    author_email="neumann@ferret-go.com",
    classifiers=[
        "Development Status :: 5 - Production/Stable",
        "Intended Audience :: Developers",
        "License :: OSI Approved :: BSD License",
        "Operating System :: OS Independent",
        "Programming Language :: Python",
        "Programming Language :: Python :: 2.7",
        "Topic :: Internet",
    ],
    keywords='Redis, key-value store, queue, queueing, Storm',
    url='https://github.com/hellp/saferedisqueue',
    py_modules=['saferedisqueue'],
    install_requires=[
        'redis >= 2.4.10, < 2.5',
    ],
    zip_safe=False,
)
<|endoftext|>


<commit_before># -*- encoding: utf-8 *-*
import os
import re
import sys
from glob import glob

from distutils.command.build import build
from distutils.core import Command
from distutils.errors import DistutilsOptionError
from distutils import log
from setuptools.command.build_py import build_py

min_python = (3, 2)
my_python = sys.version_info

if my_python < min_python:
    print("Borg requires Python %d.%d or later" % min_python)
    sys.exit(1)

# Are we building on ReadTheDocs?
on_rtd = os.environ.get('READTHEDOCS')

# msgpack pure python data corruption was fixed in 0.4.6.
# Also, we might use some rather recent API features.
install_requires=['msgpack-python>=0.4.6', ]

from setuptools import setup, Extension
from setuptools.command.sdist import sdist

compress_source = 'borg/compress.pyx'
crypto_source = 'borg/crypto.pyx'
chunker_source = 'borg/chunker.pyx'
hashindex_source = 'borg/hashindex.pyx'
platform_linux_source = 'borg/platform_linux.pyx'
platform_darwin_source = 'borg/platform_darwin.pyx'
platform_freebsd_source = 'borg/platform_freebsd.pyx'

try:
    from Cython.Distutils import build_ext
    import Cython.Compiler.Main as cython_compiler

    class Sdist(sdist):
        def __init__(self, *args, **kwargs):
            for src in glob('borg/*.pyx'):
                cython_compiler.compile(src, cython_compiler.default_options)
            super().__init__(*args, **kwargs)

        def make_distribution(self):
            self.filelist.extend([
                'borg/compress.c',
                'borg/crypto.c',
                'borg/chunker.c', 'borg/_chunker.c',
                'borg/hashindex.c', 'borg/_hashindex.c',
                'borg/platform_linux.c',
                'borg/platform_freebsd.c',
                'borg/platform_darwin.c',
            ])
            super().make_distribution()

except ImportError:
    class Sdist(sdist):
        def __init__(self, *args, **kwargs):
            raise Exception('Cython is required to run sdist')

    compress_source = compress_source.replace('.pyx', '.c')
    crypto_source = crypto_source.replace('.pyx', '.c')
    chunker_source = chunker_source.replace('.pyx', '.c')
    hashindex_source = hashindex_source.replace('.pyx', '.c')
    platform_linux_source = platform_linux_source.replace('.pyx', '.c')
    platform_freebsd_source = platform_freebsd_source.replace('.pyx', '.c')
    platform_darwin_source = platform_darwin_source.replace('.pyx', '.c')
    from distutils.command.build_ext import build_ext
    if not on_rtd and not all(os.path.exists(path) for path in [
        compress_source, crypto_source, chunker_source, hashindex_source,
        platform_linux_source, platform_freebsd_source]):
        raise ImportError('The GIT version of Borg needs Cython. Install Cython or use a released version.')

def detect_openssl(prefixes):
    for prefix in prefixes:
        filename = os.path.join(prefix, 'include', 'openssl', 'evp.h')
        if os.path.exists(filename):
            with open(filename, 'r') as fd:
                if 'PKCS5_PBKDF2_HMAC(' in fd.read():
                    return prefix

def detect_lz4(prefixes):
    for prefix in prefixes:
        filename = os.path.join(prefix, 'include', 'lz4.h')
        if os.path.exists(filename):
            with open(filename, 'r') as fd:
                if 'LZ4_decompress_safe' in fd.read():
                    return prefix

include_dirs = []
library_dirs = []

possible_openssl_prefixes = ['/usr', '/usr/local', '/usr/local/opt/openssl', '/usr/local/ssl', '/usr/local/openssl', '/usr/local/borg', '/opt/local']
if os.environ.get('BORG_OPENSSL_PREFIX'):
    possible_openssl_prefixes.insert(0, os.environ.get('BORG_OPENSSL_PREFIX'))
ssl_prefix = detect_openssl(possible_openssl_prefixes)
if not ssl_prefix:
    raise Exception('Unable to find OpenSSL >= 1.0 headers. (Looked here: {})'.format(', '.join(possible_openssl_prefixes)))
include_dirs.append(os.path.join(ssl_prefix, 'include'))
library_dirs.append(os.path.join(ssl_prefix, 'lib'))

possible_lz4_prefixes = ['/usr', '/usr/local', '/usr/local/opt/lz4', '/usr/local/lz4', '/usr/local/borg', '/opt/local']
if os.environ.get('BORG_LZ4_PREFIX'):
    possible_openssl_prefixes.insert(0, os.environ.get('BORG_LZ4_PREFIX'))
lz4_prefix = detect_lz4(possible_lz4_prefixes)
if lz4_prefix:
    include_dirs.append(os.path.join(lz4_prefix, 'include'))
    library_dirs.append(os.path.join(lz4_prefix, 'lib'))
elif not on_rtd:
    raise Exception('Unable to find LZ4 headers. (Looked here: {})'.format(', '.join(possible_lz4_prefixes)))

with open('README.rst', 'r') as fd:
    long_description = fd.read()

class build_usage(Command):
    description = "generate usage for each command"

    user_options = [
        ('output=', 'O', 'output directory'),
    ]
    def initialize_options(self):
        pass

    def finalize_options(self):
        pass

    def run(self):
        print('generating usage docs')
        # allows us to build docs without the C modules fully loaded during help generation
        if 'BORG_CYTHON_DISABLE' not in os.environ:
            os.environ['BORG_CYTHON_DISABLE'] = self.__class__.__name__
        from borg.archiver import Archiver
        parser = Archiver().build_parser(prog='borg')
        # return to regular Cython configuration, if we changed it
        if os.environ.get('BORG_CYTHON_DISABLE') == self.__class__.__name__:
            del os.environ['BORG_CYTHON_DISABLE']
        choices = {}
        for action in parser._actions:
            if action.choices is not None:
                choices.update(action.choices)
        print('found commands: %s' % list(choices.keys()))
        if not os.path.exists('docs/usage'):
            os.mkdir('docs/usage')
        for command, parser in choices.items():
            if command is 'help':
                continue
            with open('docs/usage/%s.rst.inc' % command, 'w') as doc:
                print('generating help for %s' % command)
                params = {"command": command,
                          "underline": '-' * len('borg ' + command)}
                doc.write(".. _borg_{command}:\n\n".format(**params))
                doc.write("borg {command}\n{underline}\n::\n\n".format(**params))
                epilog = parser.epilog
                parser.epilog = None
                doc.write(re.sub("^", "    ", parser.format_help(), flags=re.M))
                doc.write("\nDescription\n~~~~~~~~~~~\n")
                doc.write(epilog)

class build_api(Command):
    description = "generate a basic api.rst file based on the modules available"

    user_options = [
        ('output=', 'O', 'output directory'),
    ]
    def initialize_options(self):
        pass

    def finalize_options(self):
        pass

    def run(self):
        print("auto-generating API documentation")
        with open("docs/api.rst", "w") as api:
            api.write("""
Borg Backup API documentation"
=============================
""")
            for mod in glob('borg/*.py') + glob('borg/*.pyx'):
                print("examining module %s" % mod)
                if "/_" not in mod:
                    api.write("""
.. automodule:: %s
    :members:
    :undoc-members:
""" % mod)

# (function, predicate), see http://docs.python.org/2/distutils/apiref.html#distutils.cmd.Command.sub_commands
# seems like this doesn't work on RTD, see below for build_py hack.
build.sub_commands.append(('build_api', None))
build.sub_commands.append(('build_usage', None))

class build_py_custom(build_py):
    """override build_py to also build our stuf

    it is unclear why this is necessary, but in some environments
    (Readthedocs.org, specifically), the above
    ``build.sub_commands.append()`` doesn't seem to have an effect:
    our custom build commands seem to be ignored when running
    ``setup.py install``.

    This class overrides the ``build_py`` target by forcing it to run
    our custom steps as well.

    See also the `bug report on RTD
    <https://github.com/rtfd/readthedocs.org/issues/1740>`_.
    """
    def run(self):
        super().run()
        self.announce('calling custom build steps', level=log.INFO)
        self.run_command('build_api')
        self.run_command('build_usage')

cmdclass = {
    'build_ext': build_ext,
    'build_api': build_api,
    'build_usage': build_usage,
    'build_py': build_py_custom,
    'sdist': Sdist
}

ext_modules = []
if not on_rtd:
    ext_modules += [
    Extension('borg.compress', [compress_source], libraries=['lz4'], include_dirs=include_dirs, library_dirs=library_dirs),
    Extension('borg.crypto', [crypto_source], libraries=['crypto'], include_dirs=include_dirs, library_dirs=library_dirs),
    Extension('borg.chunker', [chunker_source]),
    Extension('borg.hashindex', [hashindex_source])
]
    if sys.platform.startswith('linux'):
        ext_modules.append(Extension('borg.platform_linux', [platform_linux_source], libraries=['acl']))
    elif sys.platform.startswith('freebsd'):
        ext_modules.append(Extension('borg.platform_freebsd', [platform_freebsd_source]))
    elif sys.platform == 'darwin':
        ext_modules.append(Extension('borg.platform_darwin', [platform_darwin_source]))

setup(
    name='borgbackup',
    use_scm_version={
        'write_to': 'borg/_version.py',
    },
    author='The Borg Collective (see AUTHORS file)',
    author_email='borgbackup@librelist.com',
    url='https://borgbackup.github.io/',
    description='Deduplicated, encrypted, authenticated and compressed backups',
    long_description=long_description,
    license='BSD',
    platforms=['Linux', 'MacOS X', 'FreeBSD', 'OpenBSD', 'NetBSD', ],
    classifiers=[
        'Development Status :: 4 - Beta',
        'Environment :: Console',
        'Intended Audience :: System Administrators',
        'License :: OSI Approved :: BSD License',
        'Operating System :: POSIX :: BSD :: FreeBSD',
        'Operating System :: POSIX :: BSD :: OpenBSD',
        'Operating System :: POSIX :: BSD :: NetBSD',
        'Operating System :: MacOS :: MacOS X',
        'Operating System :: POSIX :: Linux',
        'Programming Language :: Python',
        'Programming Language :: Python :: 3',
        'Programming Language :: Python :: 3.2',
        'Programming Language :: Python :: 3.3',
        'Programming Language :: Python :: 3.4',
        'Programming Language :: Python :: 3.5',
        'Topic :: Security :: Cryptography',
        'Topic :: System :: Archiving :: Backup',
    ],
    packages=['borg', 'borg.testsuite', 'borg.support', ],
    entry_points={
        'console_scripts': [
            'borg = borg.archiver:main',
        ]
    },
    cmdclass=cmdclass,
    ext_modules=ext_modules,
    setup_requires=['setuptools_scm>=1.7'],
    install_requires=install_requires,
)
<commit_msg>force build-ext build<commit_after># -*- encoding: utf-8 *-*
import os
import re
import sys
from glob import glob

from distutils.command.build import build
from distutils.core import Command
from distutils.errors import DistutilsOptionError
from distutils import log
from setuptools.command.build_py import build_py

min_python = (3, 2)
my_python = sys.version_info

if my_python < min_python:
    print("Borg requires Python %d.%d or later" % min_python)
    sys.exit(1)

# Are we building on ReadTheDocs?
on_rtd = os.environ.get('READTHEDOCS')

# msgpack pure python data corruption was fixed in 0.4.6.
# Also, we might use some rather recent API features.
install_requires=['msgpack-python>=0.4.6', ]

from setuptools import setup, Extension
from setuptools.command.sdist import sdist

compress_source = 'borg/compress.pyx'
crypto_source = 'borg/crypto.pyx'
chunker_source = 'borg/chunker.pyx'
hashindex_source = 'borg/hashindex.pyx'
platform_linux_source = 'borg/platform_linux.pyx'
platform_darwin_source = 'borg/platform_darwin.pyx'
platform_freebsd_source = 'borg/platform_freebsd.pyx'

try:
    from Cython.Distutils import build_ext
    import Cython.Compiler.Main as cython_compiler

    class Sdist(sdist):
        def __init__(self, *args, **kwargs):
            for src in glob('borg/*.pyx'):
                cython_compiler.compile(src, cython_compiler.default_options)
            super().__init__(*args, **kwargs)

        def make_distribution(self):
            self.filelist.extend([
                'borg/compress.c',
                'borg/crypto.c',
                'borg/chunker.c', 'borg/_chunker.c',
                'borg/hashindex.c', 'borg/_hashindex.c',
                'borg/platform_linux.c',
                'borg/platform_freebsd.c',
                'borg/platform_darwin.c',
            ])
            super().make_distribution()

except ImportError:
    class Sdist(sdist):
        def __init__(self, *args, **kwargs):
            raise Exception('Cython is required to run sdist')

    compress_source = compress_source.replace('.pyx', '.c')
    crypto_source = crypto_source.replace('.pyx', '.c')
    chunker_source = chunker_source.replace('.pyx', '.c')
    hashindex_source = hashindex_source.replace('.pyx', '.c')
    platform_linux_source = platform_linux_source.replace('.pyx', '.c')
    platform_freebsd_source = platform_freebsd_source.replace('.pyx', '.c')
    platform_darwin_source = platform_darwin_source.replace('.pyx', '.c')
    from distutils.command.build_ext import build_ext
    if not on_rtd and not all(os.path.exists(path) for path in [
        compress_source, crypto_source, chunker_source, hashindex_source,
        platform_linux_source, platform_freebsd_source]):
        raise ImportError('The GIT version of Borg needs Cython. Install Cython or use a released version.')

def detect_openssl(prefixes):
    for prefix in prefixes:
        filename = os.path.join(prefix, 'include', 'openssl', 'evp.h')
        if os.path.exists(filename):
            with open(filename, 'r') as fd:
                if 'PKCS5_PBKDF2_HMAC(' in fd.read():
                    return prefix

def detect_lz4(prefixes):
    for prefix in prefixes:
        filename = os.path.join(prefix, 'include', 'lz4.h')
        if os.path.exists(filename):
            with open(filename, 'r') as fd:
                if 'LZ4_decompress_safe' in fd.read():
                    return prefix

include_dirs = []
library_dirs = []

possible_openssl_prefixes = ['/usr', '/usr/local', '/usr/local/opt/openssl', '/usr/local/ssl', '/usr/local/openssl', '/usr/local/borg', '/opt/local']
if os.environ.get('BORG_OPENSSL_PREFIX'):
    possible_openssl_prefixes.insert(0, os.environ.get('BORG_OPENSSL_PREFIX'))
ssl_prefix = detect_openssl(possible_openssl_prefixes)
if not ssl_prefix:
    raise Exception('Unable to find OpenSSL >= 1.0 headers. (Looked here: {})'.format(', '.join(possible_openssl_prefixes)))
include_dirs.append(os.path.join(ssl_prefix, 'include'))
library_dirs.append(os.path.join(ssl_prefix, 'lib'))

possible_lz4_prefixes = ['/usr', '/usr/local', '/usr/local/opt/lz4', '/usr/local/lz4', '/usr/local/borg', '/opt/local']
if os.environ.get('BORG_LZ4_PREFIX'):
    possible_openssl_prefixes.insert(0, os.environ.get('BORG_LZ4_PREFIX'))
lz4_prefix = detect_lz4(possible_lz4_prefixes)
if lz4_prefix:
    include_dirs.append(os.path.join(lz4_prefix, 'include'))
    library_dirs.append(os.path.join(lz4_prefix, 'lib'))
elif not on_rtd:
    raise Exception('Unable to find LZ4 headers. (Looked here: {})'.format(', '.join(possible_lz4_prefixes)))

with open('README.rst', 'r') as fd:
    long_description = fd.read()

class build_usage(Command):
    description = "generate usage for each command"

    user_options = [
        ('output=', 'O', 'output directory'),
    ]
    def initialize_options(self):
        pass

    def finalize_options(self):
        pass

    def run(self):
        print('generating usage docs')
        # allows us to build docs without the C modules fully loaded during help generation
        if 'BORG_CYTHON_DISABLE' not in os.environ:
            os.environ['BORG_CYTHON_DISABLE'] = self.__class__.__name__
        from borg.archiver import Archiver
        parser = Archiver().build_parser(prog='borg')
        # return to regular Cython configuration, if we changed it
        if os.environ.get('BORG_CYTHON_DISABLE') == self.__class__.__name__:
            del os.environ['BORG_CYTHON_DISABLE']
        choices = {}
        for action in parser._actions:
            if action.choices is not None:
                choices.update(action.choices)
        print('found commands: %s' % list(choices.keys()))
        if not os.path.exists('docs/usage'):
            os.mkdir('docs/usage')
        for command, parser in choices.items():
            if command is 'help':
                continue
            with open('docs/usage/%s.rst.inc' % command, 'w') as doc:
                print('generating help for %s' % command)
                params = {"command": command,
                          "underline": '-' * len('borg ' + command)}
                doc.write(".. _borg_{command}:\n\n".format(**params))
                doc.write("borg {command}\n{underline}\n::\n\n".format(**params))
                epilog = parser.epilog
                parser.epilog = None
                doc.write(re.sub("^", "    ", parser.format_help(), flags=re.M))
                doc.write("\nDescription\n~~~~~~~~~~~\n")
                doc.write(epilog)

class build_api(Command):
    description = "generate a basic api.rst file based on the modules available"

    user_options = [
        ('output=', 'O', 'output directory'),
    ]
    def initialize_options(self):
        pass

    def finalize_options(self):
        pass

    def run(self):
        print("auto-generating API documentation")
        with open("docs/api.rst", "w") as api:
            api.write("""
Borg Backup API documentation"
=============================
""")
            for mod in glob('borg/*.py') + glob('borg/*.pyx'):
                print("examining module %s" % mod)
                if "/_" not in mod:
                    api.write("""
.. automodule:: %s
    :members:
    :undoc-members:
""" % mod)

# (function, predicate), see http://docs.python.org/2/distutils/apiref.html#distutils.cmd.Command.sub_commands
# seems like this doesn't work on RTD, see below for build_py hack.
build.sub_commands.append(('build_api', None))
build.sub_commands.append(('build_usage', None))

class build_py_custom(build_py):
    """override build_py to also build our stuf

    it is unclear why this is necessary, but in some environments
    (Readthedocs.org, specifically), the above
    ``build.sub_commands.append()`` doesn't seem to have an effect:
    our custom build commands seem to be ignored when running
    ``setup.py install``.

    This class overrides the ``build_py`` target by forcing it to run
    our custom steps as well.

    See also the `bug report on RTD
    <https://github.com/rtfd/readthedocs.org/issues/1740>`_.
    """
    def run(self):
        super().run()
        self.announce('calling custom build steps', level=log.INFO)
        self.run_command('build_ext')
        self.run_command('build_api')
        self.run_command('build_usage')

cmdclass = {
    'build_ext': build_ext,
    'build_api': build_api,
    'build_usage': build_usage,
    'build_py': build_py_custom,
    'sdist': Sdist
}

ext_modules = []
if not on_rtd:
    ext_modules += [
    Extension('borg.compress', [compress_source], libraries=['lz4'], include_dirs=include_dirs, library_dirs=library_dirs),
    Extension('borg.crypto', [crypto_source], libraries=['crypto'], include_dirs=include_dirs, library_dirs=library_dirs),
    Extension('borg.chunker', [chunker_source]),
    Extension('borg.hashindex', [hashindex_source])
]
    if sys.platform.startswith('linux'):
        ext_modules.append(Extension('borg.platform_linux', [platform_linux_source], libraries=['acl']))
    elif sys.platform.startswith('freebsd'):
        ext_modules.append(Extension('borg.platform_freebsd', [platform_freebsd_source]))
    elif sys.platform == 'darwin':
        ext_modules.append(Extension('borg.platform_darwin', [platform_darwin_source]))

setup(
    name='borgbackup',
    use_scm_version={
        'write_to': 'borg/_version.py',
    },
    author='The Borg Collective (see AUTHORS file)',
    author_email='borgbackup@librelist.com',
    url='https://borgbackup.github.io/',
    description='Deduplicated, encrypted, authenticated and compressed backups',
    long_description=long_description,
    license='BSD',
    platforms=['Linux', 'MacOS X', 'FreeBSD', 'OpenBSD', 'NetBSD', ],
    classifiers=[
        'Development Status :: 4 - Beta',
        'Environment :: Console',
        'Intended Audience :: System Administrators',
        'License :: OSI Approved :: BSD License',
        'Operating System :: POSIX :: BSD :: FreeBSD',
        'Operating System :: POSIX :: BSD :: OpenBSD',
        'Operating System :: POSIX :: BSD :: NetBSD',
        'Operating System :: MacOS :: MacOS X',
        'Operating System :: POSIX :: Linux',
        'Programming Language :: Python',
        'Programming Language :: Python :: 3',
        'Programming Language :: Python :: 3.2',
        'Programming Language :: Python :: 3.3',
        'Programming Language :: Python :: 3.4',
        'Programming Language :: Python :: 3.5',
        'Topic :: Security :: Cryptography',
        'Topic :: System :: Archiving :: Backup',
    ],
    packages=['borg', 'borg.testsuite', 'borg.support', ],
    entry_points={
        'console_scripts': [
            'borg = borg.archiver:main',
        ]
    },
    cmdclass=cmdclass,
    ext_modules=ext_modules,
    setup_requires=['setuptools_scm>=1.7'],
    install_requires=install_requires,
)
<|endoftext|>


<commit_before>import imp
import os
from setuptools import setup, find_packages

version = imp.load_source(
    'mlflow.version', os.path.join('mlflow', 'version.py')).VERSION

# Get a list of all files in the JS directory to include in our module
def package_files(directory):
    paths = []
    for (path, _, filenames) in os.walk(directory):
        for filename in filenames:
            paths.append(os.path.join('..', path, filename))
    return paths

# Prints out a set of paths (relative to the mlflow/ directory) of files in mlflow/server/js/build
# to include in the wheel, e.g. "../mlflow/server/js/build/index.html"
js_files = package_files('mlflow/server/js/build')
models_container_server_files = package_files("mlflow/models/container")
alembic_files = ["../mlflow/alembic/alembic.ini", "../mlflow/temporary_db_migrations_for_pre_1_users/alembic.ini"]

setup(
    name='mlflow',
    version=version,
    packages=find_packages(exclude=['tests', 'tests.*']),
    package_data={"mlflow": js_files + models_container_server_files + alembic_files},
    install_requires=[
        'alembic',
        'click>=7.0',
        'cloudpickle',
        'databricks-cli>=0.8.0',
        'requests>=2.17.3',
        'six>=1.10.0',
        'gunicorn',
        'Flask',
        'numpy',
        'pandas',
        'python-dateutil',
        'protobuf>=3.6.0',
        'gitpython>=2.1.0',
        'pyyaml',
        'querystring_parser',
        'simplejson',
        'docker>=3.6.0',
        'entrypoints',
        'sqlparse',
        'sqlalchemy',
    ],
    extras_require={
        'extras':[
            "scikit-learn; python_version >= '3.5'",
            # scikit-learn 0.20 is the last version to support Python 2.x  & Python 3.4.
            "scikit-learn==0.20; python_version < '3.5'",
            'boto3>=1.7.12',
            'mleap>=0.8.1',
            'azure-storage',
            'google-cloud-storage',
        ],
    },
    entry_points='''
        [console_scripts]
        mlflow=mlflow.cli:cli
    ''',
    zip_safe=False,
    author='Databricks',
    description='MLflow: An ML Workflow Tool',
    long_description=open('README.rst').read(),
    license='Apache License 2.0',
    classifiers=[
        'Intended Audience :: Developers',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3.6',
    ],
    keywords='ml ai databricks',
    url='https://mlflow.org/'
)
<commit_msg>Bump minimum required databricsk_cli version to 0.8.7 (#1447)<commit_after>import imp
import os
from setuptools import setup, find_packages

version = imp.load_source(
    'mlflow.version', os.path.join('mlflow', 'version.py')).VERSION

# Get a list of all files in the JS directory to include in our module
def package_files(directory):
    paths = []
    for (path, _, filenames) in os.walk(directory):
        for filename in filenames:
            paths.append(os.path.join('..', path, filename))
    return paths

# Prints out a set of paths (relative to the mlflow/ directory) of files in mlflow/server/js/build
# to include in the wheel, e.g. "../mlflow/server/js/build/index.html"
js_files = package_files('mlflow/server/js/build')
models_container_server_files = package_files("mlflow/models/container")
alembic_files = ["../mlflow/alembic/alembic.ini", "../mlflow/temporary_db_migrations_for_pre_1_users/alembic.ini"]

setup(
    name='mlflow',
    version=version,
    packages=find_packages(exclude=['tests', 'tests.*']),
    package_data={"mlflow": js_files + models_container_server_files + alembic_files},
    install_requires=[
        'alembic',
        'click>=7.0',
        'cloudpickle',
        'databricks-cli>=0.8.7',
        'requests>=2.17.3',
        'six>=1.10.0',
        'gunicorn',
        'Flask',
        'numpy',
        'pandas',
        'python-dateutil',
        'protobuf>=3.6.0',
        'gitpython>=2.1.0',
        'pyyaml',
        'querystring_parser',
        'simplejson',
        'docker>=3.6.0',
        'entrypoints',
        'sqlparse',
        'sqlalchemy',
    ],
    extras_require={
        'extras':[
            "scikit-learn; python_version >= '3.5'",
            # scikit-learn 0.20 is the last version to support Python 2.x  & Python 3.4.
            "scikit-learn==0.20; python_version < '3.5'",
            'boto3>=1.7.12',
            'mleap>=0.8.1',
            'azure-storage',
            'google-cloud-storage',
        ],
    },
    entry_points='''
        [console_scripts]
        mlflow=mlflow.cli:cli
    ''',
    zip_safe=False,
    author='Databricks',
    description='MLflow: An ML Workflow Tool',
    long_description=open('README.rst').read(),
    license='Apache License 2.0',
    classifiers=[
        'Intended Audience :: Developers',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3.6',
    ],
    keywords='ml ai databricks',
    url='https://mlflow.org/'
)
<|endoftext|>


<commit_before>#!/usr/bin/env python

from setuptools import setup

setup(
    name='ADAM',
    version='0.1',
    author='Michael Seifert',
    author_email='mseifert@error-reports.org',
    install_requires=['piexif', 'pillow', 'pytaglib'],
    setup_requires=['pytest-runner'],
    tests_require=['piexif', 'pillow', 'pytest'],
)
<commit_msg>Removed obsolete dependency on pytaglib in setup.py.<commit_after>#!/usr/bin/env python

from setuptools import setup

setup(
    name='ADAM',
    version='0.1',
    author='Michael Seifert',
    author_email='mseifert@error-reports.org',
    install_requires=['piexif', 'pillow'],
    setup_requires=['pytest-runner'],
    tests_require=['piexif', 'pillow', 'pytest'],
)
<|endoftext|>


<commit_before>import os
from pip import main as pip_main
from setuptools import setup

def read(fname):
    return open(os.path.join(os.path.dirname(__file__), fname)).read()

# allow setup.py to be run from any path
os.chdir(os.path.normpath(os.path.join(os.path.abspath(__file__), os.pardir)))

setup(
    name='UCLDC Harvester',
    version='0.8.1',
    packages=['harvester', 'harvester.fetcher', 'harvester.post_processing'],
    include_package_data=True,
    license='BSD License - see LICENSE file',
    description='harvester code for the UCLDC project',
    long_description=read('README.md'),
    author='Mark Redar',
    author_email='mark.redar@ucop.edu',
    classifiers=[
        'Environment :: Web Environment',
        'Development Status :: 3 - Alpha',
        'Intended Audience :: Developers',
        'License :: OSI Approved :: BSD License',
        'Operating System :: Linux',
        'Programming Language :: Python',
        'Programming Language :: Python :: 2.7',
        'Topic :: Internet :: WWW/HTTP',
        'Topic :: Internet :: WWW/HTTP :: Dynamic Content',
    ],
    dependency_links=[
        'https://github.com/zepheira/amara/archive/master.zip#egg=amara',
        'https://github.com/zepheira/akara/archive/master.zip#egg=akara',
        'https://github.com/mredar/md5s3stash/archive/master.zip#egg=md5s3stash',
        'https://github.com/ucldc/pynux/archive/master.zip#egg=pynux',
        'https://raw.githubusercontent.com/ucldc/facet_decade/master/facet_decade.py#egg=facet_decade-2.0',
        'https://pypi.python.org/packages/source/p/pilbox/pilbox-1.0.3.tar.gz#egg=pilbox',
         'https://github.com/mredar/redis-collections/archive/master.zip#egg=redis-collections',
        'https://github.com/barbarahui/nuxeo-calisphere/archive/master.zip#egg=UCLDC-Deep-Harvester',
        'https://github.com/mredar/sickle/archive/master.zip#egg=Sickle'
    ],
    install_requires=[
        'Sickle',
        'argparse==1.2.1',
        'lxml==3.3.5',
        'requests>=2.1.0',
        'solrpy>=0.9.7',
        'pysolr==3.3.0',
        'pilbox==1.0.3',
        'wsgiref==0.1.2',
        'Logbook==0.6.0',
        'amara',
        'akara',
        'python-dateutil==2.2',
        'CouchDB==0.9',
        'redis>=2.10.1',
        'rq',
        'boto==2.29.1',
        'CouchDB==0.9',
        'md5s3stash',
        'pymarc==3.0.4',
        'facet_decade',
        'redis_collections',
        'xmljson',
        'UCLDC-Deep-Harvester'
        ],
    test_suite='test',
    tests_require=['mock>=1.0.1', 'httpretty==0.8.3', ],
)

pip_main(['install', 'ansible'])
pip_main(['install',
'git+https://github.com/ucldc/pynux.git@b539959ac11caa6fec06f59a0b3768d97bec2693'])
###pip_main(['install',
###         'git+ssh://git@bitbucket.org/mredar/dpla-ingestion.git@ucldc'])
<commit_msg>Pin versions of requests, pysolr, solrpy & redis<commit_after>import os
from pip import main as pip_main
from setuptools import setup

def read(fname):
    return open(os.path.join(os.path.dirname(__file__), fname)).read()

# allow setup.py to be run from any path
os.chdir(os.path.normpath(os.path.join(os.path.abspath(__file__), os.pardir)))

setup(
    name='UCLDC Harvester',
    version='0.8.1',
    packages=['harvester', 'harvester.fetcher', 'harvester.post_processing'],
    include_package_data=True,
    license='BSD License - see LICENSE file',
    description='harvester code for the UCLDC project',
    long_description=read('README.md'),
    author='Mark Redar',
    author_email='mark.redar@ucop.edu',
    classifiers=[
        'Environment :: Web Environment',
        'Development Status :: 3 - Alpha',
        'Intended Audience :: Developers',
        'License :: OSI Approved :: BSD License',
        'Operating System :: Linux',
        'Programming Language :: Python',
        'Programming Language :: Python :: 2.7',
        'Topic :: Internet :: WWW/HTTP',
        'Topic :: Internet :: WWW/HTTP :: Dynamic Content',
    ],
    dependency_links=[
        'https://github.com/zepheira/amara/archive/master.zip#egg=amara',
        'https://github.com/zepheira/akara/archive/master.zip#egg=akara',
        'https://github.com/mredar/md5s3stash/archive/master.zip#egg=md5s3stash',
        'https://github.com/ucldc/pynux/archive/master.zip#egg=pynux',
        'https://raw.githubusercontent.com/ucldc/facet_decade/master/facet_decade.py#egg=facet_decade-2.0',
        'https://pypi.python.org/packages/source/p/pilbox/pilbox-1.0.3.tar.gz#egg=pilbox',
         'https://github.com/mredar/redis-collections/archive/master.zip#egg=redis-collections',
        'https://github.com/barbarahui/nuxeo-calisphere/archive/master.zip#egg=UCLDC-Deep-Harvester',
        'https://github.com/mredar/sickle/archive/master.zip#egg=Sickle'
    ],
    install_requires=[
        'Sickle',
        'argparse==1.2.1',
        'lxml==3.3.5',
        'requests==2.11.1',
        'solrpy==0.9.7',
        'pysolr==3.3.0',
        'pilbox==1.0.3',
        'wsgiref==0.1.2',
        'Logbook==0.6.0',
        'amara',
        'akara',
        'python-dateutil==2.2',
        'CouchDB==0.9',
        'redis==2.10.1',
        'rq',
        'boto==2.29.1',
        'CouchDB==0.9',
        'md5s3stash',
        'pymarc==3.0.4',
        'facet_decade',
        'redis_collections',
        'xmljson',
        'UCLDC-Deep-Harvester'
        ],
    test_suite='test',
    tests_require=['mock>=1.0.1', 'httpretty==0.8.3', ],
)

pip_main(['install', 'ansible'])
pip_main(['install',
'git+https://github.com/ucldc/pynux.git@b539959ac11caa6fec06f59a0b3768d97bec2693'])
###pip_main(['install',
###         'git+ssh://git@bitbucket.org/mredar/dpla-ingestion.git@ucldc'])
<|endoftext|>


<commit_before>from setuptools import setup
import os

README = open(os.path.join(os.path.dirname(__file__), 'README.rst')).read()

setup(
    name='django-user-clipboard',
    version='0.4.0',
    url='https://github.com/IndustriaTech/django-user-clipboard',
    description='Clipboard API',
    author='Vladimir Rusinov',
    author_email='vladimirrussinov@gmail.com',
    maintainer='Venelin Stoykov',
    maintainer_email='venelin.stoykov@industria.tech',
    long_description=README,
    install_requires=[
        'Pillow',
        'django-imagekit',
    ],
    packages=[
        'user_clipboard',
        'user_clipboard.management',
        'user_clipboard.management.commands',
        'user_clipboard.migrations',
        'user_clipboard.south_migrations',
        'user_clipboard.utils',
    ],
    package_data={
        '': ['LICENSE', 'README.rst']
    },
    include_package_data=True,
    keywords=['Clipboard', 'Clipboard API', 'File Clipboard', 'Image Clipboard'],
    license='The MIT License (MIT)',
    classifiers=[
        'Environment :: Web Environment',
        'Framework :: Django',
        'Intended Audience :: Developers',
        'Operating System :: OS Independent',
        'Programming Language :: Python :: 2',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3',
        'Programming Language :: Python :: 3.4',
        'Programming Language :: Python :: 3.5',
        'Topic :: Internet :: WWW/HTTP/JSON',
    ],
)
<commit_msg>Bump version 0.5.0<commit_after>from setuptools import setup
import os

README = open(os.path.join(os.path.dirname(__file__), 'README.rst')).read()

setup(
    name='django-user-clipboard',
    version='0.5.0',
    url='https://github.com/IndustriaTech/django-user-clipboard',
    description='Clipboard API',
    author='Vladimir Rusinov',
    author_email='vladimirrussinov@gmail.com',
    maintainer='Venelin Stoykov',
    maintainer_email='venelin.stoykov@industria.tech',
    long_description=README,
    install_requires=[
        'Pillow',
        'django-imagekit',
    ],
    packages=[
        'user_clipboard',
        'user_clipboard.management',
        'user_clipboard.management.commands',
        'user_clipboard.migrations',
        'user_clipboard.south_migrations',
        'user_clipboard.utils',
    ],
    package_data={
        '': ['LICENSE', 'README.rst']
    },
    include_package_data=True,
    keywords=['Clipboard', 'Clipboard API', 'File Clipboard', 'Image Clipboard'],
    license='The MIT License (MIT)',
    classifiers=[
        'Environment :: Web Environment',
        'Framework :: Django',
        'Intended Audience :: Developers',
        'Operating System :: OS Independent',
        'Programming Language :: Python :: 2',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3',
        'Programming Language :: Python :: 3.4',
        'Programming Language :: Python :: 3.5',
        'Topic :: Internet :: WWW/HTTP/JSON',
    ],
)
<|endoftext|>


<commit_before>"""
Flask-SQLAlchemy-Booster
------------------------

Adds further methods to Flask-SQLAlchemy by subclassing the
Model class and adding

    1. Class methods to enable easy querying

    2. Methods to convert the model object to a JSON convertible
    dictionary.

"""

from setuptools import setup

setup(
    name='Flask-SQLAlchemy-Booster',
    version='0.1.5',
    long_description='A wrapper around Flask-SQLAlchemy',
    packages=['flask_sqlalchemy_booster'],
    include_package_data=True,
    install_requires=[
        "toolspy>=0.1.",
        "Flask>=0.10.1",
        "SQLAlchemy>=0.9.8",
        "Flask-SQLAlchemy>=2.0"
        ],
    license='MIT',
    url='https://github.com/inkmonk/flask-sqlalchemy-booster',
    author='SuryaSankar',
    author_email='suryashankar.m@gmail.com')
<commit_msg>safety commit<commit_after>"""
Flask-SQLAlchemy-Booster
------------------------

Adds further methods to Flask-SQLAlchemy by subclassing the
Model class and adding

    1. Class methods to enable easy querying

    2. Methods to convert the model object to a JSON convertible
    dictionary.

"""

from setuptools import setup

setup(
    name='Flask-SQLAlchemy-Booster',
    version='0.1.6',
    long_description='A wrapper around Flask-SQLAlchemy',
    packages=['flask_sqlalchemy_booster'],
    include_package_data=True,
    install_requires=[
        "toolspy>=0.1.",
        "Flask>=0.10.1",
        "SQLAlchemy>=0.9.8",
        "Flask-SQLAlchemy>=2.0"
        ],
    license='MIT',
    url='https://github.com/inkmonk/flask-sqlalchemy-booster',
    author='SuryaSankar',
    author_email='suryashankar.m@gmail.com')
<|endoftext|>


<commit_before>from setuptools import setup

setup(name='py-maelstrom',
      version='0.1.0',
      author='Matt Morse, Joe Peacock',
      author_email='mmorse1217@gmail.com, joeapeacock@gmail.com',
      packages=['cassandra_module', 'cassandra_module.tests'],
      url='https://github.com/gradfly/maelstrom',
      license='LICENSE',
      description='A powerful, model based Cassandra wrapper for Python.',
      long_description=open('README.rst').read(),
      install_requires=[
          "cassandra-driver == 2.0.2",
          "nose >= 1.3.1"
      ],
      test_suite="nose.collector")
<commit_msg>updated readme in setup<commit_after>from setuptools import setup

setup(name='py-maelstrom',
      version='0.1.0',
      author='Matt Morse, Joe Peacock',
      author_email='mmorse1217@gmail.com, joeapeacock@gmail.com',
      packages=['cassandra_module', 'cassandra_module.tests'],
      url='https://github.com/gradfly/maelstrom',
      license='LICENSE',
      description='A powerful, model based Cassandra wrapper for Python.',
      long_description=open('README.md').read(),
      install_requires=[
          "cassandra-driver == 2.0.2",
          "nose >= 1.3.1"
      ],
      test_suite="nose.collector")
<|endoftext|>


<commit_before>#!/usr/bin/env python
#
# Copyright (C) 2013 KKBOX Technologies Ltd.
# Copyright (C) 2013 Gasol Wu <gasol.wu@gmail.com>
#
# This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution.

from setuptools import find_packages, setup

PACKAGE = 'TracAttachmentNotifyPlugin'
VERSION = 'UNRELEASE'

try:
    import trac
    if trac.__version__ < '0.11.6':
        print "%s %s requires Trac >= 0.11.6" % (PACKAGE, VERSION)
        sys.exit(1)
except ImportError:
    pass

setup(
    name = PACKAGE,
    version = VERSION,
    author = 'Gasol Wu',
    author_email = 'gasolwu@kkbox.com',
    license = '3-Clause BSD',
    keywords = 'attachment notification trac plugin',
    packages = find_packages(),
    zip_safe = False,
    entry_points = {
        'trac.plugins': [
            'attachment.notify = attachment.notify',
        ],
    },
)

<commit_msg>Add description<commit_after>#!/usr/bin/env python
#
# Copyright (C) 2013 KKBOX Technologies Ltd.
# Copyright (C) 2013 Gasol Wu <gasol.wu@gmail.com>
#
# This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution.

from setuptools import find_packages, setup

PACKAGE = 'TracAttachmentNotifyPlugin'
VERSION = 'UNRELEASE'

try:
    import trac
    if trac.__version__ < '0.11.6':
        print "%s %s requires Trac >= 0.11.6" % (PACKAGE, VERSION)
        sys.exit(1)
except ImportError:
    pass

setup(
    name = PACKAGE,
    version = VERSION,
    author = 'Gasol Wu',
    author_email = 'gasolwu@kkbox.com',
    description = 'Trac Attachment Notify Plugin',
    license = '3-Clause BSD',
    keywords = 'attachment notification trac plugin',
    packages = find_packages(),
    zip_safe = False,
    entry_points = {
        'trac.plugins': [
            'attachment.notify = attachment.notify',
        ],
    },
)

<|endoftext|>


<commit_before>
from distutils.core import setup
import pycoreutils

setup(
    name = "pycoreutils",
    version = pycoreutils.__version__,
    description = "Python port of GNU coreutils",
    classifiers = [
        "Development Status :: 3 - Alpha",
        "License :: OSI Approved :: MIT License",
        "Programming Language :: Python",
    ],
    license = "MIT",
    url = "http://hanz.nl",
    author = "Hans van Leeuwen",
    author_email = "hanz@hanz.nl",
    packages = ["pycoreutils", "pycoreutils.tests"],
    scripts = ["coreutils.py", "sh.py"],
)

<commit_msg>Use README.txt as long_description<commit_after>
from distutils.core import setup
import pycoreutils

# Use README.txt + a list of available commands as long_description
long_description = ''.join(open("README.txt").readlines()) + '''

List of available commands
--------------------------

- ''' + "\n- ".join(pycoreutils.listcommands())

setup(
    name = "pycoreutils",
    version = pycoreutils.__version__,
    description = "Coreutils in Pure Python",
    long_description = long_description,
    classifiers = [
        "Development Status :: 3 - Alpha",
        "License :: OSI Approved :: MIT License",
        "Programming Language :: Python",
    ],
    license = "MIT",
    url = "https://launchpad.net/pycoreutils",
    author = "Hans van Leeuwen",
    author_email = "hanz@hanz.nl",
    packages = ["pycoreutils", "pycoreutils.tests"],
    scripts = ["coreutils.py", "sh.py"],
)

<|endoftext|>


<commit_before>#!/usr/bin/env python
""" Setup to allow pip installs of edx-search module """

from __future__ import absolute_import

from setuptools import setup

def load_requirements(*requirements_paths):
    """
    Load all requirements from the specified requirements files.
    Returns:
        list: Requirements file relative path strings
    """
    requirements = set()
    for path in requirements_paths:
        requirements.update(
            line.split('#')[0].strip() for line in open(path).readlines()
            if is_requirement(line.strip())
        )
    return list(requirements)

def is_requirement(line):
    """
    Return True if the requirement line is a package requirement.
    Returns:
        bool: True if the line is not blank, a comment, a URL, or an included file
    """
    return line and not line.startswith(('-r', '#', '-e', 'git+', '-c'))

setup(
    name='edx-search',
    version='1.3.2',
    description='Search and index routines for index access',
    author='edX',
    author_email='oscm@edx.org',
    url='https://github.com/edx/edx-search',
    license='AGPL',
    classifiers=[
        'Development Status :: 3 - Alpha',
        'Environment :: Web Environment',
        'Intended Audience :: Developers',
        'License :: OSI Approved :: GNU Affero General Public License v3',
        'Operating System :: OS Independent',
        'Programming Language :: Python :: 2',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3',
        'Programming Language :: Python :: 3.5',
        'Framework :: Django',
        'Framework :: Django :: 1.11',
        'Framework :: Django :: 2.0',
        'Framework :: Django :: 2.1',
        'Framework :: Django :: 2.2',
    ],
    packages=['search', 'search.tests'],
    install_requires=load_requirements('requirements/base.in')
)
<commit_msg>Bump version.<commit_after>#!/usr/bin/env python
""" Setup to allow pip installs of edx-search module """

from __future__ import absolute_import

from setuptools import setup

def load_requirements(*requirements_paths):
    """
    Load all requirements from the specified requirements files.
    Returns:
        list: Requirements file relative path strings
    """
    requirements = set()
    for path in requirements_paths:
        requirements.update(
            line.split('#')[0].strip() for line in open(path).readlines()
            if is_requirement(line.strip())
        )
    return list(requirements)

def is_requirement(line):
    """
    Return True if the requirement line is a package requirement.
    Returns:
        bool: True if the line is not blank, a comment, a URL, or an included file
    """
    return line and not line.startswith(('-r', '#', '-e', 'git+', '-c'))

setup(
    name='edx-search',
    version='1.3.3',
    description='Search and index routines for index access',
    author='edX',
    author_email='oscm@edx.org',
    url='https://github.com/edx/edx-search',
    license='AGPL',
    classifiers=[
        'Development Status :: 3 - Alpha',
        'Environment :: Web Environment',
        'Intended Audience :: Developers',
        'License :: OSI Approved :: GNU Affero General Public License v3',
        'Operating System :: OS Independent',
        'Programming Language :: Python :: 2',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3',
        'Programming Language :: Python :: 3.5',
        'Framework :: Django',
        'Framework :: Django :: 1.11',
        'Framework :: Django :: 2.0',
        'Framework :: Django :: 2.1',
        'Framework :: Django :: 2.2',
    ],
    packages=['search', 'search.tests'],
    install_requires=load_requirements('requirements/base.in')
)
<|endoftext|>


<commit_before>"""Install tensor2tensor."""

from setuptools import find_packages
from setuptools import setup

setup(
    name='tensor2tensor',
    version='1.13.4',
    description='Tensor2Tensor',
    author='Google Inc.',
    author_email='no-reply@google.com',
    url='http://github.com/tensorflow/tensor2tensor',
    license='Apache 2.0',
    packages=find_packages(),
    package_data={
        'tensor2tensor.data_generators': ['test_data/*'],
        'tensor2tensor.data_generators.wikisum': ['test_data/*'],
        'tensor2tensor.visualization': [
            'attention.js', 'TransformerVisualization.ipynb'
        ],
    },
    scripts=[
        'tensor2tensor/bin/t2t-trainer',
        'tensor2tensor/bin/t2t-datagen',
        'tensor2tensor/bin/t2t-decoder',
        'tensor2tensor/bin/t2t-make-tf-configs',
        'tensor2tensor/bin/t2t-eval',
        'tensor2tensor/bin/t2t-exporter',
        'tensor2tensor/bin/t2t-query-server',
        'tensor2tensor/bin/t2t-insights-server',
        'tensor2tensor/bin/t2t-avg-all',
        'tensor2tensor/bin/t2t-bleu',
        'tensor2tensor/bin/t2t-translate-all',
    ],
    install_requires=[
        'bz2file',
        'dopamine-rl',
        'flask',
        'future',
        'gevent',
        'gin-config',
        'google-api-python-client',
        'grpcio',
        'gunicorn',
        'gym',
        'h5py',
        'kfac',
        'mesh-tensorflow',
        'numpy',
        'oauth2client',
        'opencv-python',
        'Pillow',
        'pypng',
        'requests',
        'scipy',
        'six',
        'sympy',
        'tensorflow-datasets',
        'tensorflow-probability',
        'tqdm',
    ],
    extras_require={
        'tensorflow': ['tensorflow>=1.13.1'],
        'tensorflow_gpu': ['tensorflow-gpu>=1.13.1'],
        'tensorflow-hub': ['tensorflow-hub>=0.1.1'],
        'tests': [
            'absl-py',
            'pytest>=3.8.0',
            'mock',
            'pylint',
            'jupyter',
            'gsutil',
            'matplotlib',
            # Need atari extras for Travis tests, but because gym is already in
            # install_requires, pip skips the atari extras, so we instead do an
            # explicit pip install gym[atari] for the tests.
            # 'gym[atari]',
        ],
        'trax': [
            'jax',
            'jaxlib',
        ],
        'allen': ['Pillow==5.1.0', 'pandas==0.23.0'],
    },
    classifiers=[
        'Development Status :: 4 - Beta',
        'Intended Audience :: Developers',
        'Intended Audience :: Science/Research',
        'License :: OSI Approved :: Apache Software License',
        'Topic :: Scientific/Engineering :: Artificial Intelligence',
    ],
    dependency_links=[
        'git+https://github.com/tensorflow/cleverhans.git#egg=cleverhans'
    ],
    keywords='tensorflow machine learning',
)
<commit_msg>Add tensorflow_gan repo in setup.py since it will be removed from tf.contrib.<commit_after>"""Install tensor2tensor."""

from setuptools import find_packages
from setuptools import setup

setup(
    name='tensor2tensor',
    version='1.13.4',
    description='Tensor2Tensor',
    author='Google Inc.',
    author_email='no-reply@google.com',
    url='http://github.com/tensorflow/tensor2tensor',
    license='Apache 2.0',
    packages=find_packages(),
    package_data={
        'tensor2tensor.data_generators': ['test_data/*'],
        'tensor2tensor.data_generators.wikisum': ['test_data/*'],
        'tensor2tensor.visualization': [
            'attention.js', 'TransformerVisualization.ipynb'
        ],
    },
    scripts=[
        'tensor2tensor/bin/t2t-trainer',
        'tensor2tensor/bin/t2t-datagen',
        'tensor2tensor/bin/t2t-decoder',
        'tensor2tensor/bin/t2t-make-tf-configs',
        'tensor2tensor/bin/t2t-eval',
        'tensor2tensor/bin/t2t-exporter',
        'tensor2tensor/bin/t2t-query-server',
        'tensor2tensor/bin/t2t-insights-server',
        'tensor2tensor/bin/t2t-avg-all',
        'tensor2tensor/bin/t2t-bleu',
        'tensor2tensor/bin/t2t-translate-all',
    ],
    install_requires=[
        'bz2file',
        'dopamine-rl',
        'flask',
        'future',
        'gevent',
        'gin-config',
        'google-api-python-client',
        'grpcio',
        'gunicorn',
        'gym',
        'h5py',
        'kfac',
        'mesh-tensorflow',
        'numpy',
        'oauth2client',
        'opencv-python',
        'Pillow',
        'pypng',
        'requests',
        'scipy',
        'six',
        'sympy',
        'tensorflow-datasets',
        'tensorflow-gan',
        'tensorflow-probability',
        'tqdm',
    ],
    extras_require={
        'tensorflow': ['tensorflow>=1.13.1'],
        'tensorflow_gpu': ['tensorflow-gpu>=1.13.1'],
        'tensorflow-hub': ['tensorflow-hub>=0.1.1'],
        'tests': [
            'absl-py',
            'pytest>=3.8.0',
            'mock',
            'pylint',
            'jupyter',
            'gsutil',
            'matplotlib',
            # Need atari extras for Travis tests, but because gym is already in
            # install_requires, pip skips the atari extras, so we instead do an
            # explicit pip install gym[atari] for the tests.
            # 'gym[atari]',
        ],
        'trax': [
            'jax',
            'jaxlib',
        ],
        'allen': ['Pillow==5.1.0', 'pandas==0.23.0'],
    },
    classifiers=[
        'Development Status :: 4 - Beta',
        'Intended Audience :: Developers',
        'Intended Audience :: Science/Research',
        'License :: OSI Approved :: Apache Software License',
        'Topic :: Scientific/Engineering :: Artificial Intelligence',
    ],
    dependency_links=[
        'git+https://github.com/tensorflow/cleverhans.git#egg=cleverhans'
    ],
    keywords='tensorflow machine learning',
)
<|endoftext|>


<commit_before># -*- coding: utf-8 -*-
from setuptools import setup, find_packages

__version__ = '2.1.1'
__description__ = 'Pagar.me Python'
__long_description__ = 'Python library for the pagar.me gateway'

__author__ = 'Allisson Azevedo, Marcus Bodock, Igor P. Leroy'
__author_email__ = 'allisson@gmail.com, mbodock@gmail.com, ip.leroy@gmail.com'

requires = [i.strip() for i in open("requirements.txt").readlines()]

testing_extras = [
    'pytest',
    'pytest-cov',
]

setup(
    name='pagarme-python',
    version=__version__,
    author=__author__,
    author_email=__author_email__,
    packages=find_packages(),
    license='MIT',
    description=__description__,
    long_description=__long_description__,
    url='https://github.com/pagarme/pagarme-python',
    keywords='Payment, pagarme',
    include_package_data=True,
    zip_safe=False,
    install_requires=requires,
    classifiers=[
        'Intended Audience :: Developers',
        'Intended Audience :: System Administrators',
        'Operating System :: OS Independent',
        'Topic :: Software Development',
        'Environment :: Web Environment',
        'Programming Language :: Python :: 2.6',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3.2',
        'Programming Language :: Python :: 3.3',
        'Programming Language :: Python :: 3.4',
        'License :: OSI Approved :: MIT License',
    ],
    tests_require=['pytest'],
    extras_require={
        'testing': testing_extras,
    },
)
<commit_msg>Release 2.1.2 version<commit_after># -*- coding: utf-8 -*-
from setuptools import setup, find_packages

__version__ = '2.1.2'
__description__ = 'Pagar.me Python'
__long_description__ = 'Python library for the pagar.me gateway'

__author__ = 'Allisson Azevedo, Marcus Bodock, Igor P. Leroy'
__author_email__ = 'allisson@gmail.com, mbodock@gmail.com, ip.leroy@gmail.com'

requires = [i.strip() for i in open("requirements.txt").readlines()]

testing_extras = [
    'pytest',
    'pytest-cov',
]

setup(
    name='pagarme-python',
    version=__version__,
    author=__author__,
    author_email=__author_email__,
    packages=find_packages(),
    license='MIT',
    description=__description__,
    long_description=__long_description__,
    url='https://github.com/pagarme/pagarme-python',
    keywords='Payment, pagarme',
    include_package_data=True,
    zip_safe=False,
    install_requires=requires,
    classifiers=[
        'Intended Audience :: Developers',
        'Intended Audience :: System Administrators',
        'Operating System :: OS Independent',
        'Topic :: Software Development',
        'Environment :: Web Environment',
        'Programming Language :: Python :: 2.6',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3.2',
        'Programming Language :: Python :: 3.3',
        'Programming Language :: Python :: 3.4',
        'License :: OSI Approved :: MIT License',
    ],
    tests_require=['pytest'],
    extras_require={
        'testing': testing_extras,
    },
)
<|endoftext|>


<commit_before>import importlib
from cx_Freeze import setup, Executable

backend_path = importlib.import_module("bcrypt").__path__[0]

backend_path = backend_path.replace("bcrypt", ".libs_cffi_backend")

# Dependencies are automatically detected, but it might need
# fine tuning.
build_exe_options = {
    "include_files": [
        ("client/dist", "client"),
        "LICENSE",
        "templates",
        "readme.md",
        (backend_path, "lib/.libs_cffi_backend")
    ],
    "includes": [
        "cffi",
        "numpy",
        "numpy.core._methods",
        "numpy.lib",
        "numpy.lib.format",
        "raven.processors"
    ],
    "packages": [
        "_cffi_backend",
        "appdirs",
        "asyncio",
        "bcrypt",
        "cffi",
        "idna",
        "motor",
        "packaging",
        "uvloop"
    ]
}

options = {
    "build_exe": build_exe_options
}

executables = [
    Executable('run.py', base="Console")
]

importlib.import_module("virtool")

setup(name='virtool', executables=executables, options=options)

<commit_msg>Update setup.py with required Python version<commit_after>import importlib
from cx_Freeze import setup, Executable

backend_path = importlib.import_module("bcrypt").__path__[0]

backend_path = backend_path.replace("bcrypt", ".libs_cffi_backend")

# Dependencies are automatically detected, but it might need
# fine tuning.
build_exe_options = {
    "include_files": [
        ("client/dist", "client"),
        "LICENSE",
        "templates",
        "readme.md",
        (backend_path, "lib/.libs_cffi_backend")
    ],
    "includes": [
        "cffi",
        "numpy",
        "numpy.core._methods",
        "numpy.lib",
        "numpy.lib.format",
        "raven.processors"
    ],
    "packages": [
        "_cffi_backend",
        "appdirs",
        "asyncio",
        "bcrypt",
        "cffi",
        "idna",
        "motor",
        "packaging",
        "uvloop"
    ]
}

options = {
    "build_exe": build_exe_options
}

executables = [
    Executable('run.py', base="Console")
]

importlib.import_module("virtool")

setup(name='virtool', executables=executables, options=options, python_requires=">=3.6")

<|endoftext|>


<commit_before>#!/usr/bin/env python
from setuptools import setup, find_packages
import sys
import os

if os.environ.get('CONVERT_README'):
    import pypandoc

    long_description = pypandoc.convert('README.md', 'rst')
else:
    long_description = ''

version = sys.version_info[:2]
if version < (2, 7):
    print('thefuck requires Python version 2.7 or later' +
          ' ({}.{} detected).'.format(*version))
    sys.exit(-1)
elif (3, 0) < version < (3, 3):
    print('thefuck requires Python version 3.3 or later' +
          ' ({}.{} detected).'.format(*version))
    sys.exit(-1)

VERSION = '3.1'

install_requires = ['psutil', 'colorama', 'six', 'decorator']
extras_require = {':python_version<"3.4"': ['pathlib']}

setup(name='thefuck',
      version=VERSION,
      description="Magnificent app which corrects your previous console command",
      long_description=long_description,
      author='Vladimir Iakovlev',
      author_email='nvbn.rm@gmail.com',
      url='https://github.com/nvbn/thefuck',
      license='MIT',
      packages=find_packages(exclude=['ez_setup', 'examples',
                                      'tests', 'release']),
      include_package_data=True,
      zip_safe=False,
      install_requires=install_requires,
      extras_require=extras_require,
      entry_points={'console_scripts': [
          'thefuck = thefuck.main:main',
          'thefuck-alias = thefuck.main:print_alias',
          'fuck = thefuck.main:how_to_configure_alias']})
<commit_msg>Bump to 3.2<commit_after>#!/usr/bin/env python
from setuptools import setup, find_packages
import sys
import os

if os.environ.get('CONVERT_README'):
    import pypandoc

    long_description = pypandoc.convert('README.md', 'rst')
else:
    long_description = ''

version = sys.version_info[:2]
if version < (2, 7):
    print('thefuck requires Python version 2.7 or later' +
          ' ({}.{} detected).'.format(*version))
    sys.exit(-1)
elif (3, 0) < version < (3, 3):
    print('thefuck requires Python version 3.3 or later' +
          ' ({}.{} detected).'.format(*version))
    sys.exit(-1)

VERSION = '3.2'

install_requires = ['psutil', 'colorama', 'six', 'decorator']
extras_require = {':python_version<"3.4"': ['pathlib']}

setup(name='thefuck',
      version=VERSION,
      description="Magnificent app which corrects your previous console command",
      long_description=long_description,
      author='Vladimir Iakovlev',
      author_email='nvbn.rm@gmail.com',
      url='https://github.com/nvbn/thefuck',
      license='MIT',
      packages=find_packages(exclude=['ez_setup', 'examples',
                                      'tests', 'release']),
      include_package_data=True,
      zip_safe=False,
      install_requires=install_requires,
      extras_require=extras_require,
      entry_points={'console_scripts': [
          'thefuck = thefuck.main:main',
          'thefuck-alias = thefuck.main:print_alias',
          'fuck = thefuck.main:how_to_configure_alias']})
<|endoftext|>


<commit_before>from setuptools import setup

setup(
  name = 'http_api_exporter',
  packages = ['http_api_exporter'],
  version = '1.1.0',
  description = 'A simple api exporter for py',
  author = 'Sraw',
  author_email = 'lzyl888@gmail.com',
  url = 'https://github.com/Sraw/http_api_exporter',
  download_url = 'https://github.com/Sraw/http_api_exporter/tarball/v1.1.0',
  keywords = ['http', 'web', 'api', 'export'],
  classifiers = [
      'Programming Language :: Python :: 3'
    ],
  install_requires=[
          'tornado>=4.4.3,<=4.5',
      ],
)
<commit_msg>modify setup.py<commit_after>from setuptools import setup

setup(
  name = 'http_api_exporter',
  packages = ['http_api_exporter'],
  version = '1.1.0',
  license = 'MIT',
  description = 'A simple api exporter for py',
  author = 'Sraw',
  author_email = 'lzyl888@gmail.com',
  url = 'https://github.com/Sraw/http_api_exporter',
  download_url = 'https://github.com/Sraw/http_api_exporter/tarball/v1.1.0',
  keywords = ['http', 'web', 'api', 'export'],
  classifiers = [
      'Development Status :: 5',
      'Intended Audience :: Developers',
      'License :: OSI Approved :: MIT License',
      'Programming Language :: Python',
      'Topic :: Internet :: WWW/HTTP :: HTTP Servers'
    ],
  install_requires=[
          'tornado>=4.4.3,<=4.5',
      ],
)
<|endoftext|>


<commit_before>from distutils.core import setup
from pymamba import __version__

setup(
    name='pymamba',
    version=__version__,
    packages=['pymamba'],
    url='https://github.com/oddjobz/pymamba',
    license='MIT',
    author='Gareth Bult',
    author_email='oddjobz@linux.co.uk',
    description='Database library for Python based on LMDB storage engine',
    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 :: Database :: Database Engines/Servers',
	    # 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.5',
    ],
    keywords=['pymamba','database','LMDB'],
    install_requires=['lmdb', 'ujson']
)
<commit_msg>Tweaking setup<commit_after>from distutils.core import setup
from pymamba import __version__

setup(
    name='pymamba',
    version=__version__,
    packages=['pymamba'],
    url='https://github.com/oddjobz/pymamba',
    license='MIT',
    author='Gareth Bult',
    author_email='oddjobz@linux.co.uk',
    description='Database library for Python based on LMDB storage engine',
    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 :: Database :: Database Engines/Servers',
	    # 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.5',
    ],
    keywords=['pymamba','database','LMDB'],
    install_requires=[
	'lmdb',
        'ujson'
    ]
)
<|endoftext|>


<commit_before>from __future__ import print_function
from distutils.core import setup
from distutils.extension import Extension

try:
    from Cython.Distutils import build_ext

    sources = ["pyclipper/pyclipper.pyx", "pyclipper/clipper.cpp"]
    print("using cython")

except ImportError:
    from distutils.command.build_ext import build_ext

    sources = ["pyclipper/pyclipper.cpp", "pyclipper/clipper.cpp"]
    print("not using cython")

ext = Extension("pyclipper",
                sources=sources,
                libraries=["stdc++"],
                language="c++",
                #define_macros=[('use_int32', 1)]
                )

setup(
    name='pyclipper',
    version='0.4alpha',
    description='Cython wrapper for the C++ translation of the Angus Johnson\'s Clipper library',
    long_description="""

Pyclipper is a Cython wrapper exposing public functions and classes of the C++ translation
of the `Angus Johnson\'s Clipper library (ver. 6.2.1)
<http://www.angusj.com/delphi/clipper.php>`_.

Pyclipper was tested with Python 2.7 and 3.4.

Source code is available at `GitHub <https://github.com/greginvm/pyclipper>`_.

**About Clipper**

::

  Clipper - an open source freeware library for
  clipping and offsetting lines and polygons.

  The Clipper library performs line & polygon clipping - intersection, union, difference & exclusive-or,
  and line & polygon offsetting. The library is based on Vatti's clipping algorithm.

Source: `Angus Johnson\'s Clipper library
<http://www.angusj.com/delphi/clipper.php>`_.

**Authors**

- The Clipper library is written by `Angus Johnson <http://www.angusj.com/delphi/clipper.php>`_,
- This wrapper is written mainly by `Maxime Chalton <https://sites.google.com/site/maxelsbackyard/home/pyclipper>`_,
- Adaptions to make it work with version 5 written by `Lukas Treyer <http://www.lukastreyer.com>`_,
- Adaptions to make it work with version 6.2.1 and PyPI package written by `Gregor Ratajc <http://www.gregorratajc.com>`_.

**License**

- Pyclipper is available under `MIT license <http://opensource.org/licenses/MIT>`_.
- The core Clipper library is available under `Boost Software License <http://www.boost.org/LICENSE_1_0.txt>`_. Freeware for both open source and commercial applications.

    """,
    author='Angus Johnson, Maxime Chalton, Lukas Treyer, Gregor Ratajc',
    author_email='me@gregorratajc.com',
    url='https://github.com/greginvm/pyclipper',
    keywords=[
        'polygon clipping, polygon intersection, polygon union, polygon offsetting, polygon boolean, polygon, clipping, clipper, vatti'],
    classifiers=[
        "Programming Language :: Python",
        "Programming Language :: Python :: 3",
        "Programming Language :: Cython",
        "Programming Language :: C++",
        "Environment :: Other Environment",
        "Development Status :: 3 - Alpha",
        "Intended Audience :: Developers",
        "Operating System :: OS Independent",
        "License :: OSI Approved :: MIT License",
        "Topic :: Multimedia :: Graphics",
        "Topic :: Scientific/Engineering :: Mathematics",
        "Topic :: Software Development :: Libraries :: Python Modules"
    ],
    ext_modules=[ext],
    cmdclass={'build_ext': build_ext},
)
<commit_msg>Added test command for setup script<commit_after>from __future__ import print_function
from distutils.core import setup, Command
from distutils.extension import Extension

try:
    from Cython.Distutils import build_ext

    sources = ["pyclipper/pyclipper.pyx", "pyclipper/clipper.cpp"]
    print("using cython")

except ImportError:
    from distutils.command.build_ext import build_ext

    sources = ["pyclipper/pyclipper.cpp", "pyclipper/clipper.cpp"]
    print("not using cython")

ext = Extension("pyclipper",
                sources=sources,
                libraries=["stdc++"],
                language="c++",
                # define_macros=[('use_int32', 1)]
)

class PyTest(Command):
    user_options = []

    def initialize_options(self):
        pass

    def finalize_options(self):
        pass

    def run(self):
        import subprocess
        import sys

        errno = subprocess.call([sys.executable, 'runtests.py'])
        raise SystemExit(errno)

setup(
    name='pyclipper',
    version='0.4alpha',
    description='Cython wrapper for the C++ translation of the Angus Johnson\'s Clipper library',
    long_description="""

Pyclipper is a Cython wrapper exposing public functions and classes of the C++ translation
of the `Angus Johnson\'s Clipper library (ver. 6.2.1)
<http://www.angusj.com/delphi/clipper.php>`_.

Pyclipper was tested with Python 2.7 and 3.4.

Source code is available at `GitHub <https://github.com/greginvm/pyclipper>`_.

**About Clipper**

::

  Clipper - an open source freeware library for
  clipping and offsetting lines and polygons.

  The Clipper library performs line & polygon clipping - intersection, union, difference & exclusive-or,
  and line & polygon offsetting. The library is based on Vatti's clipping algorithm.

Source: `Angus Johnson\'s Clipper library
<http://www.angusj.com/delphi/clipper.php>`_.

**Authors**

- The Clipper library is written by `Angus Johnson <http://www.angusj.com/delphi/clipper.php>`_,
- This wrapper is written mainly by `Maxime Chalton <https://sites.google.com/site/maxelsbackyard/home/pyclipper>`_,
- Adaptions to make it work with version 5 written by `Lukas Treyer <http://www.lukastreyer.com>`_,
- Adaptions to make it work with version 6.2.1 and PyPI package written by `Gregor Ratajc <http://www.gregorratajc.com>`_.

**License**

- Pyclipper is available under `MIT license <http://opensource.org/licenses/MIT>`_.
- The core Clipper library is available under `Boost Software License <http://www.boost.org/LICENSE_1_0.txt>`_. Freeware for both open source and commercial applications.

    """,
    author='Angus Johnson, Maxime Chalton, Lukas Treyer, Gregor Ratajc',
    author_email='me@gregorratajc.com',
    url='https://github.com/greginvm/pyclipper',
    keywords=[
        'polygon clipping, polygon intersection, polygon union, polygon offsetting, polygon boolean, polygon, clipping, clipper, vatti'],
    classifiers=[
        "Programming Language :: Python",
        "Programming Language :: Python :: 3",
        "Programming Language :: Cython",
        "Programming Language :: C++",
        "Environment :: Other Environment",
        "Development Status :: 3 - Alpha",
        "Intended Audience :: Developers",
        "Operating System :: OS Independent",
        "License :: OSI Approved :: MIT License",
        "Topic :: Multimedia :: Graphics",
        "Topic :: Scientific/Engineering :: Mathematics",
        "Topic :: Software Development :: Libraries :: Python Modules"
    ],
    ext_modules=[ext],
    cmdclass={
        'test': PyTest,
        'build_ext': build_ext},
)
<|endoftext|>


<commit_before>import codecs
import re
import os
from setuptools import setup, find_packages, Command

def read(*parts):
    filename = os.path.join(os.path.dirname(__file__), *parts)
    with codecs.open(filename, encoding='utf-8') 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.")

setup(
    name='django-lazy-tags',
    version=find_version('lazy_tags', '__init__.py'),
    description='A Django app for lazy loading template tags over AJAX',
    long_description=read('README.rst'),
    classifiers=[
        'Development Status :: 3 - Alpha',
        'Environment :: Web Environment',
        'Framework :: Django',
        'Intended Audience :: Developers',
        'License :: OSI Approved :: MIT License',
        'Operating System :: OS Independent',
        'Programming Language :: Python',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3.2',
        'Programming Language :: Python :: 3.3',
        'Programming Language :: Python :: 3.4',
        'Programming Language :: Python :: 3.5',
    ],
    keywords='ajax, django, templatetag',
    author='Grant McConnaughey',
    author_email='grantmcconnaughey@gmail.com',
    url='https://github.com/grantmcconnaughey/django-lazy-tags/',
    license='MIT',
    packages=find_packages(exclude=['tests']),
    include_package_data=True,
    install_requires=[],
)
<commit_msg>Add more classifiers to setup.py<commit_after>import codecs
import re
import os
from setuptools import setup, find_packages, Command

def read(*parts):
    filename = os.path.join(os.path.dirname(__file__), *parts)
    with codecs.open(filename, encoding='utf-8') 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.")

setup(
    name='django-lazy-tags',
    version=find_version('lazy_tags', '__init__.py'),
    description='A Django app for lazy loading template tags over AJAX',
    long_description=read('README.rst'),
    classifiers=[
        'Development Status :: 4 - Beta',
        'Environment :: Web Environment',
        'Framework :: Django',
        'Framework :: Django :: 1.7',
        'Framework :: Django :: 1.8',
        'Framework :: Django :: 1.9',
        'Intended Audience :: Developers',
        'License :: OSI Approved :: MIT License',
        'Operating System :: OS Independent',
        'Programming Language :: Python',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3.2',
        'Programming Language :: Python :: 3.3',
        'Programming Language :: Python :: 3.4',
        'Programming Language :: Python :: 3.5',
    ],
    keywords='ajax, django, templatetag',
    author='Grant McConnaughey',
    author_email='grantmcconnaughey@gmail.com',
    url='https://github.com/grantmcconnaughey/django-lazy-tags/',
    license='MIT',
    packages=find_packages(exclude=['tests']),
    include_package_data=True,
    install_requires=[],
)
<|endoftext|>


<commit_before>from distutils.core import setup
from distutils.extension import Extension

setup(
  name = 'termformat',
  url = 'https://github.com/dieselpoweredkitten/termformat',
  author = 'termformat contributors',
  author_email = 'github@require.pm',
  version = '0.1',
  description = 'Erlang External Term Format (de)serialization module',
  license = 'MIT',
  ext_modules = [
    Extension('termformat', ['termformat.c'])
  ],
  classifiers = (
    'Intended Audience :: Developers',
    'Programming Language :: Python :: 2.7',
    'Programming Language :: Python :: 3.3',
  ),
)
<commit_msg>v0.1.1<commit_after>from distutils.core import setup
from distutils.extension import Extension

setup(
  name = 'termformat',
  url = 'https://github.com/dieselpoweredkitten/termformat',
  author = 'termformat contributors',
  author_email = 'github@require.pm',
  version = '0.1.1',
  description = 'Erlang External Term Format (de)serialization module',
  license = 'MIT',
  ext_modules = [
    Extension('termformat', ['termformat.c'])
  ],
  classifiers = (
    'Intended Audience :: Developers',
    'Programming Language :: Python :: 2.7',
    'Programming Language :: Python :: 3.3',
  ),
)
<|endoftext|>