Coverage for setup.py: 0%
8 statements
« prev ^ index » next coverage.py v7.10.2, created at 2025-08-05 11:07 +0000
« prev ^ index » next coverage.py v7.10.2, created at 2025-08-05 11:07 +0000
1"""Setup.py script for the FiLiP-Library"""
3import setuptools
5# read the contents of your README file
6from pathlib import Path
8readme_path = Path(__file__).parent.joinpath("README.md")
9LONG_DESCRIPTION = readme_path.read_text(encoding="utf-8")
11INSTALL_REQUIRES = [
12 "aenum~=3.1.15",
13 "datamodel_code_generator[http]~=0.25.0",
14 "paho-mqtt~=2.0.0",
15 "pandas_datapackage_reader~=0.18.0",
16 "pydantic>=2.6.0,<2.9.0",
17 "pydantic-settings>=2.0.0,<2.3.0",
18 "geojson_pydantic~=1.0.2",
19 "stringcase>=1.2.0",
20 "rdflib~=6.0.0",
21 "regex~=2023.10.3",
22 "requests~=2.32.0",
23 "rapidfuzz~=3.4.0",
24 "geojson-pydantic~=1.0.2",
25 "wget~=3.2",
26 "PyLD~=2.0.4",
27 "pyjexl~=0.3.0",
28 "packaging~=24.1",
29]
31SETUP_REQUIRES = INSTALL_REQUIRES.copy()
33VERSION = "0.7.0"
35setuptools.setup(
36 name="filip",
37 version=VERSION,
38 author="RWTH Aachen University, E.ON Energy Research Center, Institute\
39 of Energy Efficient Buildings and Indoor Climate",
40 author_email="ebc-tools@eonerc.rwth-aachen.de",
41 description="[FI]WARE [Li]brary for [P]ython",
42 long_description=LONG_DESCRIPTION,
43 long_description_content_type="text/markdown",
44 url="https://github.com/RWTH-EBC/filip",
45 download_url=f"https://github.com/RWTH-EBC/FiLiP/archive/refs/tags/v{VERSION}.tar.gz",
46 project_urls={
47 "Documentation": "https://rwth-ebc.github.io/FiLiP/master/docs/index.html",
48 "Source": "https://github.com/RWTH-EBC/filip",
49 "Download": f"https://github.com/RWTH-EBC/FiLiP/archive/refs/tags/v{VERSION}.tar.gz",
50 },
51 # Specify the Python versions you support here. In particular, ensure
52 # that you indicate whether you support Python 2, Python 3 or both.
53 classifiers=[
54 "Development Status :: 3 - Alpha",
55 "Topic :: Scientific/Engineering",
56 "Intended Audience :: Science/Research",
57 "Programming Language :: Python :: 3.8",
58 "Programming Language :: Python :: 3.9",
59 "Programming Language :: Python :: 3.10",
60 "Programming Language :: Python :: 3.11",
61 "Programming Language :: Python :: 3.12",
62 "License :: OSI Approved :: BSD License",
63 ],
64 keywords=["iot", "fiware", "semantic"],
65 packages=setuptools.find_packages(
66 exclude=["tests", "tests.*", "img", "tutorials.*", "tutorials"]
67 ),
68 package_data={"filip": ["data/unece-units/*.csv"]},
69 setup_requires=SETUP_REQUIRES,
70 # optional modules
71 extras_require={
72 "development": ["pre-commit~=4.0.1"],
73 "semantics": ["igraph~=0.11.2"],
74 "tutorials": ["plotly==5.24.1", "matplotlib~=3.4.3"],
75 ":python_version < '3.9'": ["pandas~=1.3.5"],
76 ":python_version >= '3.9'": ["pandas>=2.1.4,<2.4.0"],
77 },
78 install_requires=INSTALL_REQUIRES,
79 python_requires=">=3.8",
80)