setup.py 2.13 KB
Newer Older
Christophe Benz's avatar
Christophe Benz committed
1
2
#!/usr/bin/env python3

Christophe Benz's avatar
Christophe Benz committed
3
4
5

from pathlib import Path

6
from setuptools import find_packages, setup
Christophe Benz's avatar
Christophe Benz committed
7

Christophe Benz's avatar
Christophe Benz committed
8
# Gets the long description from the README.md file
Pierre Dittgen's avatar
Pierre Dittgen committed
9
10
readme_filepath = Path(__file__).parent / "README.md"
with readme_filepath.open("rt", encoding="utf-8") as fd_in:
Christophe Benz's avatar
Christophe Benz committed
11
12
    LONG_DESCRIPTION = fd_in.read()

Christophe Benz's avatar
Christophe Benz committed
13
setup(
Pierre Dittgen's avatar
Pierre Dittgen committed
14
    name="validata_core",
Pierre Dittgen's avatar
Release    
Pierre Dittgen committed
15
    version="0.7.6",
Christophe Benz's avatar
Christophe Benz committed
16
    description="Validata Core library",
Christophe Benz's avatar
Christophe Benz committed
17
18
19
    long_description=LONG_DESCRIPTION,
    long_description_content_type="text/markdown",
    url="https://git.opendatafrance.net/validata/validata-core/",
Pierre Dittgen's avatar
Pierre Dittgen committed
20
21
22
    author="Validata team",
    author_email="admin-validata@jailbreak.paris",
    license="AGPLv3",
Christophe Benz's avatar
Christophe Benz committed
23
24
25
26
27
28
    # See https://pypi.python.org/pypi?%3Aaction=list_classifiers
    classifiers=[
        # How mature is this project? Common values are
        #   3 - Alpha
        #   4 - Beta
        #   5 - Production/Stable
Pierre Dittgen's avatar
Pierre Dittgen committed
29
        "Development Status :: 5 - Production/Stable",
Christophe Benz's avatar
Christophe Benz committed
30
        # Indicate who your project is intended for
Pierre Dittgen's avatar
Pierre Dittgen committed
31
32
33
        "Intended Audience :: Developers",
        "Topic :: Software Development :: Libraries :: Python Modules",
        "Operating System :: OS Independent",
Christophe Benz's avatar
Christophe Benz committed
34
        # Pick your license as you wish (should match "license" above)
Pierre Dittgen's avatar
Pierre Dittgen committed
35
        "License :: OSI Approved :: GNU Affero General Public License v3",
Christophe Benz's avatar
Christophe Benz committed
36
37
        # Specify the Python versions you support here. In particular, ensure
        # that you indicate whether you support Python 2, Python 3 or both.
Pierre Dittgen's avatar
Pierre Dittgen committed
38
        "Programming Language :: Python :: 3",
Christophe Benz's avatar
Christophe Benz committed
39
    ],
40
    packages=find_packages(),
Christophe Benz's avatar
Christophe Benz committed
41
    include_package_data=True,
42
    package_data={
Pierre Dittgen's avatar
Pierre Dittgen committed
43
        "validata_core": ["validata_spec.json"],
44
    },
Christophe Benz's avatar
Christophe Benz committed
45
    zip_safe=True,
Pierre Dittgen's avatar
Pierre Dittgen committed
46
47
    install_requires=[
        "ezodf",
48
        "frictionless[excel] == 4.18.2",
Pierre Dittgen's avatar
Pierre Dittgen committed
49
50
51
52
53
54
55
        "importlib_resources",
        "openpyxl",
        "lxml",
        "requests",
        "tablib[pandas]",
        "toolz",
        # for custom_checks
56
        "opening-hours-py",
Pierre Dittgen's avatar
Pierre Dittgen committed
57
        "phonenumbers",
Pierre Dittgen's avatar
Pierre Dittgen committed
58
59
        "python-stdnum",
    ],
Christophe Benz's avatar
Christophe Benz committed
60
    setup_requires=[
Pierre Dittgen's avatar
Pierre Dittgen committed
61
        "pytest-runner",
Christophe Benz's avatar
Christophe Benz committed
62
63
    ],
    tests_require=[
Pierre Dittgen's avatar
Pierre Dittgen committed
64
        "pytest",
Christophe Benz's avatar
Christophe Benz committed
65
    ],
66
    entry_points={
Pierre Dittgen's avatar
Pierre Dittgen committed
67
68
        "console_scripts": [
            "validata = validata_core.cli:cli",
69
70
        ],
    },
Christophe Benz's avatar
Christophe Benz committed
71
)