[setup] Added build documentation target
This commit is contained in:
parent
da94acf18c
commit
114e12f151
|
@ -67,6 +67,7 @@ instance/
|
|||
|
||||
# Sphinx documentation
|
||||
docs/_build/
|
||||
docs/
|
||||
|
||||
# PyBuilder
|
||||
target/
|
||||
|
|
|
@ -17,7 +17,7 @@ class PrefixMiddleware(object):
|
|||
def __call__(self, environ, start_response):
|
||||
|
||||
if environ["PATH_INFO"].startswith(self.prefix):
|
||||
environ["PATH_INFO"] = environ["PATH_INFO"][len(self.prefix) :]
|
||||
environ["PATH_INFO"] = environ["PATH_INFO"][len(self.prefix):]
|
||||
environ["SCRIPT_NAME"] = self.prefix
|
||||
return self.app(environ, start_response)
|
||||
else:
|
||||
|
@ -83,19 +83,19 @@ class InterfaceGenerator:
|
|||
import typing
|
||||
|
||||
if (
|
||||
inspect.ismodule(module[1])
|
||||
and module[1].__name__.startswith(self.basename)
|
||||
and module[1].__name__ not in self.known
|
||||
inspect.ismodule(module[1])
|
||||
and module[1].__name__.startswith(self.basename)
|
||||
and module[1].__name__ not in self.known
|
||||
):
|
||||
self.known.append(module[1].__name__)
|
||||
for cls in inspect.getmembers(module[1], lambda x: inspect.isclass(x) or inspect.ismodule(x)):
|
||||
self.walker(cls)
|
||||
elif (
|
||||
inspect.isclass(module[1])
|
||||
and module[1].__module__.startswith(self.basename)
|
||||
and module[0] not in self.classes
|
||||
and not module[0].startswith("_")
|
||||
and hasattr(module[1], "__annotations__")
|
||||
inspect.isclass(module[1])
|
||||
and module[1].__module__.startswith(self.basename)
|
||||
and module[0] not in self.classes
|
||||
and not module[0].startswith("_")
|
||||
and hasattr(module[1], "__annotations__")
|
||||
):
|
||||
self.this_type = module[0]
|
||||
print("\n\n" + module[0] + "\n")
|
||||
|
|
33
setup.py
33
setup.py
|
@ -1,11 +1,35 @@
|
|||
from setuptools import setup, find_packages
|
||||
from setuptools import setup, find_packages, Command
|
||||
import subprocess
|
||||
import os
|
||||
|
||||
mysql_driver = "PyMySQL" if os.name == "nt" else "mysqlclient"
|
||||
|
||||
|
||||
class DocsCommand(Command):
|
||||
description = "Generate and export API documentation"
|
||||
user_options = [
|
||||
# The format is (long option, short option, description).
|
||||
("output=", "o", "Documentation output path"),
|
||||
]
|
||||
|
||||
def initialize_options(self):
|
||||
self.output = "./docs"
|
||||
|
||||
def finalize_options(self):
|
||||
pass
|
||||
|
||||
def run(self):
|
||||
"""Run command."""
|
||||
command = ["python", "-m", "pdoc", "--skip-errors", "--html", "--output-dir", self.output, "flaschengeist"]
|
||||
self.announce(
|
||||
"Running command: %s" % str(command),
|
||||
)
|
||||
subprocess.check_call(command)
|
||||
|
||||
|
||||
setup(
|
||||
name="flaschengeist",
|
||||
version="2.0.0-dev",
|
||||
version="2.0.0.dev0",
|
||||
url="https://wu5.de/redmine/projects/geruecht",
|
||||
author="WU5 + Friends",
|
||||
author_email="tim@groeger-clan.de",
|
||||
|
@ -23,7 +47,7 @@ setup(
|
|||
"werkzeug",
|
||||
mysql_driver,
|
||||
],
|
||||
extras_require={"ldap": ["flask_ldapconn", "ldap3"], "pricelist": ["pillow"],"test": ["pytest", "coverage"]},
|
||||
extras_require={"ldap": ["flask_ldapconn", "ldap3"], "pricelist": ["pillow"], "test": ["pytest", "coverage"]},
|
||||
entry_points={
|
||||
"flaschengeist.plugin": [
|
||||
# Authentication providers
|
||||
|
@ -39,4 +63,7 @@ setup(
|
|||
"pricelist = flaschengeist.plugins.pricelist:PriceListPlugin [pricelist]",
|
||||
],
|
||||
},
|
||||
cmdclass={
|
||||
"docs": DocsCommand,
|
||||
},
|
||||
)
|
||||
|
|
Loading…
Reference in New Issue