From 0d72b3d81807c79f18589aa0eebe68916dda71cb Mon Sep 17 00:00:00 2001 From: shahules786 Date: Thu, 6 Oct 2022 17:24:39 +0530 Subject: [PATCH] setup files --- enhancer/version.py | 1 + setup.cfg | 100 ++++++++++++++++++++++++++++++++++++++++++++ setup.py | 63 ++++++++++++++++++++++++++++ 3 files changed, 164 insertions(+) create mode 100644 enhancer/version.py create mode 100644 setup.cfg create mode 100644 setup.py diff --git a/enhancer/version.py b/enhancer/version.py new file mode 100644 index 0000000..f102a9c --- /dev/null +++ b/enhancer/version.py @@ -0,0 +1 @@ +__version__ = "0.0.1" diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 0000000..8916eaa --- /dev/null +++ b/setup.cfg @@ -0,0 +1,100 @@ +# This file is used to configure your project. +# Read more about the various options under: +# http://setuptools.readthedocs.io/en/latest/setuptools.html#configuring-setup-using-setup-cfg-files + +[metadata] +name = enhancer +description = Deep learning for speech enhacement +author = Shahul Ess +author-email = shahules786@gmail.com +license = mit +long-description = file: README.md +long-description-content-type = text/markdown; charset=UTF-8; variant=GFM +# Change if running only on Windows, Mac or Linux (comma-separated) +platforms = Linux, Mac +# Add here all kinds of additional classifiers as defined under +# https://pypi.python.org/pypi?%3Aaction=list_classifiers +classifiers = + Development Status :: 4 - Beta + Programming Language :: Python + +[options] +zip_safe = False +packages = find: +include_package_data = True +# DON'T CHANGE THE FOLLOWING LINE! IT WILL BE UPDATED BY PYSCAFFOLD! +setup_requires = setuptools +# Add here dependencies of your project (semicolon/line-separated), e.g. +# install_requires = numpy; scipy +# Require a specific Python version, e.g. Python 2.7 or >= 3.4 +python_requires = >=3.8 + +[options.packages.find] +where = . +exclude = + tests + +[options.extras_require] +# Add here additional requirements for extra features, to install with: +# `pip install fastaudio[PDF]` like: +# PDF = ReportLab; RXP +# Add here test requirements (semicolon/line-separated) +testing = + pytest>=7.1.3 + pytest-cov>=4.0.0 +dev = + pre-commit>=2.20.0 + black>=22.8.0 + flake8>=5.0.4 +cli = + hydra-core >=1.1,<=1.2 + + +[options.entry_points] + +console_scripts = + enhancer-train=enhancer.cli.train:train + +[test] +# py.test options when running `python setup.py test` +# addopts = --verbose +extras = True + +[tool:pytest] +# Options for py.test: +# Specify command line options as you would do when invoking py.test directly. +# e.g. --cov-report html (or xml) for html/xml output or --junitxml junit.xml +# in order to write a coverage file that can be read by Jenkins. +addopts = + --cov pyannote --cov-report term-missing + --verbose +norecursedirs = + dist + build + .tox +testpaths = tests + +[aliases] +dists = bdist_wheel + +[bdist_wheel] +# Use this option if your package is pure-python +universal = 1 + +[build_sphinx] +source_dir = doc +build_dir = build/sphinx + +[devpi:upload] +# Options for the devpi: PyPI server and packaging tool +# VCS export must be deactivated since we are using setuptools-scm +no-vcs = 1 +formats = bdist_wheel + +[flake8] +# Some sane defaults for the code style checker flake8 +exclude = + .tox + build + dist + .eggs diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..79282b3 --- /dev/null +++ b/setup.py @@ -0,0 +1,63 @@ +import os +import sys +from pathlib import Path + +from pkg_resources import VersionConflict, require +from setuptools import find_packages, setup + +with open("README.md") as f: + long_description = f.read() + +with open("requirements.txt") as f: + requirements = f.read().splitlines() + +try: + require("setuptools>=38.3") +except VersionConflict: + print("Error: version of setuptools is too old (<38.3)!") + sys.exit(1) + + +ROOT_DIR = Path(__file__).parent.resolve() +# Creating the version file + +with open("version.txt") as f: + version = f.read() + +version = version.strip() +sha = "Unknown" + +if os.getenv("BUILD_VERSION"): + version = os.getenv("BUILD_VERSION") +elif sha != "Unknown": + version += "+" + sha[:7] +print("-- Building version " + version) + +version_path = ROOT_DIR / "enhancer" / "version.py" + +with open(version_path, "w") as f: + f.write("__version__ = '{}'\n".format(version)) + +if __name__ == "__main__": + setup( + name="enhancer", + namespace_packages=["enhancer"], + version=version, + packages=find_packages(), + install_requires=requirements, + description="Deep learning toolkit for speech enhancement", + long_description=long_description, + long_description_content_type="text/markdown", + author="Shahul Es", + author_email="shahules786@gmail.com", + url="", + classifiers=[ + "Development Status :: 4 - Beta", + "Intended Audience :: Science/Research", + "License :: OSI Approved :: MIT License", + "Natural Language :: English", + "Programming Language :: Python :: 3.7", + "Programming Language :: Python :: 3.8", + "Topic :: Scientific/Engineering", + ], + )