-
Notifications
You must be signed in to change notification settings - Fork 71
/
setup.py
58 lines (50 loc) · 1.85 KB
/
setup.py
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
"""Flask-MQTT Setup."""
import io
import re
import os
import sys
from setuptools import setup
def read(*names, **kwargs):
"""Open a file and read its content."""
with io.open(
os.path.join(os.path.dirname(__file__), *names),
encoding=kwargs.get("encoding", "utf8"),
) as fp:
return fp.read()
def find_version(*file_paths):
"""Find current package version number."""
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.")
long_description = read("README.md")
if sys.argv[-1] == "test":
os.system("coverage run -m unittest discover -s tests")
os.system("coverage html --include flask_mqtt/*")
os.system("coverage report -m --include flask_mqtt/*")
else:
setup(
name="Flask-MQTT",
version=find_version("flask_mqtt", "__init__.py"),
url="https://github.com/MrLeeh/Flask-MQTT",
license="MIT",
author="Stefan Lehmann",
author_email="stefan.st.lehmann@gmail.com",
description="Flask extension for the MQTT protocol",
long_description=long_description,
long_description_content_type="text/markdown",
packages=["flask_mqtt"],
platforms="any",
python_requires=">=3.6",
install_requires=["Flask", "paho-mqtt<2.0"],
classifiers=[
"Development Status :: 5 - Production/Stable",
"Environment :: Web Environment",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python",
"Topic :: Internet :: WWW/HTTP :: Dynamic Content",
"Topic :: Software Development :: Libraries :: Python Modules",
],
)