78 lines
2.1 KiB
Python
78 lines
2.1 KiB
Python
import os
|
|
import re
|
|
import sys
|
|
|
|
from setuptools import setup
|
|
|
|
# To register onto Pypi :
|
|
# python setup.py sdist bdist_wheel upload
|
|
|
|
|
|
def read(*names):
|
|
values = dict()
|
|
for name in names:
|
|
filename = name + ".rst"
|
|
if os.path.isfile(filename):
|
|
fd = open(filename)
|
|
value = fd.read()
|
|
fd.close()
|
|
else:
|
|
value = ""
|
|
values[name] = value
|
|
return values
|
|
|
|
|
|
long_description = """
|
|
%(README)s
|
|
|
|
News
|
|
====
|
|
%(CHANGES)s
|
|
""" % read(
|
|
"README", "CHANGES"
|
|
)
|
|
|
|
|
|
def get_version(pkg):
|
|
path = os.path.join(os.path.dirname(__file__), pkg, "__init__.py")
|
|
if sys.version_info >= (3, 0):
|
|
fh = open(path, encoding="utf-8") # required to read utf-8 file on windows
|
|
else:
|
|
fh = open(path) # encoding parameter does not exist in python 2
|
|
with fh:
|
|
m = re.search(r'^__version__\s*=\s*[\'"]([^\'"]+)[\'"]', fh.read(), re.M)
|
|
if m:
|
|
return m.group(1)
|
|
raise RuntimeError("Unable to find __version__ string in %s." % path)
|
|
|
|
|
|
setup(
|
|
name="docxtpl",
|
|
version=get_version("docxtpl"),
|
|
description="Python docx template engine",
|
|
long_description=long_description,
|
|
long_description_content_type="text/x-rst",
|
|
classifiers=[
|
|
"Intended Audience :: Developers",
|
|
"Development Status :: 4 - Beta",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python :: 3.7",
|
|
"Programming Language :: Python :: 3.8",
|
|
"Programming Language :: Python :: 3.9",
|
|
"Programming Language :: Python :: 3.10",
|
|
"Programming Language :: Python :: 3.11",
|
|
"Programming Language :: Python :: 3.12",
|
|
"Programming Language :: Python :: 3.13",
|
|
],
|
|
keywords="jinja2",
|
|
url="https://github.com/elapouya/python-docx-template",
|
|
author="Eric Lapouyade",
|
|
license="LGPL-2.1-only",
|
|
license_files=[],
|
|
packages=["docxtpl"],
|
|
install_requires=["python-docx>=1.1.1", "jinja2", "lxml"],
|
|
extras_require={"docs": ["Sphinx", "sphinxcontrib-napoleon"], "subdoc": ["docxcompose"]},
|
|
eager_resources=["docs"],
|
|
zip_safe=False,
|
|
)
|