File: setup.py

package info (click to toggle)
firefox 144.0-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 4,637,504 kB
  • sloc: cpp: 7,576,692; javascript: 6,430,831; ansic: 3,748,119; python: 1,398,978; xml: 628,810; asm: 438,679; java: 186,194; sh: 63,212; makefile: 19,159; objc: 13,086; perl: 12,986; yacc: 4,583; cs: 3,846; pascal: 3,448; lex: 1,720; ruby: 1,003; exp: 762; php: 436; lisp: 258; awk: 247; sql: 66; sed: 53; csh: 10
file content (60 lines) | stat: -rw-r--r-- 1,647 bytes parent folder | download | duplicates (39)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# -*- coding: utf-8 -*-

import os
import re
import sys
from setuptools import setup
from setuptools.command.test import test as TestCommand

HERE = os.path.dirname(os.path.realpath(__file__))


class PyTest(TestCommand):
    """
    Run py.test with the "python setup.py test command"
    """
    user_options = [('pytest-args=', 'a', "Arguments to pass to py.test")]

    def initialize_options(self):
        TestCommand.initialize_options(self)
        self.pytest_args = ''

    def finalize_options(self):
        TestCommand.finalize_options(self)
        self.pytest_args += (' ' + self.distribution.test_suite)

    def run_tests(self):
        import pytest
        errno = pytest.main(self.pytest_args)
        sys.exit(errno)


def read(*parts):
    with open(os.path.join(HERE, *parts)) as f:
        return f.read()


def parse_requirements(data, exclude=()):
    return [line for line in data.splitlines()
            if line and not line.startswith("#") and line not in exclude]


def version():
    return re.findall(r"__version__ = \"([\d.]+)\"",
                      read("dlmanager", "__init__.py"))[0]

setup(
    name="dlmanager",
    version=version(),
    description="download manager library",
    long_description=read("README.rst"),
    author="Julien Pagès",
    author_email="j.parkouss@gmail.com",
    url="http://github.com/parkouss/dlmanager",
    license="GPL/LGPL",
    install_requires=parse_requirements(read("requirements.txt")),
    cmdclass={'test': PyTest},
    tests_require=parse_requirements(read("requirements.txt"),
                                     exclude=("-e .",)),
    test_suite='tests',
)