Spaces:
Sleeping
Sleeping
import os | |
import pathlib | |
from sys import version_info, exit | |
from setuptools import setup, find_packages | |
from Cython.Build import cythonize | |
from pkg_resources import parse_requirements | |
def write_version_py(): | |
version_txt_path = os.path.join("IndicTransToolkit", "version.txt") | |
with open(version_txt_path, "r", encoding="utf-8") as f: | |
version = f.read().strip() | |
version_py_path = os.path.join("IndicTransToolkit", "version.py") | |
with open(version_py_path, "w", encoding="utf-8") as f: | |
f.write(f'__version__ = "{version}"\n') | |
return version | |
# Enforce Python >= 3.8 | |
if version_info < (3, 8): | |
exit("Sorry, Python >= 3.8 is required for IndicTransToolkit.") | |
# Read long description from README | |
with open("README.md", "r", errors="ignore", encoding="utf-8") as fh: | |
long_description = fh.read().strip() | |
# Write version.py from version.txt | |
version = write_version_py() | |
# Parse requirements.txt | |
req_file = pathlib.Path("requirements.txt") | |
requirements = [str(req) for req in parse_requirements(req_file.open())] | |
# Cython files to compile (adjust if your .pyx name differs) | |
cython_extensions = cythonize( | |
[ | |
"IndicTransToolkit/processor.pyx", | |
], | |
compiler_directives={"language_level": "3", "boundscheck": False}, | |
) | |
setup( | |
name="IndicTransToolkit", | |
version=version, | |
author="Varun Gumma", | |
author_email="[email protected]", | |
description="A simple, consistent, and extendable module for IndicTrans2 tokenizer compatible with HuggingFace models", | |
long_description=long_description, | |
long_description_content_type="text/markdown", | |
url="https://github.com/VarunGumma/IndicTransToolkit", | |
packages=find_packages(), # Auto-detect packages | |
license="MIT", | |
classifiers=[ | |
"Programming Language :: Python :: 3", | |
"License :: OSI Approved :: MIT License", | |
"Operating System :: OS Independent", | |
], | |
python_requires=">=3.8", | |
install_requires=requirements, | |
ext_modules=cython_extensions, | |
zip_safe=False, | |
) | |