Spaces:
Running
on
A10G
Running
on
A10G
#!/usr/bin/env python | |
# -*- encoding: utf-8 -*- | |
# python3 setup.py sdist bdist_wheel | |
""" | |
@File : setup.py.py | |
@Contact : haoheliu@gmail.com | |
@License : (C)Copyright 2020-2100 | |
@Modify Time @Author @Version @Desciption | |
------------ ------- -------- ----------- | |
9/6/21 5:16 PM Haohe Liu 1.0 None | |
""" | |
# !/usr/bin/env python | |
# -*- coding: utf-8 -*- | |
# Note: To use the 'upload' functionality of this file, you must: | |
# $ pipenv install twine --dev | |
import io | |
import os | |
import sys | |
from shutil import rmtree | |
from setuptools import find_packages, setup, Command | |
# Package meta-data. | |
NAME = "audioldm2" | |
DESCRIPTION = "This package is written for text-to-audio/music generation." | |
URL = "https://github.com/haoheliu/audioldm2" | |
EMAIL = "haoheliu@gmail.com" | |
AUTHOR = "Haohe Liu" | |
REQUIRES_PYTHON = ">=3.7.0" | |
VERSION = "0.0.2" | |
# What packages are required for this module to be executed? | |
REQUIRED = [ | |
"torch>=1.13.0", | |
"torchaudio>=0.13.0", | |
"torchvision>=0.14.0", | |
"tqdm", | |
"gradio", | |
"pyyaml", | |
"einops", | |
"chardet", | |
"numpy<=1.23.5", | |
"soundfile", | |
"librosa==0.9.2", | |
"scipy", | |
"pandas", | |
"torchlibrosa==0.0.9", | |
"transformers", | |
"progressbar", | |
"ftfy", | |
] | |
# What packages are optional? | |
EXTRAS = {} | |
# The rest you shouldn't have to touch too much :) | |
# ------------------------------------------------ | |
# Except, perhaps the License and Trove Classifiers! | |
# If you do change the License, remember to change the Trove Classifier for that! | |
here = os.path.abspath(os.path.dirname(__file__)) | |
# Import the README and use it as the long-description. | |
# Note: this will only work if 'README.md' is present in your MANIFEST.in file! | |
try: | |
with io.open(os.path.join(here, "README.md"), encoding="utf-8") as f: | |
long_description = "\n" + f.read() | |
except FileNotFoundError: | |
long_description = DESCRIPTION | |
# Load the package's __version__.py module as a dictionary. | |
about = {} | |
if not VERSION: | |
project_slug = NAME.lower().replace("-", "_").replace(" ", "_") | |
with open(os.path.join(here, project_slug, "__version__.py")) as f: | |
exec(f.read(), about) | |
else: | |
about["__version__"] = VERSION | |
class UploadCommand(Command): | |
"""Support setup.py upload.""" | |
description = "Build and publish the package." | |
user_options = [] | |
def status(s): | |
"""Prints things in bold.""" | |
print("\033[1m{0}\033[0m".format(s)) | |
def initialize_options(self): | |
pass | |
def finalize_options(self): | |
pass | |
def run(self): | |
try: | |
self.status("Removing previous builds…") | |
rmtree(os.path.join(here, "dist")) | |
except OSError: | |
pass | |
self.status("Building Source and Wheel (universal) distribution…") | |
os.system("{0} setup.py sdist bdist_wheel --universal".format(sys.executable)) | |
self.status("Uploading the package to PyPI via Twine…") | |
os.system("twine upload dist/*") | |
self.status("Pushing git tags…") | |
os.system("git tag v{0}".format(about["__version__"])) | |
os.system("git push --tags") | |
sys.exit() | |
# Where the magic happens: | |
setup( | |
name=NAME, | |
version=about["__version__"], | |
description=DESCRIPTION, | |
long_description=long_description, | |
long_description_content_type="text/markdown", | |
author=AUTHOR, | |
author_email=EMAIL, | |
python_requires=REQUIRES_PYTHON, | |
url=URL, | |
# packages=find_packages(exclude=[]), | |
# If your package is a single module, use this instead of 'packages': | |
# entry_points={ | |
# 'console_scripts': ['mycli=mymodule:cli'], | |
# }, | |
install_requires=REQUIRED, | |
extras_require=EXTRAS, | |
packages=find_packages(), | |
include_package_data=True, | |
license="MIT", | |
classifiers=[ | |
# Trove classifiers | |
# Full list: https://pypi.python.org/pypi?%3Aaction=list_classifiers | |
"License :: OSI Approved :: MIT License", | |
"Programming Language :: Python", | |
"Programming Language :: Python :: 3", | |
"Programming Language :: Python :: 3.7", | |
"Programming Language :: Python :: Implementation :: CPython", | |
"Programming Language :: Python :: Implementation :: PyPy", | |
], | |
# $ setup.py publish support. | |
cmdclass={ | |
"upload": UploadCommand, | |
}, | |
scripts=["bin/audioldm2.cmd", "bin/audioldm2"], | |
) | |