File: setup.py

package info (click to toggle)
mozjs78 78.15.0-7
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 739,892 kB
  • sloc: javascript: 1,344,214; cpp: 1,215,708; python: 526,544; ansic: 433,835; xml: 118,736; sh: 26,176; asm: 16,664; makefile: 11,537; yacc: 4,486; perl: 2,564; ada: 1,681; lex: 1,414; pascal: 1,139; cs: 879; exp: 499; java: 164; ruby: 68; sql: 45; csh: 35; sed: 18; lisp: 2
file content (60 lines) | stat: -rw-r--r-- 1,647 bytes parent folder | download | duplicates (36)
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',
)